Push on event Ipx800V4 vers jeedom

Bonsoir,
je reviens sur un sujet déjà évoqué sur l’ancien forum. Le fameux push sur « On event » .
J’ai bien fait un scénario sur l’ipx avec l’url donné dans la config du plugin sur jeedom. Dans les logs API sur jeedom j’ai:

[2019-11-25 22:22:18][DEBUG] : Demande sur l'api http venant de : 192.168.1.xxx => {"type":"ipx800v4","apikey":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxx","onvent":"1"}
[2019-11-25 22:22:18][INFO] : Appels de ipx800v4::event()

Mais les widgets ne se mettent pas à jour avant le polling .
Est-ce que quelqu’un utilise avec succès cette fonction et voudrait bien me mettre quelques impressions d’écran coté jeedom et ipx pour que j’arrive enfin à faire fonctionner ce push !
Merci !

Bonjour,
personne pour partager une image de votre config push qui fonctionne?

Bonjour je suis dans la meme situation que toi aujourd’hui. As tu résolu le soucis depuis ton message ?

Le push sur “On event” n’est plus la meilleure façon de faire, vois sur ce fil :

Et sur la doc (section Push des informations de l’IPX vers Jeedom) :
https://doc.jeedom.com/fr_FR/plugins/automation%20protocol/ipx800v4/

Bonjour Alexp
Merci de m’avoir accordé de ton temps.

J’ai passé mon dimanche après midi à parcourir et à tester les info de ce fil justement.
Ce que j’en ai déduit c’est que le plugin a été updaté avec la possibilité d’envoyer les valeurs de tout les relais d’un seul coup en utilisant un Push ON EVENT vers sortie physique.
J’ai utilisé cette commande issue de la doc
/core/api/jeeApi.php?type=ipx800v4&apikey=XXX&typeData=allR&data=$R

La ou je bloque c’est que je ne comprend pas comment affecter le status à un relais.

Dans le screen shot ci dessous il y a un relais de l’ipx avec le ON/OFF et son status issue du plugin.

Est ce que la mise à jour du status est automatique avec le PUSH ou bien faut’il quand meme faire un virtuel quelque part ?

Voici le log de jeedom quand je lance le bouton « TESTER LA CONFIGURATION » dans IPX

[2021-04-11 18:26:17][DEBUG] : Demande sur l'api http venant de : 192.168.1.60 => {"type":"ipx800v4","apikey":"apikeysupprimévolontairement","typeData":"allR","data":"00000000000000000000000000000000000000000000000000000000"}
[2021-04-11 18:26:17][INFO] : Appels de ipx800v4::event()

Est ce que j’ai raté quelque chose ?

Merci

Quand tu passe le relai 38 à 1, le 38éme bit de "data":"00000000000000000000000000000000000000000000000000000000" passe à 1 ?

Oui, voila le log.
Mais pour autant le status ne se met à jour qu’après le temps défini dans les settings du plugin. A savoir 2 minutes chez moi

[2021-04-12 11:57:37][DEBUG] : Demande sur l'api http venant de : 192.168.1.60 => {"type":"ipx800v4","apikey":"apikeysupprimévolontairement","typeData":"allR","data":"01000000000000000000000000000000000001000000000000000000"}
[2021-04-12 11:57:37][INFO] : Appels de ipx800v4::event()

Fais une capture de ta page de config.

On dirait que Jeedom reçoit bien le push de l’ipx, mais ne l’envoi pas au plugin…

C’est bien le log en mode debug du plugin que tu as mis ?

Tu devrais y voir ça :
[2021-04-12 12:45:38][DEBUG] : récépion des donnés de type allR de l'IP : 192.168.1.252 avec comme valeurs : 10000000000000000000000000000000000000000000000000000000

Le pilotage du relai depuis jeedom fonctionne ?

Le plugin IPX est bien en mode « debug »

J’ai actionné les relais 24 et 25 pour tester et il n’y a que ca qui apparait

Le log que j’ai copié précédemment proviens de l’onglet API.

Pour finir oui les relais sont fonctionnels depuis Jeedom.

Voici la page de config

J’ai aussi fait un screen shot de la config du Push.
Est ce que le port doit être UDP ou TCP ?
Est ce que le port doit etre configuré pour l’adresse IP de mon jeedom qui est 192.168.1.5
Car mon IPX utilise le port 80 dans les config réseau.

