Statut IPX800

Capteurs et actionneurs HTTP

Statut IPX800

Messagepar cbek » 29 Jan 2013 18:49

Bonjour à tous,

Mes volets roulants sont pilotés par des cartes IPX800.
J'ai aussi connecté mes cartes IPX800 à mon eedomus pour piloter mes volets (par exemple à la tombée de la nuit).
J'aimerai pouvoir mettre à jour le statut des volets (ouvert/fermé) sur l'eedomus soit avec un capteur HTTP soit avec un push depuis l'IPX.

Avez-vous déjà fait cela ?
Pouvez-vous m'aider ?

Merci,
Cyril
cbek
 
Messages : 5
Inscription : 29 Jan 2013

Re: Statut IPX800

Messagepar scabanes1975 » 30 Jan 2013 16:42

Salut,

j'ai réussi à le faire à partir d'un capteur Http.
il faut créer un nouveau périphérique "capteur Http"
tu renseignes la pièce, le nom etc...
dans le champ "URL de la requete", tu mets "http://adresse ip de ton ipx/status.xml"
des le chemin xpath, tu mets par ex: "//led9" (pour récupérer l'état du relais 8, attention ca décale de 1 vu que ca commence à led0)
tu choisis la fréquence qui te vas
ensuite il faut créer une règle qui met à jour l'état de ton périphérique qui est sur le relais de l'ipx en fonction de l'état du capteur http. il faut 2 règles, une pour le On, une pour le Off (ou ouvert et fermé) . Perso j'ai créé une macro qui couple le premier relais au bout d'une minute en cas qu'il y ai un jour une fin de course qui merde)
si tu as trouvé plus rapide dis le moi, je n'ai trouvé que cette solution.

Au niveau du push, c'est possible, il faut lire la doc de l'API de l'eedomus (dans l'aide) et construire l'url qu'il faut, j'ai pas encore essayé
voila
scabanes1975
 
Messages : 43
Inscription : 29 Jan 2013

Re: Statut IPX800

Messagepar cbek » 30 Jan 2013 21:03

Merci pour ton aide et pour ta réponse mais j'ai quelques questions :

scabanes1975 a écrit:ensuite il faut créer une règle qui met à jour l'état de ton périphérique qui est sur le relais de l'ipx en fonction de l'état du capteur http.

J'avais bien cette idée en tête mais :
1- Il faut une conjonction de 2 relais pour gérer un volet avec l'IPX
2- Tes règles vont activer tes actionneurs HTML et pas seulement modifier leur statut, non ?

Merci,
Cyril
cbek
 
Messages : 5
Inscription : 29 Jan 2013

Re: Statut IPX800

Messagepar scabanes1975 » 31 Jan 2013 21:39

salut,
en fait pour ouvrir par ex tu envoi le On du relais 1, et le relais 2 sur montée. pour mettre sur stop, je coupe juste le 1. je n'ai pas trouvé comment modifier l'état de l'actionneur alors au pire si j'ouvre un volet déjà ouvert ca vas pas changer grand chose, mais l'état sur l'eedomus est correct.
si quelqu'un sait comment modifier juste l'état ca m'interresse...
scabanes1975
 
Messages : 43
Inscription : 29 Jan 2013

Re: Statut IPX800

Messagepar DjMomo » 01 Fév 2013 17:22

scabanes1975 a écrit:tu mets par ex: "//led9" (pour récupérer l'état du relais 8, attention ca décale de 1 vu que ca commence à led0)


Si ca commence à "led0", le relais 8 sera alors accessible via "led7" et non "led9" ;)
Moi ? C'est Fabien
--------------------------------------------
Mon Github : http://www.github.com/DjMomo/
DjMomo
 
Messages : 1121
Inscription : 26 Sep 2012

Re: Statut IPX800

Messagepar support_eedomus » 01 Fév 2013 17:55

Bonjour,

Au besoin, la syntaxe du XML récupéré par status.xml est disponible sur cette nouvelle page de documentation : http://doc.eedomus.com/view/Eedomus_et_IPX

Cordialement
Image L'équipe eedomus
http://www.eedomus.com
support_eedomus
 
Messages : 561
Inscription : 09 Jan 2012
Localisation : France

Re: Statut IPX800

Messagepar scabanes1975 » 01 Fév 2013 20:12

DjMomo a écrit:
scabanes1975 a écrit:tu mets par ex: "//led9" (pour récupérer l'état du relais 8, attention ca décale de 1 vu que ca commence à led0)


Si ca commence à "led0", le relais 8 sera alors accessible via "led7" et non "led9" ;)



oui exact, pourquoi pas commencer à led1 d'ailleurs ? trop simple ? par contre en M2M ca commence bien à 1...
scabanes1975
 
Messages : 43
Inscription : 29 Jan 2013

Re: Statut IPX800

Messagepar DjMomo » 01 Fév 2013 21:14

Codage des leds sur 3 bits, de 0 à 7.
Moi ? C'est Fabien
--------------------------------------------
Mon Github : http://www.github.com/DjMomo/
DjMomo
 
