Beth (Tasker) : exécuter mes scénarios

Seconde partie de la création de mon assistante domotique sous Tasker, aka Beth, nous allons lui faire exécuter nos scénarios domotiques. Une partie facile.

Nous avons vu la dernière fois comment créer un chatbot. Mais  je soujaite quand même que Beth soit capable d’un peu plus que ça. Voyons comment faire pour lui faire exécuter nos scénarios programmés sur box domotique. L’exemple donné ici est sur Jeedom, mais on trouve une équivalence sur la plupart des box, sinon toutes.

Beth, ferme les volets !

Beth, ferme les volets !

Beth, ferme les volets !

La clé ici est de faire envoyer une requête http à notre box. Beth, sous Tasker, dispose de cette possibilité, c’est assez facile à faire. Le plus compliqué, si l’on peut dire, sera de connaître la requête à envoyer. Et pour cela, rien de mieux que… la doc ! Il vous suffit d’aller dans la partie API de la doc de votre box pour trouver votre bonheur. Pour ma part, sur Jeedom, je vais pouvoir envoyer deux types de requêtes :

Exécuter une commande : http://#IP_JEEDOM#/jeedom/core/api/jeeApi.php?apikey=#APIKEY#&type=cmd&id=#ID#

ou

Exécuter un scénario : http://#IP_JEEDOM#/jeedom/core/api/jeeApi.php?apikey=#APIKEY#&type=scenario&id=#ID#&action=#ACTION#

L’apikey se trouve dans le panneau de configuration. L’ID de commande se trouve dans le panneau Affichage. Enfin, les actions de scénario seront : start, stop, deactivate ou activate. Est-il bien utile de traduire ?

Nous allons maintenant indiquer cela à Beth. Afin de ne pas avoir à retaper toute l’adresse à chaque fois, nous allons l’attribuer à une variable.

Je vais donc créer dans Tasker une variable %Cmd et lui attribuer cette valeur : http://#IP_JEEDOM#/jeedom/core/api/jeeApi.php?apikey=#APIKEY#&type=cmd&id=

Je fais la même chose avec le scénario, mais avec une petite variante, nous aurons donc %Scenario : http://#IP_JEEDOM#/jeedom/core/api/jeeApi.php?apikey=#APIKEY#&type=scenario&id=

Il me manque la fin de l’adresse du scénario. Pour cela, je crée une autre variable %Action : &action=

Je vais maintenant pouvoir créer ma tâche dans Tasker. Je clique sur le +, Réseau, HTTP GET. Puis, dans serveur, je vais, pour une commande, indiquer %Cmd=#ID# (vous aurez bien sûr récupéré l’ID de commande dans le panneau d’affichage). Voilà, ma commande est prête, je peux déjà la tester.

Pour le scénario, ce sera quasiment pareil : le serveur sera %Scenario=#ID#%Action=#ACTION# (start, stop, activate ou deactivate).

Enfin, vous pouvez ajouter une confirmation vocale de l’exécution de l’ordre. Ajoutez une action Alerte, Dire, et saisissez le texte de votre choix. N’oubliez pas d’indiquer quel moteur TTS doit être utilisé !

La commande vocale

Il ne nous reste qu’à appeler Beth par commande vocale. Créez un nouveau profil Evénement, plugin, Autovoice, Autovoice recognized. Dans le paramètre command filter, indiquez le texte que vous voulez que Beth reconnaisse. Puis attribuez la tâche que vous venez de créer. Voilà, Beth est prête à exécuter vos commandes et scénarios !