Google Home et IFTTT

Chose promise chose due, après une brève introduction et prise en main de Google Home je vous propose de découvrir comment l’utiliser avec IFTTT.  Dans cet article, nous verrons ainsi comment étendre les possibilités que nous offrent ce produit en le connectant à des systèmes a priori incompatibles. Afin de ne pas s’éparpiller, je vais suivre un cas d’usage simple mais assez complet. Cependant, ne vous inquiétez pas, si vous ne voulez pas mettre en place les mêmes actions il vous sera très facile d’adapter ces instructions à d’autres usages.

Cas d’usage

Généralités

Avant de voir en détail le fil conducteur de cet article, voyons comment le système fonctionne dans la théorie. L’utilisation de IFTTT va vous permettre de liée Google Assistant, qui gère les commandes et discussions que vous avez avec votre Google Home et d’autres services qui ne sont pas forcément pris en charge de base.

Google Home & IFTTT

Google Home & IFTTT

Il y a toute une liste de services disponibles. Certains sont très simples et ne nécessitent que très peu de connaissances tandis que d’autre peuvent être plus pointus.

L’exemple de l’article

Dans l’exemple d’aujourd’hui, mon but est de rendre ma télé connectée pilotable par Google Home. Cette dernière n’étant pas toute jeune, il y a peu de services encore compatibles…

Heureusement, Home Assistant (un système de domotique) en fait partie. Ce dernier met à disposition des APIs qui sont justement utilisables via IFTTT. Nous allons donc tenter de lancer des actions Home Assistant lorsqu’une commande vocale est prononcée. Vous pouvez très aisément adapter cet article à d’autres services ou Webhooks, donc pas de panique si vous ne connaissez pas Home Assistant.

Si nous revenons au schéma précédent, il devrait ressembler à ceci avec mon exemple.

 

Home-assistant + IFTTT et Google Home

Home Assistant + IFTTT et Google Home

 

API Home Assistant

Si vous ne souhaitez pas travailler avec Home Assistant, vous pouvez passer directement à l’étape suivante.

Prérequis

Pour fonctionner, vous aurez besoin d’une installation Home Assistant fonctionnelle et accessible d’internet. Si ce n’est pas votre cas vous trouverez plus d’informations dans cette série d’articles.

Découverte de votre installation

Pour déclencher des actions partant d’Home Assistant, nous allons utiliser des requêtes HTTP. Dans un premier temps, il est donc important de préparer les requêtes nécessaires. Dans un précédent article (Utiliser l’API REST Home Assistant) nous avions vu comment utiliser ces APIs. Nous allons nous baser sur ce que nous avions appris pour construire nos différents éléments.

Dans un premier temps, identifions le matériel que nous devons contrôler. Avec postman lancez la requête suivante :

https://gist.github.com/quentinchap/4a1ff4d99c6c30b97440a41d51a50cfc

Je vois que mon périphérique est media_player.living_room_tv je peux avoir plus d’informations sur ce dernier avec la requête suivante :

https://gist.github.com/quentinchap/2898799a032090a92d0fee73945cb5a8

C’est un media_player, partant de ce constat nous allons rechercher les actions disponibles pour ce dernier. Lancez la requête suivante :

https://gist.github.com/quentinchap/4c044eb8809f37d0a62fb8de955c086a

Recherchez « domain »: « media_player » et vous aurez toutes les actions qu’il est possible de lancer sur un media_player.

Grâce à ces informations déduisez les requêtes suivantes:


Je pense qu’avec ces quelques requêtes vous avez de quoi vous amuser. Cependant n’hésitez pas à explorer et à tester d’autres éléments.

IFTTT

Côté IFTTT nous allons utiliser le service Webhooks que nous avons déjà abordé ici. Nous allons donc créer une applet du type IF Google Assistant THEN Webhooks.

Gestion du son

Dans un premier temps, mettons en place la gestion du son de notre télévision.

Cliquez sur this pour choisir un service, sélectionnez Google Assistant et choisissez say a simple phrase

IFTTT trigger

IFTTT trigger

Configurez entre une et trois phrases qui déclencheront l’action et pensez bien à sélectionner votre langue.

Configuration applet google assistant

Configuration applet Google Assistant

Ensuite, cliquez sur Create trigger et sélectionnez webhook. Ici, cliquez sur Make a web request

IFTTT: Make a web request

IFTTT: Make a web request

Ensuite, comme l’exemple ci-dessous, configurez le trigger en vous appuyant sur les requêtes que vous avez préalablement préparées. N’oubliez pas d’ajouter ?api_password=votre_mot_de_passe à la fin de l’URL de votre API.

 

Vous n’avez plus qu’a créer deux autres applets sur le même modèle appelant l’API pour baisser le son et pour le couper.

 

Gestion des chaînes

