Commandes à Distance : IFTTT

Depuis le 8 octobre 2020, IFTTT devient payant et la version gratuite n’autorise plus que 3 « recettes ». Conséquence immédiate pour moi : je n’utilise plus IFTTT. Les règles pour l’envoi des requêtes http décrites dans cet article sont cependant toujours valables mais en utilisant un autre logiciel (voir cet article).

On a oublié de couper le chauffage mais on est à 800km ! Comment faire ? Dans cet article, nous allons explorer quelques possibilités.

IFTTT : Première partie de cet article qui sera enrichi progressivement.

IFTTT est un outil très puissant et aux innombrables possibilités. Le principe que j’utilise pour piloter Domoticz depuis IFTTT est d’envoyer des requêtes json à Domoticz (depuis l’application IFTTT sur un smartphone) en utilisant le canal Webhooks (anciennement canal Maker).

Voici un exemple de requête envoyée par IFTTT à Domoticz pour stopper l’alarme :

http://domo.maison.com:33333

/json.htm?username=cm9iZXJ0&password=Ym9i

&type=command&param=switchlight&idx=55&switchcmd=Off

Décortiquons cette commande :

http://domo.maison.com:33333 c’est la partie qui va permettre de trouver votre Domoticz dans le réseau internet.

http : C’est l’identification du protocole utilisé, ne pas utiliser https qui génère parfois des erreurs.

domo.maison.com : C’est l’adresse dns qui va permettre de trouver votre box, en interrogeant les serveurs dns (dont ceux de ChangeIP) qui connaissent votre adresse IP externe réelle. Remplacez ce dns exemple par le votre.

33333 : C’est le numéro du port IP qui permet d’atteindre votre Domoticz dans votre réseau local. Il faut dans votre box faire un NAT (Network Address Translation) qui indique que les demandes pour ce port sont à envoyer vers votre serveur Domoticz. Remplacez ce port exemple par celui de votre choix en accord avec votre règle NAT.

/json.htm?username=cm9iZXJ0&password=Ym9i C’est la partie identification de la commande avec le username et le password.

json : indique que l’on va utiliser le format JSON (JavaScript Object Notation) pour échanger nos données.

cm9iZXJ0 : C’est le username de Domoticz codé en Base64 « robert » dans l’exemple.

Ym9i : C’est le mot de passe de Domoticz codé en Base64 « bob » dans l’exemple.

Base64 site qui permet le codage/décodage en Base64 que vous devez utiliser pour coder vos user/mot de passe.

&type=command&param=switchlight&idx=55&switchcmd=Off C’est la commande json que l’on veut envoyer à Domoticz.

55 : C’est l’IDX du switch dont on veut changer l’état, ici on le passe à Off pour arrêter l’alarme.

Pour Method, il faut choisir Get

Pour Content Type, choisir text/plain

Pour Body, ne rien mettre

Laisser un commentaire

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