Jeedom: Gestion de l’alarme MyFox grâce à IFTTT

19

Depuis un bon bout de temps j’utilisais un script PHP de notre ami Hotfirenet pour lier mon alarme MyFox HC2 à ma box domotique, sur eedomus puis sur la HC2 de Fibaro. Une API officielle est ensuite sortie, mais elle n’était pas parfaite non plus, la box domotique étant obligée d’interroger l’API à intervalle régulier pour connaitre son statut. Avec l’arrivée de nouveaux Channels sur IFTTT, et d’un plugin sur Jeedom, une nouvelle solution toute simple est arrivée, ne nécessitant plus aucun script, puisque MyFox est compatible IFTTT.

De plus, cette méthode est fonctionnelle que vous utilisiez la HC2 de MyFox ou la nouvelle solution Home Security. Cette dernière n’a pas encore d’API officielle, mais dispose d’un Channel IFTTT, ce qui fera bien l’affaire ici.

I. Pré requis

Attention, pour fonctionner votre Jeedom doit être accessible de l’extérieur de chez vous, via les DNS de Jeedom, ou via une redirection sur votre routeur.

Pour commencer, il faudra donc déjà activer le Channel MyFox correspondant à votre solution sur IFTTT.

Ensuite, il faudra activer le Channel Maker:

myfox_ifttt_jeedom_7

Ce Channel permet à IFTTT de recevoir des informations extérieures, mais également d’en envoyer via des requêtes HTTP. Une fois activé, le channel Maker vous donnera une clé, qu’il vous faudra mettre de côté, nous en aurons besoin plus tard:

myfox_ifttt_jeedom_8

Revenons maintenant dans Jeedom, pour aller sur le Market chercher le plugin IFTTT:

myfox_ifttt_jeedom_1

On l’installe, et on n’oublie pas de l’activer:

myfox_ifttt_jeedom_2

On se rend ensuite dans le menu Plugins / Communication / IFTTT, et on ajoute un nouveau périphérique, ici que j’appelle « Alarme MyFox »:

myfox_ifttt_jeedom_3

On l’active, on le rend visible, et on renseigne la clé relevée plus haut sur le channel IFTTT:

myfox_ifttt_jeedom_4

En dessous j’ai ajouté quatre commandes via le bouton « Ajouter une commande » (n’hésitez pas à cliquer pour zoomer).

Les trois premières permettent à Jeedom de piloter l’alarme MyFox. Si vous voulez simplement récupérer l’état de votre alarme, sans laisser la possibilité à Jeedom de la piloter, par mesure de sécurité, vous pouvez vous passer de ces trois commandes.

La quatrième est celle que nous allons utiliser tout de suite, qui permettra de récupérer l’état de l’alarme. On configure la commande en Info / Autre.

Cliquez ensuite sur la roue crantée à droite, sur la ligne de l’Etat. Dans la configuration de la commande, relevez l’URL indiquée, nous en aurons besoin pus haut:

myfox_ifttt_jeedom_5

II. Récupération de l’état de MyFox dans Jeedom

Revenons dans IFTTT, et créons une nouvelle recette. Ici, le déclencheur est donc l’alarme MyFox, si elle passe en mode « armé » (« System is armed »), alors on demande à lancer le channel Maker:

myfox_ifttt_jeedom_6

C’est la configuration de la commande Maker qui est importante ici.

Reprenons l’URL copiée plus haut, qui va être du type

https://monadresseexterne/core/api/jeeApi.php?apikey=23JUT78JFE&type=cmd&id=2688

Il va falloir la corriger pour obtenir une URL de cette forme (on change le type et on ajoute la value):

http://monadresseexterne/core/api/jeeApi.php?apikey=23JUT78JFE&type=ifttt&id=2688&value=Totale

La valeur à la fin sera à adapter en fonction de ce que vous voulez afficher. Evitez juste les espaces et les caractères spéciaux pour éviter tout problème de fonctionnement.

Chez moi, j’ai donc Totale, Partielle, Desactivee, et Alerte, puisqu’ici nous pourrons savoir également quand il y a une intrusion.

Ensuite sélectionnez la méthode GET, et Application Json. Validez, et votre première recette est créée !

Cette recette est à dupliquer 3 autres fois, pour les 3 autres états Partielle, Desactivee, et Alerte. Même méthode que précédemment, il suffit juste de modifier le déclencheur du channel MyFox, et de remplacer la « value » dans l’URL pour obtenir le texte souhaité du côté de Jeedom. A la fin, on a ca:

myfox_ifttt_jeedom_9

III. Pilotage de MyFox par Jeedom

