NabExec v0.7.6
Transcription
NabExec v0.7.6
NabExec v0.7.6 Guide d'utilisation version du 29 janvier 2009 (certains visuels peuvent différer légèrement avec la version actuelle du logiciel) Qu'est-ce que NabExec ? NabExec est un serveur permettant à votre lapin d'intéragir avec votre ordinateur (un peu comme le fait mir:ror, de chez violet) Vous lui faite renifler un ztamp, et hop, votre écran de veille s'allume, ou encore votre playlist démarre. Une confirmation générique de l'exécution de votre commande peut être envoyée au lapin, mais il est également possible d'envoyer le résultat même de la commande que vous venez de déclencher à distance. Comment ça marche ? NabExec se compose de deux programme. Le client et le serveur. Le client va permettre de configurer le serveur. C'est avec le client que vous allez définir les actions possibles en leur donnant un nom, et en les associant à une commande, un script, une fonction built-in (NabExec est livré avec quelques fonctions pré-codés). Une fois vos mapping effectués, le serveur doit être démarré. Il vous suffit désormais de lier un zstamp à l'application Call URL de violet, et de renseigner l'adresse de votre serveur NabExec et le mapping que vous souhaitez activer. Pré-requis Il est nécessaire d'avoir une version de Java 1.6 ou supérieure d'installer sur l'ordinateur. La version la plus récente de Java est disponible sur http://www.java.com/fr Installation NabExec est livré dans un fichier zip qu'il suffit de dézipper. /!\ Le client et le serveur sont en fait le même fichier (NabExec.jar) Pour lancer le client, il faut faire : sous UNIX/LINUX: java -jar NabExec.jar sous WINDOWS: double-cliquer sur le fichier NabExec.jar ou ouvrez le via un raccourci avec javaw.exe Pour lancer le serveur, il faut faire : sous UNIX/LINUX: java -jar NabExec.jar -s sous WINDOWS: créer un raccourci vers le fichier NabExec.jar et rajouter dans ses propriétés le -s nécessaire à l'activation du mode serveur. Première configuration Lors de la première utilisation, il faut impérativement lancer le client, autrement le serveur ne fonctionnera pas. Dans le menu Configuration, Configuration générale, vous trouverez les paramètres de connexion à votre lapin (son adresse MAC et son token), à renseigner impérativement si vous souhaitez envoyer des confirmations d'exécution à votre lapin (autrement, vous pouvez laisser les champs vide) : /!\ Il est vivement conseillé de laisser le port d'écoute du serveur sur 80 (port HTTP), car il semble qu'actuellement le widget « Call URL » de violet que nous utiliserons par la suite n'accepte pas (encore ?) les serveurs situés sur d'autres ports. En cliquant sur le bouton enregistrer, les réglages sont positionnés, vous pouvez maintenant créer vos premiers NabMaps ! Créer un NabMap Un NabMap, c'est quoi ? C'est un mapping (une association) entre un mot-clé et une commande à exécuter. Chez votre lapin par exemple, il est fort probable que la commande vocale « météo » soit mappée à l'action « lancer la météo » Ici nous ne mappons pas des commandes vocales, mais justes des mots, qui seront appelés via des puces RFID (les fameux ztamps) Cliquez sur le bouton Nouveau de l'interface principale du client. Une fenêtre de création de NabMap doit apparaître : – Le champ action correspond au mot-clé qu'il faudra appeler pour activer le NabMap via le lapin (ici chanson) – Le champ Programme correspond à la commande système, le programme, ou le script qu'il faudra appeler lors de l'activation de votre mapping. Il est également possible d'appeler une fonction pré-codée (built-in) livrée avec NabExec (on en reparle plus bas) en commençant sa commande par un $ (dollard). Ici j'appele xmms, qui est un lecteur de musique sous linux. /!\ Si votre programme n'est pas dans la variable d'environnement PATH, il faudra indiquer son chemin complet (par exemple « C:\Program Files\iTunes.exe » et pas juste «iTunes ») – Le champ argument permet de passer des valeurs lors de l'appel au programme défini précédemment. Ici nous indiquons simplement le nom du fichier mp3 que xmms devra lire. Se référer à la documentation du programme que vous souhaitez lancer pour plus de précisions concernant les arguments de la ligne de commande. Note: Il est possible de tester le résultat de la commande en pressant le bouton tester. – Enfin il est possible d'envoyer ou non une confirmation d'exécution au lapin. Si l'option « Sortie du programme » est sélectionnée, alors le lapin lira le résultat de la commande. Ici nous avons choisi de retourner un message personnalisé (« Chanson démarrée avec succès »), car la commande XMMS est un logiciel graphique, et ne retournera aucun texte pertinent à dire ! – Une fois le NabMap configuré, on clique sur ajouter /!\ Attention, à ce stade le NabMap n'est toujours pas enregistré. Il faut désormais faire Fichier>Sauver les NabMaps pour prendre en compte les changements (ou bien ctrl+S, qui va plus vite !) Astuce : A tout moment vous pouvez créer un nouveau NabMap en vous basant sur un NabMap existant. Pour se faire, double-cliquez simplement sur un NabMap existant, et la fenêtre de création s'ouvrira avec les champs préremplis Astuce : il est possible d'indiquer dans les champs « arguments optionnels » et « message personnalisé » le mot clé « [arg] » qui sera substitué avec l'argument optionnel de votre url de mapping (voir plus bas) Les fonctions built-in NabExec est depuis sa version 0.7 livré avec un set de fonctions built-in (précodées). Bien qu'il n'y ait pour l'instant que deux fonctions (!), l'avenir nous en réserve sûrement d'autres ;-) Pour appeler une fonction built-in, le premier caractère de votre champ Commande à exécuter doit être un « $ » (ce qui active le mode « fonction ») Selon les fonctions, l'usage du champ « Arguments optionnels » sera obligatoire ou non. Fonction Description Champ commande Champ arguments phpbb1 Va chercher $phpbb1,nb1, URL de la les titres des nb2 section du topics présent forum dans un forum de type phpbb Commentaire - Nb1 correspond au nombre de topics à remonter - Nb2 correspond au nombre de topics à ignorer (quand les premiers topics d'un forum sont des post-it par exemple) phpbb2 Va chercher $phpbb2,nb1, URL de la les titres des nb2 section du topics présent forum dans un forum de type phpbb - Nb1 correspond au nombre de topics à remonter - Nb2 correspond au nombre de topics à ignorer (quand les premiers topics d'un forum sont des post-it par exemple) info_transilien Indique si des Vide lignes du réseau transilien sont perturbées Vide allocine Retourne le titre des films actuellement à l'affiche dans votre salle préférée Code salle (1 lettre + 4 chiffres) Information très sommaire :) Il est possible de tester le résultat de la commande en pressant le bouton tester, comme pour une commande classique. Le résultat s'affiche alors dans une boite à message. Par exemple, voici à quoi pourrait ressembler une action allant lire les nouveaux sujets du topic API de notre chouette forum nabaztag.forumactif.fr : J'ai pris soin d'indiquer que je souhaitais uniquement les 10 premiers sujets, et que j'excluais le 2 premiers du calcul (qui sont deux post-it). Bien sûr j'ai demandé à retourner le résultat de la commande au lapin ! Ces fonctions expérimentales ne doivent pas être comparées avec un flux RSS. Note : L'existence de deux fonctions phpbb tient au fait que certains forums utilisent des versions différentes de phpbb (je n'ai pas trop cherché non plus les détails, et je me suis limité aux sites que j'utilise le plus souvent !), donc vous tester l'une des versions, si elle ne retourne rien, vous testez l'autre, et si elle ne retourne rien également, alors vous venez vous plaindre dans le forum pour que je développe un nouveau moteur :+) Hey, mais comment on lance le serveur ? Facile, comme j'ai dis en introduction dans la partie Installation, il suffit de lancer le programme avec l'option -s Dès lors, le serveur est démarré. Vous pouvez tester vos mappings en ouvrant un navigateur web, et en saisissant l'adresse suivante : http://votreip/votremapping/votreargumentfacultatif Note : depuis la version 0.7.5 une icône est désormais visible dans votre barre des tâches (à coté de l'horloge) lorsque le serveur tourne. Avec un clic-droit sur cette icône vous pouvez lancer le client NabExec ou bien arrêter le serveur. Cette fonctionnalité peut ne pas fonctionner avec certains systèmes (testé uniquement sous GNU/Linux (Gnome) et MS Windows /!\ Notez que le slash final après votremapping/ est *obligatoire* Tout ce qui sera situé derrière servira à garnir la variable spéciale « [arg] » à laquelle vous pourrez librement faire référence dans votre NabMap (champs « arguments optionnels » et « Message personnalisé ») Et comment on associe un ztamp à un NabMap ? Simplement en ajoutant l'application Call URL à votre ztamp (rubrique /dev), et en indiquant la même URL que vous avez saisi précédemment pour tester votre mapping: http://votreip/votremapping/votreargumentfacultatif Attention : l'adresse ip que vous saisissez doit être votre IP publique et pas celle de votre réseau local (192.168.*.* par exemple) Vous la trouverez en vous rendant sur http://www.whatismyip.com Vous devrez également activer la redirection (forwarding) du port 80 vers votre machine locale au niveau de votre routeur si vous en disposez (ou de votre freebox). Il est généralement nécéssaire de rebooter le routeur/freebox pour prendre en compte la redirection de port.