[Tuto] Commander Google Assistant depuis domoticz via "text query" : Google home devient un bridge pour domoticz
Publié : 21 août 2018, 10:20
Bonjour,
Actuellement, il est plutôt "simple" (et gratuit) d'utiliser la voix pour déclencher des scènes domotiques via:
Assistant Google => IFTT => domoticz.
Mais est-il possible de faire le contraire via google assistant text query ? :
domoticz => Assistant Google => Google home pour déclencher une scène
Je m'explique, j'essaie de piloter les scènes du broadlink rm mini 3 via domoticz sans aucune installation locale de bridge RM.
J'ai pu "brancher" ces scènes avec google home et les utiliser avec la voix via google assistant avec google home mini: ça marche! ce qui signifie que Google home joue le rôle d'un pont pour broadlink.
Si nous allons plus loin, nous pouvons imaginer que google home pourrait même être un "pont global" pour tout ce qui est compatible avec Google home (IFTTT , Philips HUE, Samsung SmartThings etc ... etc ...)
Mais comment faire des requêtes a l' assistant google depuis domoticz en mode text ?
Après plusieurs recherches, j'ai réussi à exécuter un script python avec le paramètre query_text sur domoticz appelant google assistant!
J'ai donc essayé de déclencher une scène de Broadlink rm mini 3 et .... bingo! Ça marche
testé avec domoticz PI3 et Windows avec un bouton on/off appelant le script python: pas de problèmes!
pour le faire :
suivez pas à pas depuis Google ici "Embed the Google Assistant":
https://developers.google.com/assistant ... ce/python/
Ensuite, testez avec ce script:
https://github.com/googlesamples/assist ... xtinput.py
Script que j'ai mis à jour pour ajouter un paramètre comme "activer la lumière dans le salon".
Je peux maintenant déclencher tous les appareils Google sans installation de bridge local pour domoticz: google home est The bridge!
Ce qui signifie que google home a des appareils compatibles ... c'est compatible avec domoticz !!!!!!
Ce qui signifie que google home via google assistant devient un pont sécurisé hébergé dans le cloud pour domoticz!
bien sûr sans réseau .... il faudra marcher jusqu'au bouton: D
Si nous allons encore plus loin que la notion de pont .... imaginez simplement ce qu il serait possible de faire avec les réponse "parsable" de l assistant a des question du style :
va t il pleuvoir demain ? "non le temps ne sera pas pluvieux....bla bla"
quelle est la temperature a aix en provence ?=> "a aix en provence en ce moment il fait 33 degré"
sans oublier que le PI sur lequel est installer domoticz pourra via une enceinte sur la sortie audio donner des informations....
si vous êtes intéressé pour obtenir plus de détails faites le moi savoir.
Je vous remercie
=================================
Info complémentaire pour install sur PI3.
-si votre domoticz tourne sur le compte root : il faudra copier le fichier "client_secret_xxxx.json" sous le repertoire (a créer) /root/.config/google-oauthlib-tool/
-l appel des les switch domoticz ne doit pas contenir de caractères accentués
-il faudra faire appel a python3 localisé ds le repertoire /home/pi/env/bin
-le device-id est a récupérer depuis le fichier :"client_secret_xxxx.json"
-les fichier suivants doivent etre copier ds /home/pi/script/
gass.pyw/gass5.pyw/les 2 helpers
renommer les gass.py et gass5.py en pyw (je ne sais pas si ca change grand choses d ailleurs)
cmd OS pour l 'assistant qui permet de checker l install de google assistant avec le compte root:
sudo /home/pi/env/bin/python3 /home/pi/script/gass.pyw --device-model-id <your model id> --device-id <your device id> --lang fr-FR
ex: de cmd ON dans le switch :
script:///home/pi/env/bin/python3 /home/pi/script/gass5.pyw --device-model-id <your model id> --device-id <your device id> --lang fr-FR --query_txt "activer tf1"
Actuellement, il est plutôt "simple" (et gratuit) d'utiliser la voix pour déclencher des scènes domotiques via:
Assistant Google => IFTT => domoticz.
Mais est-il possible de faire le contraire via google assistant text query ? :
domoticz => Assistant Google => Google home pour déclencher une scène
Je m'explique, j'essaie de piloter les scènes du broadlink rm mini 3 via domoticz sans aucune installation locale de bridge RM.
J'ai pu "brancher" ces scènes avec google home et les utiliser avec la voix via google assistant avec google home mini: ça marche! ce qui signifie que Google home joue le rôle d'un pont pour broadlink.
Si nous allons plus loin, nous pouvons imaginer que google home pourrait même être un "pont global" pour tout ce qui est compatible avec Google home (IFTTT , Philips HUE, Samsung SmartThings etc ... etc ...)
Mais comment faire des requêtes a l' assistant google depuis domoticz en mode text ?
Après plusieurs recherches, j'ai réussi à exécuter un script python avec le paramètre query_text sur domoticz appelant google assistant!
J'ai donc essayé de déclencher une scène de Broadlink rm mini 3 et .... bingo! Ça marche
testé avec domoticz PI3 et Windows avec un bouton on/off appelant le script python: pas de problèmes!
pour le faire :
suivez pas à pas depuis Google ici "Embed the Google Assistant":
https://developers.google.com/assistant ... ce/python/
Ensuite, testez avec ce script:
https://github.com/googlesamples/assist ... xtinput.py
Script que j'ai mis à jour pour ajouter un paramètre comme "activer la lumière dans le salon".
Je peux maintenant déclencher tous les appareils Google sans installation de bridge local pour domoticz: google home est The bridge!
Ce qui signifie que google home a des appareils compatibles ... c'est compatible avec domoticz !!!!!!
Ce qui signifie que google home via google assistant devient un pont sécurisé hébergé dans le cloud pour domoticz!
bien sûr sans réseau .... il faudra marcher jusqu'au bouton: D
Si nous allons encore plus loin que la notion de pont .... imaginez simplement ce qu il serait possible de faire avec les réponse "parsable" de l assistant a des question du style :
va t il pleuvoir demain ? "non le temps ne sera pas pluvieux....bla bla"
quelle est la temperature a aix en provence ?=> "a aix en provence en ce moment il fait 33 degré"
sans oublier que le PI sur lequel est installer domoticz pourra via une enceinte sur la sortie audio donner des informations....
si vous êtes intéressé pour obtenir plus de détails faites le moi savoir.
Je vous remercie
=================================
Info complémentaire pour install sur PI3.
-si votre domoticz tourne sur le compte root : il faudra copier le fichier "client_secret_xxxx.json" sous le repertoire (a créer) /root/.config/google-oauthlib-tool/
-l appel des les switch domoticz ne doit pas contenir de caractères accentués
-il faudra faire appel a python3 localisé ds le repertoire /home/pi/env/bin
-le device-id est a récupérer depuis le fichier :"client_secret_xxxx.json"
-les fichier suivants doivent etre copier ds /home/pi/script/
gass.pyw/gass5.pyw/les 2 helpers
renommer les gass.py et gass5.py en pyw (je ne sais pas si ca change grand choses d ailleurs)
cmd OS pour l 'assistant qui permet de checker l install de google assistant avec le compte root:
sudo /home/pi/env/bin/python3 /home/pi/script/gass.pyw --device-model-id <your model id> --device-id <your device id> --lang fr-FR
ex: de cmd ON dans le switch :
script:///home/pi/env/bin/python3 /home/pi/script/gass5.pyw --device-model-id <your model id> --device-id <your device id> --lang fr-FR --query_txt "activer tf1"