La gestion des chaînes est un peu plus complexe puisque nous allons avoir besoin d’isoler un paramètre dans la phrase. Pour ce faire, IFTTT nous propose d’utiliser les ingredients.

Les APIs Home Assistant demandent que les chaînes soient indiquées d’une manière assez précise. Par exemple pour mettre M6 les termes m6 m 6 ou 6 ne seront pas pris en compte. On voit donc vite le problème qui peut se poser avec de la reconnaissance vocale. Pour pallier celui-ci, j’ai développé un petit Add-on pour Hass.io qui offre des APIs plus flexibles https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api.

 

Créez une nouvelle applet en sélectionnant cette fois-ci le trigger Say a phrase with a text ingredient.

trigger say a phrase with text ingredient

Trigger say a phrase with text ingredient

La configuration de ce trigger est presque la même que précédemment, il vous suffit juste d’ajouter $ pour symboliser votre paramètre. Par exemple, si je souhaite dire « Ok Google, Zap sur tf1 » mon paramètre (tf1) doit être, comme ci-dessous, remplacé par $.

text ingredient IFTTT

Text ingredient IFTTT

Ensuite, sélectionnez une fois encore le service webhook. La configuration de ce dernier ne diffère pas des exemples précédents, vous devez seulement insérer le paramètre nécessaire et l’insérer dans le body de votre requête. Pour ce faire, rien de plus simple. Cliquez sur add ingredient en dessous du champ Body et choisissez TextField. Ainsi, la valeur se cachant derrière le $ que nous avons paramétrée juste avant sera insérée à l’endroit où vous avez ajouté l’ingrédient. Ainsi dans l’exemple ci-dessous, pour la phrase « OK Google, Zap sur tf1 » on enverra une requête avec le body :

https://gist.github.com/quentinchap/6ee2f8e747f5e2f461cac7b0220996aa

 

Requête pour changer de chaîne

Requête pour changer de chaîne

 

Conclusion

Vous savez tout ! Vous pouvez dès à présent créer toutes sortes de commandes personnalisées à condition qu’il existe un service IFTTT ou qu’il y ait une API Rest. Il est donc très facile d’étendre les fonctionnalités de notre Assistant, cependant, cette méthode a ces limites.

En effet, la communication est unilatérale. Il n’est pas possible d’avoir un retour d’information sur Google Home 🙁 Par exemple, je n’ai pas aujourd’hui trouvé de moyen, via IFTTT d’avoir la température dans ma maison car mon matériel n’est pas supporté (Hue motion + Hack du Hue Motion ) et que je ne peux pas déclencher Google Home via un autre événement que ma voix.

D’autres méthodes existent. Certaines plus complètes que d’autres mais aussi plus techniques. De plus elles ne sont pas toutes disponibles en français pour le moment. Nous les explorerons très certainement rapidement 😉

J’espère que cet article vous a plu. N’hésitez pas à partager les idées/applications que vous avez mis en place.