Dans ta config de push, pourquoi as tu des identifiants ? Supprime les et vois si ça fonctionne.

Juste pour être sûr, tu as bien fais une scène avec le push dans l’IPX ?

image

image

Voila la scene que j’ai crée.

J’ai mis un username et password car pour me connecter à Jeedom j’ai des identifiants à saisir.
J’ai fait le test sans et ca ne change rien.

Est ce que c’est le port Jeedom qu’il faut entrer dans le push ou bien celui de l’IPX ? TCP ou UDP ?

J’ai aussi essayé de remplacer l’IP par le dns jeedom et j’ai un retour dans le log API le meme que précédemment , mais toujours rien dans le log du plugin

Je ne suis pas sûr qu’il y ai besoin d’identifiant pour l’accès à l’api…

Laisse l’ip, si tu met le dns jeedom ça va partir sur internet pour revenir chez tou (à moins que tu ai mis un serveur dns chez toi)

Celui de Jeedom : 80 tcp, c’est bon, il est bien configuré chez toi.

En fait j’ai été un peu vite, si quand tu fais un test de ton push sur l’ipx le log du plugin (en debug) ne reçoit rien, tu ne pourras pas aller plus loin.

Effectivement sans les identifiants ça fonctionne aussi. Du moins dans la partie log API j’ai le meme retour.
Je ne reçoit vraiment rien dans le log du plugin. seulement dans le log API

Vérifie que tu as bien la ligne 58 avec le log::add dans var\www\html\plugins\ipx800v4\core\class\ipx800v4.class.php

ligne 57 $ipx800v4_list = self::searchConfiguration('"ip":"' . init('ip',$_SERVER['REMOTE_ADDR']) . '"', 'ipx800v4'); //on récupère l'ensemble des eqLogics de type ipx800v4 qui ont pour adresse, l'adresse de l'IPX emetteur
ligne 58 log::add('ipx800v4', 'debug', 'récépion des donnés de type ' . "$typeData" . ' de l\'IP : ' . init('ip',$_SERVER['REMOTE_ADDR']) . ' avec comme valeurs : ' . $getData);
ligne 59 if(array_key_exists($typeData,self::TYPE_DATA)){ //si le typeData est déclaré dans la constante de classe

Je ne me souviens plus si c’est moi qui l’avais ajouté ou si c’est déjà dans le code.

Alors en relisant le fil de la précédente discussion je suis tombé sur ce point et j’etais justement en train de le faire :slightly_smiling_face:
La ligne de code pour ajouter le log était effectivement manquante.
Et maintenant je vois ça

[2021-04-12 15:16:50][DEBUG] : Réception des données de type allR de l'IP : 192.168.1.60 avec comme valeurs : 00000000000000000000000000000000000000000000000000000000

Cool donc le push en lui même fonctionne.

Maintenant il faut vérifier que la scène dans l’ipx fonctionne. En modifiant l’état d’un relais tu dois avoir cette fameuse ligne dans le log du plugin.

Si ce n’est pas le cas il faudra s’attarder sur la conf de l’ipx sinon si ça remonte bien on verifira la conf du plugin…

J’ai modifié l’état d’un relais et voila le retour

[2021-04-12 15:40:45][DEBUG] : Réception des données de type allR de l'IP : 192.168.1.60 avec comme valeurs : 00000000000000000000000010000000000000000000000000000000
[2021-04-12 15:40:45][DEBUG] : Réception des données de type allR de l'IP : 192.168.1.60 avec comme valeurs : 00000000000000000000000010000000000000000000000000000000
[2021-04-12 15:40:48][DEBUG] : Réception des données de type allR de l'IP : 192.168.1.60 avec comme valeurs : 00000000000000000000000000000000000000000000000000000000
[2021-04-12 15:40:48][DEBUG] : Réception des données de type allR de l'IP : 192.168.1.60 avec comme valeurs : 00000000000000000000000000000000000000000000000000000000

Tu l’as piloté comment ? Tu as juste fais un ON ou tu as fais un ON puis un OFF ?

Pourquoi as-tu 2 fois l’état ?

ON puis OFF physiquement sur l’interrupteur qui commande l’éclairage de mon bureau.
Je viens de faire un test sur la tuile et idem. J’ai les infos en double.
J’ai vérifié le code et il n’y a qu’une seule ligne.