Messages : 1121
Inscription : 26 Sep 2012

Re: Statut IPX800

Messagepar cbek » 03 Fév 2013 15:14

Bonjour à tous,

Contrairement à ce qui est indiqué sur la page http://doc.eedomus.com/view/Eedomus_et_IPX, il est bien possible d'informer immédiatement l'eeDomus lorsqu'une entrée IPX change de valeur !

Voici un exemple pour un Volet piloté par l'IPX

L'entrée numérique N°1 permet de faire descendre le Volet :
Image
Cliquez sur l'image pour la voir en taille réelle

L'entrée numérique N°2 permet de faire descendre le Volet :
Image
Cliquez sur l'image pour la voir en taille réelle

En utilisant le Push sur les 2 entrées avec les paramètres suivants :
Sur l'entrée N°1 :
Code : Tout sélectionner
http://api.eedomus.com/set?action=periph.value&periph_id=<ID du périphérique>&value=0&api_user=<User>&api_secret=<Mot de Passe>

Image
Cliquez sur l'image pour la voir en taille réelle

Sur l'entrée N°2 :
Code : Tout sélectionner
http://api.eedomus.com/set?action=periph.value&periph_id=<ID du périphérique>&value=100&api_user=<User>&api_secret=<Mot de Passe>

Image
Cliquez sur l'image pour la voir en taille réelle

L'actionneur HTTP dispose de 2 valeurs :
0 = Volet Fermé
100 = Volet Ouvert
Image
Cliquez sur l'image pour la voir en taille réelle

Lors de l'utilisation du Bouton qui commande le volet, l'eeDomus est immédiatement informée !

Remarque :
Par contre, l'eeDomus actionne immédiatement à son tour les ordres HTTP vers l'IPX.

L'idéal serait donc de disposer d'une nouvelle API qui serait de la forme :
Code : Tout sélectionner
http://api.eedomus.com/set?action=[color=#FF0000]periph.status[/color]&periph_id=<ID du périphérique>&value=<Valeur>&api_user=<User>&api_secret=<Mot de Passe>

Cette API (action=periph.status) permettrait de mettre à jour la valeur de l'actionneur HTTP sans pour autant déclencher les ordres HTTP. Cela ne devrait pas être ultra compliqué à développer et cela serait très très utile !!!
Si l'équipe eeDomus passe pas là...

Cyril B.
cbek
 
Messages : 5
Inscription : 29 Jan 2013

Re: Statut IPX800

Messagepar cbek » 11 Fév 2013 12:56

Bonjour à tous,

L'équipe eeDomus a, une nouvelle fois, montrée à quel point elle est à l'écoute de ses clients :D
Afin de modifier le statut d'un actionneur sans lancer l'action, l'API a été modifiée.

Un nouveau paramètre optionnel a été ajouté :
« &update_only=1 »
En ajoutant ce paramètre à la requête, l'eeDomus sera informé d'un changement de l'état d'un actionneur sans que l'actionneur ne se déclenche.

Ceci est particulièrement utile pour le push depuis l'IPX !

Par rapport à mon précédent message, le code à utiliser devient donc respectivement :
Code : Tout sélectionner
http://api.eedomus.com/set?action=periph.value&periph_id=<ID du périphérique>&value=0&api_user=<User>&api_secret=<Mot de Passe>&update_only=1

et
Code : Tout sélectionner
http://api.eedomus.com/set?action=periph.value&periph_id=<ID du périphérique>&value=100&api_user=<User>&api_secret=<Mot de Passe>&update_only=1


Ainsi, lorsqu'un volet est commandé en utilisant un bouton (connecté à l'IPX), l'eeDomus est instantanément informée !

Le champ des possibles est bien plus grand que le simple exemple du volet !!!

Encore MERCI à l'équipe eeDomus !

Cyril B.
cbek
 
Messages : 5
Inscription : 29 Jan 2013

Re: Statut IPX800

Messagepar jolafrite » 07 Août 2013 11:52

Bonjour,
Effectivement ça marche bien, par contre, j'ai voulu modifier api.eedomus.com par @IP/api mais ça ne fonctionne pas...

J'ai fait quelques tests et en utilisant le lien http://@IP/api/set?action=periph.value& ... date_only= dans mon navigateur web ça fonctionne. C'est un bug de l'IPX, de l'Eedomus ou ai-je loupé quelquechose :?:
jolafrite
 
Messages : 18
Inscription : 23 Avr 2013
Localisation : Bas-Rhin

Re: Statut IPX800

Messagepar scabanes1975 » 26 Sep 2013 19:07

salut,
j'ai fait quelques test et ca fonctionne chez moi
il fait rajouter /api devant le /set sur la ligne du push, pas dans l'adresse du serveur et voila
a+
scabanes1975
 
Messages : 43
Inscription : 29 Jan 2013

Re: Statut IPX800

Messagepar jolafrite » 05 Oct 2013 21:32

Je me sens bête! :roll:
J'ai mis le /api/ dans la partie push au lieu de l'adresse du serveur et ça fonctionne maintenant très bien! :D
Merci!
jolafrite
 
