Aller au contenu

Recommended Posts

IPX800 V4 : Pilotage des relais

 

 

Contexte :

 

Après avoir galléré pour trouver un Tuto sur le Forum expliquant comment piloter un IPX800 V4, je partage avec vous un exemple d'usage de l'IPX.

 

Mon exemple est de pouvoir modifier l'état d'un des relais de l'IPX qui active le relais d'une sirène d'alarme.

 

Je suis parti de l'exemple de @Moicphil  Utiliser Une Sirène Extérieure Filaire Avec La Hc2 / Hclite , mais dans son cas il utiliser un IPX800 V3 alors moi j'utilise un IPX800 V4 et pour lequel les commandes ne sont pas les mêmes.

 

Voici un extrait de la documentation de l'API de l'IPX800V4 :

 

L'ensemble de l'API est protégée par une clef secrète. Par défaut, cette clef est : « apikey ». Elle est bien sur paramétrable et il est également possible de supprimer cette protection.
Lors de l'utilisation de l'API JSON, il sera nécessaire de renseigner cette clef à chaque commande.
Pour cela, dans tous les cas, il vous suffira de la placer en premier argument de la manière suivante : « key=apikey ».
Les requêtes JSON commenceront donc de la manière suivante : « http://IPX800_V4/api/xdevices.json?key=apikey&... ». Elles pourront également comprendre plusieurs commandes à la fois (même si cela aura un impact sur la réponse).

 

  • Exemple 1 : commande qui met le relais 01 de l'IPX800V4 à 1 (fonction SetR=)

http://192.168.0.10/api/xdevices.json?key=apikey&SetR=01

 

  • Exemple 2 : commande qui met le relais 01 de l'IPX800V4 à 0 (fonction ClearR=)

http://192.168.0.10/api/xdevices.json?key=apikey&ClearR=01

 

Exécution de ces commandes sous son explorateur, avec le résultat suivant :

{
"product":
"IPX800_V4",
"status":
"Success"
}

Transposition de ces commandes en LUA dans un VD qui déclenche/arrête la Sirène :

 

  • Bouton On (déclenche la sirène) :
local _deviceIp = fibaro:get(fibaro:getSelfId(), 'IPAddress') -- get the adress off ipx800V4
HC2 = Net.FHttp(_deviceIp)
response = HC2:GET("/api/xdevices.json?key=apikey&ClearR=01")
  • Bouton Off (arrête la sirène) :
local _deviceIp = fibaro:get(fibaro:getSelfId(), 'IPAddress') -- get the adress off ipx800V4
HC2 = Net.FHttp(_deviceIp)
response = HC2:GET("/api/xdevices.json?key=apikey&SetR=01")

Documentations de l'IPX800 V4 :

 

 

Modifié par MAM78
  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Très bonne idée de partager ma doc de lAPI de l'IPX 800 V4 ;-)

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Et est-ce que ça marche quand l'interface est protégée par mot de passe ?

Partager ce message


Lien à poster
Partager sur d’autres sites

En fait le mot de passe correspond au paramètre : key=apikey

 

apikey étant le mot de passe par défaut qui est modifiable dans l'IPX.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

Possesseur aussi d'une IPX 800 V4, auriez vous la commande pour récupérer dans une variable  la valeur des compteurs depuis l'ipx800 V4 ?

Merci!
AM.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour @MAM78,

 

je crois que le fichier que tu as mis est celui de l'IPX800V3

 

 

@SosAlaide, pour la valeur des compteurs, tu utilises le code partagé par MAM.

Faut regarder le fichier de l'API de l'IPX

Je n'en ai pas mais en gros :

  - tu recuperes les valeurs de tes compteurs

  - puis un

     local valeurcompteur = ...

 - puis :

fibaro:setglobal("nomdevariable", valeurcompteur)

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour @MAM78,

 

possesseur d'un ipx 800 v4, je parviens comme toi à activer et désactiver les relais de l'ipx800 depuis la hc2...

Mais je n'arrive pas à faire l'inverse en envoyant un simple push de l'ipx800 vers la hc2...

 

J'utilise pourtant la bonne syntaxe du style api/callAction?deviceID ......

j'ai essayé en renseignant le mot login et mot de passe mais rien n'y fait..

 

Bien sûr la commande fonctionne depuis un navigateur internet en lançant la commande http://192.168.1.55/api/callAction...

 

Si tu utilises ce genre de push ,peux tu me donner tes paramètres que je les compare au miens?... 

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello @oldelvis

 

Pour ton info, je viens d'intégrer la fonction push sur mon IPX (avec un détecteur de mouvements) pour inter-agir avec un VD qui me donne l'état de détection d'un mouvement.

 

Je vais très prochainement rédiger un Tuto expliquant le fonctionnement.

 

J'ai encore quelques tests à faire, puis je vous communiquerais le résultat de mon travail.

 

A très bientôt ...

 

Modifié par MAM78
  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Super MAM :-)

Envoyé de mon Nexus 5X en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

@MAM78
Beau travail..
J'avais réussi à faire fonctionner le mode push sur l ipx800..
C'était juste une erreur de syntaxe.. Pas toujours bien documenté sur les forums...
Merci de combler ce manque avec ce tuto..
J'utilise, comme toi, les sonos pour les annonces vocales dans une scène "alarme de nuit" qui m'indique la zone d intrusion sur le sonos situé à côté de mon lit...

J'utilise aussi les sonos pour avertir d'une température élevée dans telle ou telle pièce avec un message sur un sonos précis en fonction du mode nuit ou jour : si c'est la nuit, c'est le sonos du lit qui parle sinon, ce sont les autres de la maison en journée..

Envoyé de mon SM-G950F en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

×