74 réponses

  1. cedb dit :

    Bonjour, merci pour ce tuto. Cependant je bute sur une bêtise, coté IFTTT et webhook, l’applet plante : Applet failed ou skipped (Ingredients
    CreatedAt (none)),d’apres les log il attend l’ingredient. Néanmoins mon Google repond bien aux nouvelles questions parametrées dans IFTTT. Une idée ?

    • Bonjour,
      J’ai déjà rencontré des problèmes similaires. La causes étant dans mon cas un problème de configuration côté webhook.

      Pouvez-vous m’en dire plus sur les configurations de votre applet? (en remplaçant les données sensible bien-sure)

      Merci 🙂

  2. rodymary dit :

    Salut, pour ton retour d’état, pourquoi tu balance pas un simple text-to-speech sur une sonos ou un simple hp relié à un raspberry pi, c’est simple et efficace.

  3. Bonjour,
    Le text-to-speech est une possibilité à laquelle j’ai pensé mais les résultats que j’ai obtenu pour le moment ne sont pas extra… En théorie il est même possible d’utiliser cette méthode directement sur le Google Home puisqu’il est considéré comme étant un media player par home assistant. As-tu essayé cette solution ? Si oui les résultats sont-ils satisfaisants chez toi ?

    Je suis entrain de regarder en détail les solutions possibles mais ce que je voulais dire dans cette article c’est qu’il n’y a pas de moyen « intégré » pour avoir ce type de retour.

    • rodymary dit :

      Non, GH est encore trop jeune pour faciliter ce genre de manip.
      En attendant, utilises tes sonos pour faire causer ta maison, node-sonos-http-api est très simple à installer et à utiliser, avec le choix entre plusieurs moteurs tts de qualité.
      En bonus tu peux t’amuser à faire converser GH et sonos, et créer des scénarii via ta box domotique ou node.red

  4. cedb dit :

    If You say « Éteint le décodeur », then make a web request :
    Make a web request
    URL :
    http://xxxxxxxxx:8123/api/services/switch/turn_off?api_password=xxxxxxxxxxx
    Method POST
    Content Type(optional) :
    apllication/json
    Optional
    Body(optional) :
    {« entity_id »: »switch.fibaro_system_fgwpef_wall_plug_switch »}

    l’applet est sythematiquement skipped sans ingrédient ( details : Ingredients CreatedAt(none) )
    Je comprend pas…

    • Avez vous testez l’api avec un client REST comme Postman ? Car l’ingrédient manquant n’est pas forcément le problème. De mon côté j’ai systématiquement ce message mais l’applet n’est pas en erreur et tout est ok.

      J’ai tester de mon côté sur un switch et la requête semble bonne (à condition que l’entity_id soit le bon). Êtes vous certain que votre installation est disponible de l’extérieur?

  5. cedb dit :

    Bonjour, suivant vos conseils et après une rapide vérification via Postman, j’ai pu identifier un problème de routage vers home assistant. une histoire de virgule. Que de temps perdu. Dans tous les cas merci pour ce tuto qui me permet desormais de TOUT piloter avec mon Google Home.
    Merci 😉

  6. Content d’avoir pu aider 😉
    A bientôt 🙂

  7. Mickael dit :

    Bonjour,

    Je suis a la recherche d’interrupteurs connectés que je pourrai gérer depuis Google Home juste pour « ok google, allume la cuisine » ou « ok google, éteint la cuisine » rien de plus que allumer ou éteindre mes pièces a la voix.

    Pourriez vous me donner des modèles d’interrupteurs compatible ? Je ne crois pas qu’il en existe des compatible google assistant mais peut etre qu’il est possible de faire fonctionner certains modèles via IFTTT par exemple…

    Merci d’avance pour votre aide

    • Bonjour,

      Si je comprend bien vous ne souhaitez pas un simple bouton mais un interrupteur traditionnel, encastrable et télécommandé.
      Je ne connais pas d’appareil de ce genre prêt à l’emploi compatible IFTTT ou Google Assistant. Cependant, si vous n’avez pas peur de bricoler un peu j’ai trouvé deux solutions.

      • Utiliser un commutateur intélligent comme le Sonoff avec un raspberry Pi ayant Home Assistant ou un solution équivalente. Vous serez en mesure de contrôler votre installation via IFTTT et Google Assistant
      • Autre solution, des interrupteurs encastrables télécommandés. Il en existe utilisant en wifi comme celui-ci, communiquant par onde radio comme celui-là, etc. Je n’ai cependant pas trouvé de système directement compatible IFTTT et encastrable. Il vous faudra donc là encore un raspberry Pi avec un système de domotique

      Bref, il existe beaucoup de solutions mais une installation centrale type Home Assistant semble incontournable pour le moment. Il faut juste faire attention aux choix de matériel et à la compatibilité de ce dernier.

      Bonne journée

  8. Mickael dit :

    Merci pour votre réponse.

    Mais je ne veux pas compliquer l’installation avec un raspberry donc je vais attendre que d’autre produits se développe pour la google home sa sera plus simple et je pense que le nombre de produits compatible vas vite augmenter…

    Je prends donc mon mal en patience le temps de trouver une solution simple et efficace.

    Encore merci pour votre réponse.

    Bonne journée

  9. Luccio dit :

    Bonjour. Merci pour cet article.
    Je me heurte à un problème simple : je veux utiliser plusieurs fois l’applet « Say a simple phrase » mais contrairement aux autres applets, je n’ai pas la possibilité « Create a different version of this Applet » avec le bouton Start en dessous.
    Avez vous pu créer plusieurs versions avec cette applets ?
    Merci encore.

  10. Luccio dit :

    OK, un collègue vient de me montrer comment faire. J’ai honte.

  11. Txus dit :

    Merci pour ce post très intéressant.
    J’utilise Webhooks pour commander des équipements en HTTP depuis Google Home. Ca fonctionne très bien, juste un peu de latence entre la commande et l’action.
    Comme vous l’avez écrit, c’est unilatéral et comme vous je recherche une solution pour que Google assistant interprète la réponse HTTP à une action.
    Je pense que la solution viendra de IFTTT mais je suis preneur d’une idée, même biscornue !
    Merci encore te très bonne journée.

    Txus

    • Bonjour,
      Merci de votre retour 🙂 il y a plusieurs possibilités en effet, plus ou moins complexes.

      La première consiste à passer par un système tiers tel qu’Home Assistant qui est capable d’utiliser les capacités de cast du Google Home. C’est facile à mettre en place mais le résultat n’est pas optimales…
      La seconde, plus technique consiste à développer soit même ces actions via le sdk de Google. Je prépare justement un article sur le sujet 😉

      Bonne journée.

  12. Txus dit :

    Très bien, je surveillerai vos post.
    Si par ailleurs je trouvais une solution, j’en ferais part sur votre site.

  13. Benjamin dit :

    Bonjour, j’ai souhaité installer votre addon pour la gestion des chaines, mais impossible. Voici le log :

    17-11-27 20:27:07 INFO (MainThread) [hassio.addons.git] Clone addon https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api repository
    17-11-27 20:27:08 ERROR (MainThread) [hassio.addons.git] Can’t clone https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api repo: Cmd(‘git’) failed due to: exit code(128)
    cmdline: git clone –recursive -v https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api /data/addons/git/04bd30bc
    stderr: ‘Cloning into ‘/data/addons/git/04bd30bc’…
    remote: Not Found
    fatal: repository ‘https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api/’ not found
    ‘.
    17-11-27 20:27:08 ERROR (MainThread) [hassio.addons] Can’t load from repository https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api
    17-11-27 20:27:08 INFO (MainThread) [hassio.addons] Load addons: 18 all – 0 new – 0 remove

    Une idée d’où le problème pourrait venir ?

    Merci d’avance.

    • Bonjour,
      Pouvez-vous m’expliquez comment vous avez procédez pour l’installer ? Cela pourrait m’apporté des pistes afin de vous aider. De plus, avez-vous tester d’installer un autre addon? Juste pour vérifier que ce n’est pas un problème « réseau ».

  14. Benjamin dit :

    Bonjour,

    Je fais comme indiqué dans la doc : Je copie le client Github, je le colle dans « Add-On Repositories » sur ma page home assistant (Onglet Hassio puis le petit panier).

    Concernant un autre modules, aucun bug de ce côté.

  15. Vincent dit :

    Bonjour,
    tout d’abord merci pour tous ces tutos qui sont une véritable mine d’or pour le débutant++ que je suis.
    Je rencontre un problème en lançant mon applet depuis IFTTT soit applet Failed, soit problème with webhook service. J’ai test mon script sur postman pas de probleme. je me connecte à HomeAssistant depuis l’extérieur sans souci donc la j’avoue je sèche.

    • Bonjour,
      Heureux d’avoir pu vous aider avec cet article 😉 J’aurais plusieurs questions pour tenter de vous aider d’avantage:

      • Passez-vous directement par IFTTT et les APIs Home Assistant ou via un Add-on ?
      • Avez vous testez seulement l’accés à Home assistant de l’extérieur ou bien aussi vos script via postman ?
      • Avez vous plus d’informations dans les logs d’Home Assistant ?
  16. Vincent dit :

    Bonjour merci de tenter de m’aider. Je passe en direct par IFTTT et j’ai bien accès à homeassistant depuis l’exterieur mais je n’ai testé mes scripts postman que depuis chez moi. Concernant le log, ce dernier ne me donne aucune info autre que sur le démarrage d’homeassistant lui même.

    Cordialement
    Vincent

    • Bonjour,
      Encore quelques questions car c’est assez difficile de vous aidez avec aussi peu d’éléments:

      • Pouvez-vous tenter postman depuis l’extérieur ?
      • Dans vos script postman comment passez-vous le mode passe Home Assistant (Dans l’URL ou via les headers de la requête)?
  17. Benjamin dit :

    Bonjour,

    Je me permets de revenir vers vous car je n’arrive toujours pas à installer l’addon. Voici le log :
    « 17-12-09 08:57:40 INFO (MainThread) [hassio.addons.git] Clone addon https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api repository
    17-12-09 08:57:41 ERROR (MainThread) [hassio.addons.git] Can’t clone https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api repo: Cmd(‘git’) failed due to: exit code(128)
    cmdline: git clone –recursive -v https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api /data/addons/git/04bd30bc
    stderr: ‘Cloning into ‘/data/addons/git/04bd30bc’…
    remote: Not Found
    fatal: repository ‘https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api/’ not found
    ‘.
    17-12-09 08:57:41 ERROR (MainThread) [hassio.addons] Can’t load from repository https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api
    17-12-09 08:57:41 INFO (MainThread) [hassio.addons] Load addons: 19 all – 0 new – 0 remove »

    De plus, même sans l’addon, je suis incapable de detecter les chaines que je regarde. Je vois juste « Live TV ». Ma télé est une LG tournant sur WEBOS.

    • Bonjour,

      Mes instructions ne sont pas très claire veuillez m’en excuser. C’est pour cela que vous n’avez pas réussi à l’installer. Le repo que vous devez ajouter ce trouve à cette adresse https://github.com/quentinchap/hassio-repo et non pas à c’elle-ci https://github.com/quentinchap/hassio-repo/tree/master/tv-custom-api (qui est en fait l’adresse du code source de l’add-on et non pas du repo).
      Une fois la bonne adresse ajoutée vous devriez enfin pouvoir ajouter l’Add-on.

      Concernant votre télévision, le changement de chaîne via Home Assistant fonctionne-t’il? (Je possède aussi une TV LG sous WebOS et je n’ai pas ce comportement)

      Pour le moment cet Add-on vous permet simplement de rendre le nommage des chaînes paramètrable et plus flexible. Je suis en train de réfléchir à d’autre fonctionnalités mais pour le moment il n’utilise pas d’information issue de la télévision.

  18. Vincent dit :

    J’ai refais des tests : postman depuis l’extérieur fonctionne (partage de ma connexion mobile chez moi) et je passe par l’URL et non par les headers si je comprends bien votre question et je post mon script dans body. Cependant j’ai fais un test qui me paraissait moins complexe. J’ai suivi votre tuto sur telegram et IFTTT. Quand je fais le test par service de homeassistant il me créer bien le fichier google drive pas de souci en revanche quand je passe par automation en modifiant le config.yaml la, IFTTT me signale une erreur soit connexion refused soit timeout. Mais le plus bizzare ce que telegram me repond ok et que mon system reboot mais pas de maj du fichier dans mon drive.J’ai pourtant bien inséré la key_api de ifttt dans mon fichier config. Petite précision j’edite mon fichier configuration par notepad++ car je n’ai pas configurer l’acces a mon ssh.
    J’avoue que je patoge un peu…

  19. Benjamin dit :

    Bonjour,

    En effet maintenant aucun souci pour l’installation ! Merci !

    Par contre, non en effet, je n’arrive pas à changer les chaînes de HA. Que j’utilise le bouton suivant, ou que je tente de le faire par le « service data » en JSON avec
     » {
    « entity_id »: « media_player.lg_tv »,
    « source »: « M6″
    } »

    Cependant, faut-il renseigner les chaines dans sources dans le configuration.yaml ?

  20. Benjamin dit :

    Aujourd’hui, mon fichier ressemble à ça :

    « media_player TV:
    – platform: webostv
    host: MONIP
    name: LG TV
    timeout: 5
    filename: webostv.conf
    customize:
    sources:
    – livetv
    – youtube
    – makotv
    – netflix

    Si je tente de mettre autre chose, j’ai un fichier configuration invalide ou alors mon HA ne redémarre pas.

    En tout cas merci de prendre au tant de temps pour mon problème !

    • Bonjour,
      Avez-vous tenter de retirer la partie customize de votre configuration? Je ne peu pas le vérifier actuellement mais il ne me semble pas l’avoir utilisée de mon côté et j’ai les chaînes qui descendent en tant que sources.

      Update: Je vient de vérifier chez moi j’utilise l’autre composant, lg_netcast. Il me semble cependant que toutes les tv lg webos ne sont pas compatibles

  21. Benjamin dit :

    Bonjour et merci pour tous. Malheureusement, LG Netcast n’est pas compatible chez moi. Cependant, supprimer la partie customize m’a permis d’avoir plein d’autre sources, mais pas les chaines. En tout cas, merci pour tout !

  22. Ouassini dit :

    Bonjour monsieur,
    Je vien d’acquérir un google home j’ai suivi tout l’instruction pour les changements de chaîne mais rien ne se passe.
    Et en plus je vien d’ajouter une formule pour ajouter des événements sur mon agenda et le message que j’ai « desolé je ne peut pas ajouté un événement a votre agendas.
    Pouvez vois m’aider s’il vous plais.
    Cordialement.

    • Bonjour,
      Concernant le changement de chaîne, avez vous des messages d’erreurs où d’autre informations qui me permettrait de vous aider? Est ce que l’Add-on c’est correctement installé sur Home Assistant?

      Concernant l’agenda il semble que la fonctionnalité ne soit pas encore disponible en France, je ne peu pas en ajouter moi non plus.

  23. meresse dit :

    bonjour
    Je vient d’acquérir un google home complètement novice dans la matière
    pour pouvoir faire des commandes de la tv ou des lumières
    actuellement j ai google home et chromecast et abonnement chez sfr
    faut il rajouter d autre matériel pour pouvoir travailler avec ifttt et google assistance
    cordialement
    bart

  24. Lange dit :

    Bonjour, ma maison est connecté entièrement à des prises G-Homa (wifi) avec sont application mais elle n’est pas compatible Google home 🙁 y’a t’il un solution pour ne pas que je redepence une fortune a changer toute les prises wifi ?!! Merciii d’avance 🙂

  25. DANREE Bernard dit :

    Bonjour
    J’apprécie tout particulièrement vos tutos qui sont d’une simplicité exemplaire meme pour les non initiés.
    Pouvez vous me dire s’il est possible de mettre trois commandes dans une meme requete IFTTT ? (j’ai trois prises domotique à allumer en meme temps)
    Merci d’avance.
    Cordialement.

    • Bonjour,

      Merci beaucoup pour vos encouragements 🙂 A ma connaissance vous ne pouvez malheureusement pas envoyer plusieurs requêtes via IFTTT 🙁 Cependant, des solutions peuvent vous dépanner

      • Si vous utilisé Home Assistant ou hass.io vous devriez pouvoir arriver à faire ce que vous souhaitez grâce aux groupe ou aux scène (https://devotics.fr/creer-et-utiliser-les-groupes-dans-home-assistant/).
      • Si vous n’utilisez aucun système de domotique mais que vous êtes un minimum technique vous pouvez vous en sortir en créant votre propre Api. Ainsi vous pouvez facilement déclencher autant d’action que vous souhaitez avec une seule requête. Pour créer votre propre Api plusieurs solutions sont possibles.
        Dans l’article suivant nous parcourons l’une de ces solution (https://devotics.fr/votre-premiere-app-nodejs-express/) mais vous pouvez facilement trouver d’autre méthode sur internet.

      En espérant vous avoir aidé, bonne journée 🙂

  26. Nicolas dit :

    Bonjour,
    Lorsque j’effectue POST http://adresse_ip_homeassistant/api/services/media_player.tele/volume_down, j’obtiens juste 2 crochets dans Body.
    Je ne trouve pas où je dois indiquer { « entity_id »: »media_player.tele »}. media_player.tele correspond à mon Chromecast.
    Pour info, lorsque j’effectue http://adresse_ip_homeassistant/api/states, le statut de mon entity_id media_player.tele est en off.
    Pouvez-vous m’aider ?

    Nicolas

    • Bonjour,
      concernant { “entity_id”:”media_player.tele”} vous devez l’ajouter dans le body de votre requête comme sur cette image:

      Concernant le statut off de votre périphérique c’est le même peu importe que votre Chromecast soit allumé ou non ?
      Dernière question, que voulez-vous faire exactement? Car le contrôle du volume d’un Chromecast est déjà supporter nativement par Google Home, pas besoin de passer par IFTTT.

      • Nicolas dit :

        Bonjour,
        Merci de m’avoir répondu. J’avais bien indiqué la requête dans le body comme dans l’image.
        Mon objectif est de contrôler le son et les chaines de la télé.
        Lorsque je demande à Google Home de monter le son de la télé, il répond bien ce que j’ai écris « Ok je monte le son de la télé ».
        Cependant, il n’effectue aucune action.
        Il n’y a donc rien à configurer dans un des fichiers de home assistant ?
        Quand vous dîtes que c’est déjà supporter nativement, il faut être sur la source du chromecast au niveau de la télé ?

        Nicolas

      • Malheureusement vous n’allez pas pouvoir contrôler les fonctionnalités de votre télévision avec votre chromecast. Pour pouvoir contrôler votre télévision il vous faut une télévision connectée ou un équipement spécifique. Home Assistant et IFTTT peuvent alors vous aidez si cet équipement n’est pas nativement compatible avec Google Assistant.

      • Nicolas dit :

        Je possède une télé connectée dont l’entité id est media_player.samsung_led481_ue48h6400.
        J’ai donc modifié mon body sur IFTTT en { « entity_id »: « media_player.samsung_led481_ue48h6400 » }.
        Cependant, rien ne se passe.
        Le mot de passe correspond bien à celui qui est indiqué dans le fichier scripts.yaml ?

      • Nicolas dit :

        Bonsoir,
        Lorsque je vais dans mes applets sur IFTTT, j’ai l’erreur suivante : Unable to make web request: Error: ETIMEDOUT
        Et dans les détails : Ingredients CreatedAt (None)

      • Bonjour,
        Beaucoup de personnes on rencontré ce problème dans les commentaires précédent. La plupart du temps c’est due au fait que les installations ne sont pas accessible de l’extérieur. La première vérification est donc de vérifier que votre requête marche de l’extérieur (en vous connectant sur un autre réseau que le votre). Pour vous simplifier la tâche vous pouvez utiliser des outil comme postman.

        Bonne journée

      • Nicolas dit :

        Bonjour,

        Merci pour votre réponse.
        J’utilise déjà Postman en parallèle. Lorsque je lance la requête, il m’indique 404 No allowed.
        Je ne comprends pas quand vous dites se connecter à un autre réseau. L’ensemble du matériel doit être sur le même réseau pour que ça fonctionne ?

      • IFTTT étant un service cloud, donc sur un autre réseau, il est nécessaire que vos installations soit accessible de l’extérieur. Si vous travaillez avec Home Assistant vous devriez trouver les instructions nécessaire dans ce dossier https://devotics.fr/series/domotique-sur-mesure/ Sinon il faudra vous rapprochez de la documentation de vos appareils et/ou système pour tenter de les ouvrirs sur l’extérieur.

      • Nicolas dit :

        J’ai créé mes règles de Nat :
        La règle « Google Home » redirige le protocole TCP pour les flux Internet ayant le port 80 de la bbox vers le port 80 du périphérique @ip_de_mon_PC.
        La règle « Google Home » redirige le protocole TCP pour les flux Internet ayant le port 443 de la bbox vers le port 8123 du périphérique @ip_de_mon_PC.

        J’ai également une BBOX. J’utilise NO-IP. Mon dyndns est webnicolas.ddns.net, il fonctionne car je l’utilise pour accéder à ma box depuis l’extérieur.

        Que dois-je mettre dans l’URL sur IFTT de mon applet ?
        http://webnicolas.ddns.net/api/services/media_player/volume_down?api_password=monmotdepasse

        Comment puis-je tester avec postman ?

        Quand je lance https://webnicolas.ddns.net/api/services/media_player.samsung_led481_ue48h6400/volume_down?api_password=monmotdepasse,
        j’obtiens {« exception »:{« domain »: »unknown », »code »: »404″, »errors »:[{« name »: » », »reason »: »Operation not found »}]}}

        Merci de votre patience, si je suis un cas désespéré ou que je comprends rien au fonctionnement dites-le moi, ne vous prenez pas la tête pour moi 🙂

      • Bonjour,
        Pas de problème, ce n’est pas un sujet simple quand on débute. La première étape est de vérifier que vos api sont bien accessible. Pour ce faire testez l’adresse http://webnicolas.ddns.net/api/?api_password=monmotdepasse vous devrez avoir le retour suivant {
        message: « API running. »
        }. Si ce n’est pas le cas vous devez avoir un problème dans votre fichier de configuration et vos APIs ne sont pas disponible. Ce n’est donc pas la peine d’aller plus loin tant que ce n’est pas réglé. Ensuite, vous pouvez voir plus en détail comment bien utiliser vos api ici. I y a des exemple avec postman qui devrait vous aidez. Une fois toutes ces étapes maîtrisé IFTTT devrait être très simple à configurer.

      • Nicolas dit :

        Bonsoir,
        J’ai bien le message « API running » qui s’affiche mais qu’en interne. Dès que je remplace par mon webnicolas.ddns.net, ça m’indique ce site est indisponible, comme si mon NAT ne fonctionnait pas, alors que j’ai mis les mêmes infos que vous.

      • Bonjour,
        On avance 🙂 je ne suis pas sur que vos régles de NAT soit le problème car je me suis permis de tester votre URL hier et j’ai reçu une erreur qui semblait générer par Hass. Je pense donc que c’est juste un problème de paramétrage du composant http. Je te laisse regarder ici https://home-assistant.io/components/http/ le pint important est l’attribut base_url, dans un premier temps vérifiez que vous l’avez bien renseigné avec votre non de domaine.

      • Nicolas dit :

        Bonjour,
        J’ai vu ce paramètre en plus. J’ai mis mon nom de domaine, mais au démarrage de hass, il me mettait des erreurs de config dans le fichier configuration.yaml, du coup je me suis dit c’est pas ça.
        Je teste de nouveau ce soir.
        Encore merci.

  27. Nicolas dit :

    Bonsoir,
    J’ai ajouté base_url: webnicolas.ddns.net:8123 dans le fichier de conf.
    Lorsque je lance http://webnicolas.ddns.net/api/?api_password=motdepasse depuis postman j’ai aucun message qui s’affiche.
    J’ai lancé http://192.168.1.81:8123/api/?api_password=motdepasse j’ai bien le message API running
    Dès que j’enlève le port 8123, même fonctionnement que webnicolas.ddns.net, il y aucun message qui s’affiche.
    J’ai l’impression qu’il ne prend pas le port correctement.

    • C’est peut être une incohérence entre votre règle de NAT et le paramétrage du base_url.
      Normalement, vous devez y indiquer l’url qui permet d’accéder à votre installation depuis l’extérieur. Du coup si vous avez fait une règle de NAT du type 443 -> 8123, la valeur correcte est webnicolas.ddns.net et non webnicolas.ddns.net:8123

      • Nicolas dit :

        Bonsoir,
        Je n’ai pas encore installé de certificat, j’ai juste ajouté d’avance la règle de NAT 443 -> 8123
        Ma seconde règle de NAT que ce soit 80 -> 80 ou 80 -> 8123, ça ne fonctionne pas plus (tout en supprimant le 8123 dans le fichier conf).

      • Nicolas dit :

        Suite à ma dernière réponse indiquée il y a quelques minutes, je vous ai envoyé sur l’adresse mail devotics.blog@gmail.com mon fichier de log quand je lance hass.

  28. robine amand dit :

    bonjour je cherche a faire fonctionner ma lumiere avec la recette location et ewelink mais ca ne fonctionne pas. j ai essaye avec d autre recette avec location mais ca ne fonctionne pas auriez vous une idée pourquoi ca ne fonctionne pas

  29. Yan dit :

    Bonjour,

    Merci pour ce Tuto et globalement pour votre site qui vulgarise très bien la domotique.

    J’ai réussi à piloter le son de ma télé via mon équipement (télé Samsung connecté, Ampli – CEC, freebox, ifttt, home assistant, Google home).

    Par contre lorsque je teste l’API pour changer de chaîne via postman, j’ai juste l’affichage d’information du programme en cours qui s’affiche sur la télé…

    Ma question est simple : est ce que votre add-on de changement de chaîne fonctionne avec la freebox (ou une box au sens large) ? Si non, existe-t-il des add-on qui auraient été développés pour HASS pour piloter la freebox comme c’est le cas pour jeedom…

    Merci pour votre aide.

    • Bonjour,

      Merci de votre commentaire 🙂

      Concernant la compatibilité de l’add-on c’est un petit soft que j’ai développé pour un besoin personnel. Je n’ai pas beaucoup de retour et je ne l’ai testé qu’avec ma télévision. Je ne peu donc pas répondre catégoriquement à la question… Cependant, il n’est qu’une sorte de raccourcit qui s’appui sur la fonction « select source » du composant media player d’Home Assistant. De ce fait, si via votre dashboard Home Assistant vous réussissez à changer de chaîne l’add-on devrais fonctionner. Pouvez-vous me tenir au courant de vos tests et si vous arrivez à changer les chaîne via le dashboard mais pas via l’add-on pourriez-vous me communiquer votre version d’Hass.io car le problème vient peu-être une fonctionnalité d’hass.io qui a changé.

      Merci, bonne journée.

  30. HUBERT Emmanuel dit :

    Bonjour, tout d’abord merci pour toutes ses informations, moi j’aurais une question à vous poser, avec une APK dans mon téléphone, je peut changer les chaînes de SFR évolution, je voudrais savoir si nous pouvons recopier cette apk pour l’intégrer dans mon Google Home et ainsi changer les chaînes avec notre voix, merci d’avance pour votre réponse.

  31. Jérémy dit :

    Bonjour,
    Avant tout, merci pour ce tutoriel très clair. Cependant, en voulant créer une tigger pour monter le son, je rencontre le problème suivant:
    Au moment de cliquer sur le bouton « Create Tigger », le tigger se créer et ne me propose pas de selectionner webhook. Qu’est-ce que j’ai pu oublié dans les étapes ?

    Merci

    • Bonjour,
      Êtes-vous certain de ne pas avoir fait de faute de frappe ou d’être allé trop vite sur une étape ? Je viens de tester pour vérifier que IFTTT proposait toujours cette option et je retrouve bien les webhooks. Aprés la première étape qui est la sélection de Google Assistant pour le IF, vous devriez avoir, juste après avoir cliquez sur That, une liste de service qui devrais comprendre les webhooks. Je met un imprim écran de ce que j’ai de mon côté juste aprés avoir cliquez sur that et avoir fait une recherche sur le mot clés web.

      ifttt trigger webhooks

      Pouvez-vous refaire les manipulation et me tenir au courant ?

  32. Gaëtan Klein dit :

    Bonjour,

    Merci pour vos tutos, vous faites un excellent travail !
    Malgré tout j’ai un problème que je ne comprends pas. Quand je passe par postman, il augmente bien le son. Par contre quand je passe par IFTTT, il reconnait bien les ordres mais il n’y a aucune action. Je vois pas ce que j’ai loupé. Auriez-vous une idée ?

    Merci pour votre aide

  33. Gaëtan Klein dit :

    Dans la partie Activity, j’ai cette erreur Unable to make web request: Error: ETIMEDOUT. Sachant que le home assistant est installé sur NAS Synology via docker.

    • Bonjour,
      Avez vous tentez d’effectuer la requête postman via un autre réseau? Si cela ne fonctionne pas Il est possible que vous rencontriez un problème d’ouverture de port.
      L’autre piste sans plus d’information pourrait être une configuration de timeout un peu basse. Du coup en local pas de soucis mais si votre réseau est un peu faible ou qu’IFTTT met un peu de temps à réagir vous pouvez avoir un blocage de ce type.

      Enfin dernière possibilité, vous avez un soucis au niveau de votre certificat.

  34. Sidia dit :

    Bonjour, votre méthode fonctionne-t-elle avec les box sfr ?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.