Messages : 18
Inscription : 23 Avr 2013
Localisation : Bas-Rhin

Re: Statut IPX800

Messagepar Pm03 » 16 Déc 2013 15:19

Bonjour,

Combien de caractères avez-vous pour votre login et mot de passe API?

La commande push de l'IPX800 ne m'autorise que 126 caractères, il m'en faudrait 129 pour passer la commande ci-dessus...
Mon login API fait 6 caractères, le mot de passe 16 caractères

"https://api.eedomus.com/set?action=periph.value&periph_id=xxxxx&value=0
&api_user=xxxxxx&api_secret=xxxxxxxxxxxxxxxx&update_only=1
"

Dois-je demander à eedomus un mot de passe plus court...?

Merci,

Philippe
Pm03
 
Messages : 18
Inscription : 23 Nov 2013

Re: Statut IPX800

Messagepar DjMomo » 16 Déc 2013 19:06

Pm03 a écrit:Dois-je demander à eedomus un mot de passe plus court...?


Où à cge-electronics la possibilité d'avoir des URL de longueur > 126 caractères.
Moi ? C'est Fabien
--------------------------------------------
Mon Github : http://www.github.com/DjMomo/
DjMomo
 
Messages : 1121
Inscription : 26 Sep 2012

Re: Statut IPX800

Messagepar Pm03 » 16 Déc 2013 20:57

Merci pour la réponse. Je vais voir s'ils ont une solution mais ça m'a l'air loin d'être gagné... j'ai trouvé des messages de 2010 sur le sujet. Certains proposent de passer par des sites tels que shorturl.com, mais je ne veux pas transmettre mon login/pwd sur un site externe...

Sinon j'ai un NAS Synology, il faudra que je regarde s'il y a moyen de passer par lui pour avoir une conversion de requête HTTP.

Vu qu'il ne me manque que 3 ou 4 caractères, un mot de passe un peu plus court ne serait pas mal !
Pm03
 
Messages : 18
Inscription : 23 Nov 2013

Re: Statut IPX800

Messagepar DjMomo » 16 Déc 2013 22:22

Vu que tu as un serveur web chez toi, c'est pas trop compliqué. Un fichier PHP inaccessible depuis l'extérieur (via un .htaccess) et c'est jouable.
Je te poste un exemple demain.
Moi ? C'est Fabien
--------------------------------------------
Mon Github : http://www.github.com/DjMomo/
DjMomo
 
Messages : 1121
Inscription : 26 Sep 2012

Re: Statut IPX800

Messagepar Pm03 » 16 Déc 2013 22:56

Super, merci d'avance !
Pour info je n'y connais quasiment rien en linux / programmation php, http ou autres... mais il n'est jamais trop tard pour commencer !
Pm03
 
Messages : 18
Inscription : 23 Nov 2013

Re: Statut IPX800

Messagepar DjMomo » 16 Déc 2013 23:33

Vite fait :

login_eedomus.php
Code : Tout sélectionner
<?php
// Saisir les API user et secret relatifs à son compte, entre guillemets
$api_user = "xxxxxx";
$api_secret = "xxxxxxxxxxxxxxxx";

// Ne pas toucher à la suite
$query = $_SERVER['QUERY_STRING'];
preg_match_all("/(get|set)&(.*)/", $query, $matches);
$url = "https://api.eedomus.com/".$matches[0]."?".$matches[1];
header('Location: '.$url);
?>


Cela est à tester, mais en résumé, le fichier stocke les API user et secret ce qui évite d'avoir à les saisir ailleurs et de les passer dans des URL. Si les NAS est ouvert vers Internet, il est conseillé de limiter les accès du dossier aux seules machines du LAN.

Utilisation :
Code : Tout sélectionner
http://IP_NAS/chemin_vers_le_dossier_du_fichier/login_eedomus.php?set&action=periph.value&periph_id=xxxxx&value=0&update_only=1

ou encore
Code : Tout sélectionner
http://IP_NAS/chemin_vers_le_dossier_du_fichier/login_eedomus.php?get&action=auth.test


Les 2 exemples d'utilisations permettent de fixer la valeur du périphérique et de tester l'authentification.
Moi ? C'est Fabien
--------------------------------------------
Mon Github : http://www.github.com/DjMomo/
DjMomo
 
Messages : 1121
Inscription : 26 Sep 2012

Re: Statut IPX800

Messagepar Pm03 » 17 Déc 2013 22:07

Bonsoir,

J'ai crée le fichier et mis sur le nas, j'ai essayé de le lancer via une requête directe :
"http://192.168.1.xx/eedomus/login_eedomus.php?get&action=auth.test"

mais j'ai le message d'erreur suivant :
"Not Found
The requested URL /Array was not found on this server.
"

et l'URL en haut indique https://api.eedomus.com/Array?Array" (donc il trouve bien le fichier php?)

Je n'ai pas trouvé la solution...
Pm03
 
Messages : 18
Inscription : 23 Nov 2013

Suivant

Retour vers Requêtes HTTP

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 30 invité(s)