
Dans cet article, je vais vous montrez comment contrôler Jeedom à la voix avec OK Google grâce à 2 applications Tasker disponible ici pour 2.99 euros, et qui est un véritable couteau suisse sur Android, et le plugin autoVoice disponible ici pou 1.34 euros qui va nous servir pour récupérer les requêtes vocales de OK Google.
Installation
Tout d’abord installez Tasker sur votre Android, puis installer autoVoice, d’abord la version gratuite ensuite la version pro.
Il faut avoir des interactions créé sur Jeedom tuto disponible ici.
Configuration
On commence par lancer autoVoice.
On va dans Google Now Intégration.
Cochez les cases Enabled et Alternative Method (pas comme sur le screem ^^).
Maintenant on lance Tasker.
On Clique sur + pour créer un nouveau profil, sélectionnez Etat, Plugin.
Edit du 01/11/2015: Pour éviter de répéter les commande 2 fois il faut cocher la case Event Behaviour, merci a juju d’avoir apporté la réponse dans les commentaires.
Validez.
Maintenant il va falloir créer une nouvelle tache.
On va la nommer Jeedom par exemple, on clique sur + pour ajouter une action.
On sélectionne Réseau / Get HTTP dans:
- Serveur: Port: http://adresseipdupi:80
- Chemin: /jeedom/core/api/jeeApi.php?
apikey=votre-clef-API& type=interact&query=% avcommnofilter&utf8=1
Pour obtenir sa clef API rendez-vous sur Jeedom Géneral / Administration / Configuration.
Sur Tasker on retourne en arrière, et l’on créé une nouvelle tache et on cherche “dire” via le moteur de recherche.
Dans texte on met: %HTTPD
Voila on est prêt à tester tout ça, éteignez et rallumez votre profil Tasker.
Et c’est parti: << OK Google allumer la lumière du bureau entier >>.
Magie la lumière s’allume.
Vidéo Installation
Vidéo démonstration
Je n’est pas trouvé pourquoi il faut souvent dire 2 fois la commande si ça vient du téléphone ou de Jeedom.
J’espère que cet article, vous aura plus n’hésitez pas à poser vos questions dans les commentaires.
Mais ça m’a l’air top top tout ça !!!
Merci 😉
De rien, quelques petits bugs sur la la reconnaissance vocal sinon c’est très fun dans l’ensemble :-).
hello. Savez vous pkoi il faut parfois répéter 2 fois la requête ?
Non je n’est pas trouvé pourquoi, je cherche encore.
Merci pour le tuto ça fonctionne.
Par contre il faut dire 2 fois pour que ça fonctionne.
Y a t’il une solution ?
Merci David
Désolé toujours pas trouvé la réponse.
En fait j’utilise maintenant que tasker et ça fonctionne mieux.
Salut, très bon article.
David, comment fais tu pour te passer de autovoice et n’utiliser que tasker ?
Bonjour à tous,
J’ai trouvé pourquoi il faut toujours dire deux fois les commandes pour que ça fonctionne ! Il faut cocher la case Event Behaviour dans tasker quand vous êtes sur la configuration générale du profil autovoice (cf impression écran plus haut). Et là, comme par magie, plus besoin de dire 2 foix la même chose !!
Explication : Tasker ne libère pas la tâche tant qu’un mot clé ou qque chose vienne l’interrompre : elle reste toujours active (en vert) jusqu’à ce qu’une nouvelle commande est énoncée mais du coup il stop la tâche et elle repasse en noir.
Voilà, je ne sais pas si j’ai été très clair, mais c’est la solution !! çà marche parfaitement chez moi maintenant, j’avais le même problème au départ
Bonjour.
Merci pour cette explication je fais un édit dans l’article sa fonctionne nickel pour moi aussi.
pareil, il faut répéter 2X la commande, ce qui le rends inutilisable en pratique !
Personne n’a trouvé pourquoi ?
c’est bon la solution a était trouvé par juju dans les commentaires et je fais un édit dans l’article.
Hi !
J’ai suivi pas à pas les manips décrites dans l’article, mais rien à faire, Tasker me dit qu’aucun profil n’est actif… Et aucun résultat à mes commandes vocales.
Quand je lance la tache Jeedom dans Tasker, il me renvoi un message d’erreur :
20.31.27/Variables doreplresult: |/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1| -> |/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1|
20.31.27/Variables doreplresult: |/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1| -> |/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1|
20.31.27/E prot: http:// serverport: 192.168.1.62:80 contenttype:
20.31.27/E method: GET url: http://192.168.1.62:80/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1 timout: 10000 dataisfile false save null
20.31.27/WakeLockManager setClearAlarm: not setting, last set 10 ago
20.31.27/WakeLockManager setClearAlarm: not setting, last set 10 ago
20.31.27/E body isfile: false cont: null
20.31.27/E Erreur d’entrée/sortie pour http://192.168.1.62:80/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1 : java.io.IOException: Invalid % sequence: %av in query at index 98: http://192.168.1.62:80/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1.
Bonjour,
Avez vous bien remplacé MON-APi par votre apikey ?
Wii, évidemment ! 🙂
J’ai copié le message complet puis remplacé ma clé API par “MON-API”.
Bon, ce matin, j’ai retenté… Et, malgré la présence de ce message d’erreur, ça fonctionne !
Je ne vais pas chercher plus loin !
A la différence d’hier, et si ça peut aider ceux qui ont eu le même souci que moi, ce matin, lors de mes recherches vocales, le message d’auto voice indiquant qu’il avait intercepté une possible commande s’affichait (même avec tasker arrété).
Content que sa fonctionne.
Salut, merci pour ces explications, par contre tu parles de GET HTTP pour l’action à créer, mais dans ta vidéo tu mets un POST HTTP.
C’est normal ?
Salut,
Il faut que je vérifie ça.
Bizarre moi Google me répond vocalement: file not found (avec accent français jvous dis pas combien de tps j’ai mis pour comprendre).
J’ai créer une interaction pour demander la température qui marche correctement sur jeedom.
vire le /jeedom avant le /core dans le chemin 😉
Si ca peut servir a quelqu’un j’ai bien galérer.
idem, j’ai le même problème…. j’arrive pas à trouver
Bonjour,
Pour moi tout fonctionne normalement quand je lance la commande dans Autovoice. Je vais dans la rubrique Device et je clique sur mon device. Je dis la commande et elle s’exécute. Ce qui me laisse penser que Tasker est correctement paramétré.
Par contre quand je le fais dans “ok google” je vois l’interception par autovoice mais rien ne se lance.
Le profil tasker paraît actif car il dit “1 tâche active” quand je fais ma requête.
Une idée ?
Merci
Merci pour ce tuto très bon !
juste petite info qui m’a bloqué un moment. Ca ne reconnaissait pas les commandes vocales à travers Google Now.
Après plusieurs essais, j’ai trouvé qu’il fallait décocher l’option “Alternative Method” dans les paramètres d’intégration de Google Now dans Auto Voice.
Maintenant, c’est du tonerre !
Bonjour ,
J’ai une erreur d’entrées / sorties lors de l’exécution du script tasker .
j’ai bien mis ma clé API et adresse IP
auriez vous une idée de mon problème ?
merci
Philippe
00.40.16/Variables doreplresult: |/jeedom/core/api/jeeApi.php?apikey=mon api& type=interact&query=%avcommnofilter&utf8=1| -> |/jeedom/core/api/jeeApi.php?apikey=mon api& type=interact&query=%avcommnofilter&utf8=1|
00.40.16/Variables doreplresult: |/jeedom/core/api/jeeApi.php?apikey=mon api& type=interact&query=%avcommnofilter&utf8=1| -> |/jeedom/core/api/jeeApi.php?apikey=mon api& type=interact&query=%avcommnofilter&utf8=1|
00.40.16/E prot: http:// serverport: 192.168.0.182:80 contenttype:
00.40.16/E method: GET url: http://192.168.0.182:80/jeedom/core/api/jeeApi.php?apikey=mon api&%20type=interact&query=%avcommnofilter&utf8=1 timout: 10000 dataisfile false save null
00.40.16/M ignoring event when disabled: net.dinglisch.android.tasker.VSETUM
00.40.16/M ignoring event when disabled: net.dinglisch.android.tasker.VSETUM
00.40.16/E body isfile: false cont: null
00.40.16/E Erreur d’entrée/sortie pour http://192.168.0.182:80/jeedom/core/api/jeeApi.php?apikey=monapi&%20type=interact&query=%avcommnofilter&utf8=1 : java.io.IOException: Invalid % sequence: %av in query at index 102: http://192.168.0.182:80/jeedom/core/api/jeeApi.php?apikey=mon api&%20type=interact&query=%avcommnofilter&utf8=1.
j’ai un retour en diction “pourcent httpd”, il ne prend pas en compte le fait que ce soit une variable…une idée?
Bonjour et désolé de revenir sur un poste vieux de plus de 5 mois.
Quand je lance une commande via “ok google” j’ai un retour de Google qui me dit “Désolé mais je n’ai pas compris votre demande.” Ou d’autres phrases du même type.
Par contre quand je suis dans autovoice et que je clique sur mon device, mes commandes marchent, l’action s’ exécute bien et j’ai mon retour de jeedom “lumière allumée” ou “lumière éteinte”.
Ça fonctionnait très bien sûr mon smartphone et j’ai voulu refaire la même chose sur ma tablette mais depuis ça bug.
Après, sur mon tél l’ordre et l’action fonctionnaient en disant “ok google” mais pas le retour de jeedom, il me disait “%HTTPD” tel quel au lieu de “lumière allumée”
Sur la tablette, c’était l’inverse.
J’ai désinstallé autovoice et tasker de mon tél.
J’ai réinitialisé la tablette et réinstallé le tout en suivant la procédure mais pareil.
Dans devices de autovoice, je n’ai que ma tablette…
Ça fait des jours que je suis dessus mais c’est toujours pareil.
Si qq’un à une explication… merci d’avance.
J’ai le même problème. cela me répond %HTTPD au lieu de lancer l’interaction et de me répondre
Je ne suis pas contre une aide
Bonjour à tous,
Je rencontre le même problème que “NeoSlugman”.
Si je remplace l’étape 1: par “obtenir la voix”, ça fonctionne mais je ne peux pas lancer la reconnaissance vocale avec la commande “ok google”, je suis obligé de lancer la reconnaissance avec un raccourci sur Android.
Je souhaite vraiment utiliser “Ok google”
Quelqu’un peut m’aider ? Merci 😉
Erreur dès la première étape:
20.31.27/Variables doreplresult: |/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1| -> |/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1|
20.31.27/Variables doreplresult: |/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1| -> |/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1|
20.31.27/E prot: http:// serverport: 192.168.1.62:80 contenttype:
20.31.27/E method: GET url: http://192.168.1.62:80/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1 timout: 10000 dataisfile false save null
20.31.27/WakeLockManager setClearAlarm: not setting, last set 10 ago
20.31.27/WakeLockManager setClearAlarm: not setting, last set 10 ago
20.31.27/E body isfile: false cont: null
20.31.27/E Erreur d’entrée/sortie pour http://192.168.1.62:80/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1 : java.io.IOException: Invalid % sequence: %av in query at index 98: http://192.168.1.62:80/jeedom/core/api/jeeApi.php?apikey=MON-API&type=interact&query=%avcommnofilter&utf8=1.
pour ceux qui on aussi l’erreur invalid [ sequence etc…
il faut ajouter 25 après le & de la commande ce qui donne %25VOICE
http://stackoverflow.com/questions/14214322/android-java-io-ioexception-java-net-urisyntaxexception
Autan pour moi, cela pilote bien mais ca me répond qd même %HTTPD
Bonjour,
Il se trouve que j’ai fait la manipulation pas à pas, mais cela ne fonctionne pas chez moi. J’ai bien mis mon API Key correspondant, j’ai bien viré /jeedom de l’url, j’ai bien des interactions (qui fonctionnent bien avec S.A.R.A.H.), mais ça ne fonctionne pas avec ok Google. Quand je mets le même lien sur chrome, ça m’affiche “désolé, je n’ai pas compris la demande”. Ca me désespère. Surtout après avoir acheté ces applis. Certes, peu chères, mais qui me sont pour le moment complètement inutiles :/
Si vous avez une solution…
Merci beaucoup pour ce super tuto. Tout fonctionne !
Bonjour, maintenant il existe [email protected] sur android:
https://play.google.com/store/apps/details?id=com.emily.jarvis.home&hl=fr