Eedomus & Legrand OpenWebNet

Discussion et échanges de scripts pour la box eedomus

Eedomus & Legrand OpenWebNet

Messagepar alex928gt » 02 Mars 2016 00:39

Bonsoir à tous,

Je suis équipé de modules de mesure de consommation d'énergie Legrand/Bticino F520 connectés à des centralisateurs IP F524 et une passerelle web F455.

Je peux récupérer l'info des consos en me connectant aux centralisateurs IP ou grâce à une petite appli fournie par Legrand mais je souhaiterais aussi pouvoir les intégrer directement dans mon environnement eedomus.

Je comprends que la communication avec la passerelle web Legrand se fait grâce au protocole OpenWebNet qui permet facilement de récupérer la conso instantanée ou cumulée d'un tore, en php ou en python par exemple (cf petit exemple de code que j'ai trouvé sur le net ci-dessous).

Cependant ce protocole nécessite apparemment l'utilisation de socket à la place des requêtes http utilisées en standard dans les scripts eedomus.

Pourriez-vous svp m'indiquer les solutions qui s'offrent à moi pour remonter cette info dans la eedomus, par exemple sous forme de courbes de conso à côté des courbes de température de mes sondes Oregon ?

J'ai pensé aux pistes suivantes mais suis ouvert à toute idée :

- la fonction netsend disponible sur la eedomus+ permettrait sans doute d'envoyer une requête vers ma passerelle Bticino mais comment récupérer et stocker la réponse de la passerelle ?
- passer par une autre passerelle (jeedom/myombox/raspberry/PC...) qui ferait la jonction entre les protocoles php/http de la eedomus et le OpenWebNet

Sinon, la gestion des sockets dans les scripts est-elle attendue dans une prochaine release eedomus ?

Un grand merci d'avance à tous pour votre aide
Alex





<?php


$gatewayaddr = "x.x.x.x";

$gatewayport = "20000";

$message = "*#1*0##\n"; //inquire about lights

if(!($sock = socket_create(AF_INET, SOCK_STREAM, 0)))

{ $errorcode = socket_last_error();

$errormsg = socket_strerror($errorcode);

die("Couldn't create socket: [$errorcode] $errormsg \n");

} echo "Socket defined. ";

//Connect socket to remote server

if(!socket_connect($sock , $gatewayaddr , $gatewayport))

{ $errorcode = socket_last_error();

$errormsg = socket_strerror($errorcode);

die("Could not connect: [$errorcode] $errormsg \n"); } echo "Connection OK. ";

//Send the message to the server

if( ! socket_send ( $sock , $message , strlen($message) , 0))

{ $errorcode = socket_last_error();

$errormsg = socket_strerror($errorcode);

die("Could not send data: [$errorcode] $errormsg \n");

} echo "Message sent OK. ";

//Receive reply from server, remove message delimeters, beautify results

if(socket_recv ( $sock , $buf , 2045 , MSG_WAITALL ) === FALSE)

{ $errorcode = socket_last_error();

$errormsg = socket_strerror($errorcode);

die("Could not receive data: [$errorcode] $errormsg \n");

} echo "Message received OK. \n";

echo str_replace("##","## ",str_replace("*#*1##","",$buf));

?>
alex928gt
 
Messages : 30
Inscription : 02 Mars 2016

Re: Eedomus & Legrand OpenWebNet

Messagepar Havok » 02 Mars 2016 10:25

Et bien soit tu fais appel à un capteur http (ton script renvoyant la valeur que tu veux stocker), soit tu utilises, toujours en php, l'API eedomus pour enregistrer differentes valeurs dans des états. Mais dans les deux cas il te faut un serveur http/php autre que la eedomus.
Havok
 
Messages : 702
Inscription : 06 Fév 2015

Re: Eedomus & Legrand OpenWebNet

Messagepar alex928gt » 03 Mars 2016 00:42

Merci beaucoup pour ta réponse. Que conseillerais-tu comme serveur pour que ça soit le plus simple et robuste possible, tout en restant pas trop coûteux ?

Merci !
alex928gt
 
Messages : 30
Inscription : 02 Mars 2016

Re: Eedomus & Legrand OpenWebNet

Messagepar bubu » 06 Mars 2016 09:16

soit un petit Raspberry pas cher mais il te faudra passer un peu de temps a le configurer.
(il y a plein de tutos sur le sujet)
Soit un NAS Synology par ex qui fait plein d'autres choses ( un peu de temps aussi à configurer)
bubu
 
Messages : 134
Inscription : 05 Sep 2014

Re: Eedomus & Legrand OpenWebNet

Messagepar alex928gt » 20 Mars 2016 11:19

Bonjour bubu,

Merci beaucoup pour ta réponse et désolé pour le délai, je travaillais sur la partie volets avec d'autres choix cornéliens à faire.

J'ai déjà des NAS QNAP que je pourrais effectivement utiliser mais je les éteins par exemple quand je pars en congés donc il me faudrait une solution plus permanente.

Je vais donc effectivement partir sur une solution raspberry sur laquelle on peut apparemment installer une solution de type grasshopper qui devrait pouvoir m'être utile.

Merci encore et bonne journée
Alex
alex928gt
 
Messages : 30
Inscription : 02 Mars 2016


Retour vers Scripts & Périphériques du store

Qui est en ligne ?

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