Si on le souhaite, on peut piloter l’alarme depuis MyFox. Certains, par mesure de sécurité, préférerons éviter. Il y a du pour et du contre. En l’intégrant, on peut bénéficier des avantages et interactions de Jeedom: par exemple si Jeedom ne détecte plus aucune présence de la maison, il peut vous envoyer un SMS pour vous demander s’il faut activer l’alarme.

Pour que Jeedom puisse piloter MyFox, il va nous falloir les commandes dans Jeedom, les trois premières que nous avons vu ici:

myfox_ifttt_jeedom_4

L’important, ici, est le nom de chaque évènement donné à chaque commande: MyFox_Total, MyFox_Partiel, MyFox_Desactiver. Vous pouvez utiliser le nom que vous voulez, il faut juste qu’il soit unique sur votre compte IFTTT. Relevez bien les noms que vous avez renseigné. Ensuite, dans IFTTT, on crée une nouvelle recette, avec cette fois en déclencheur Maker. On lui indique le nom de l’évènement à détecter, ici MyFox_Total:

myfox_ifttt_jeedom_10

En action, on utilise alors le channel MyFox, et on demande à activer le système. On enregistre, et c’est fini pour la commande d’activation totale.

On duplique la recette deux autres fois pour les commandes partielle et désactiver, en remplacant bien sûr le nom de l’évènement par celui renseigné dans Jeedom, et en adaptant la commande du channel MyFox. Au final, nous avons trois recettes pour le pilotage de MyFox:

myfox_ifttt_jeedom_11

C’est fini pour la configuration.

IV. Utilisation

Sur le tableau de bord Jeedom, on obtient ce widget:

myfox_ifttt_jeedom_12

Les trois boutons permettent de piloter l’alarme.

En dessous, on affiche l’état de l’alarme, qu’elle soit pilotée par Jeedom, par l’application MyFox, ou par le porte clé de l’alarme, on s’en moque. Gros intérêt par rapport à mon ancienne méthode: pas de tache répétitive devant interroger MyFox toutes les minutes. On active l’alarme, Ifttt en est informé, et envoie l’information à Jeedom. Point.

C’est plus léger, rapide, et efficace. Bien sûr, on y ajoute un service extérieur en intermédiaire, ce qui ne plaira pas à tout le monde. Quoiqu’il en soit la méthode est efficace et tourne depuis plusieurs jours chez moi sans problème.

A noter que cette méthode pour récupérer l’état de l’alarme MyFox peut tout à fait être utilisée pour toute box disposant d’une API: par exemple HC2 Fibaro, eedomus, etc… Le channel Maker est très pratique pour cela !

Partager

19 commentaires

  1. Bonjour Cedric.

    Depuis peut il existe également un plug-in pour contrôler la HC2 disponible pour la V2. Le retour de déclenchement devrait arriver dans une des prochaines mise à jour.

  2. Hello,
    Etrangement pour activer l’alarme IFTTT ca marche bien, par contre quand je veux remonter un changement d’état çà ne marche pas (même en utilisant un channel type notification à la place du maker sur jeedom).
    Ca marche pour vous ? (je ne vois même pas un log de l’action dans ifttt)

  3. Même problème et en plus je n’arrive pas à manipuler l’alarme sur jeedom, j’ai pourtant suivi le tuto à la lettre
    ptêtre que c’est à cause du basculement avec somfy ?

    • Je ne pense pas, ça marchait déjà par avant le basculement.
      J’ai contacté le service client et technique de MyFox / Somfy pour avoir des infos concernant l’API qu’ils ont annoncé il y a plus d’un an. Mes mails sont restés sans réponse…
      Le produit est OK mais je suis très déçu de leur service.

  4. Merci, tu m’as résolue mon prob :) j’écrivais le nom de l’équipement au lieu du nom de l’événement
    Maintenant il me reste plus qu’a faire un scénario par rapport à l’état de l’alarme myfox afin d’activer le mode alarme de jeedom ( enregistrement camera )

  5. Bonjour à tous,

    Le channel Maker ayant quelque peu changé (Webhooks maintenant) je tente de faire remonter l’état de mon alarme Myfox Home Alarm (Somfy Protect) dans Jeedom mais sans succès.
    Sur le channel Somfy Protect je vois bien les événements remontés mais rien sur mon Jeedom.
    Quelqu’un a-t-il réussi à le faire fonctionner avec le channel Webhooks ?
    Merci par avance pour vos réponses

  6. Re bonjour,

    Concernant mon premier message j’ai résolu mon problème, une erreur dans la clé api :-/

    Maintenant l’état remonte bien sur le dashboard :-)

Laisser une réponse

Ne ratez plus aucune news !

Inscrivez vous à notre newsletter, et recevez chaque mois toute l'actualité du blog pour ne plus rien louper: actualité, guides, tutoriaux, concours !

Merci pour votre inscription !