Mes PUSHs ne marchent pas/plus: jeeEvent Vous n'êtes pas autorisé à effectuer cette action, IP

Bonjour !

J’ai l’impression de me retrouver il y a quelques mois/années lors de la bascule des clés d’API.
Ca doit être une erreur toute bête, pourtant j’étais persuadé que tout tournait comme une horloge. Je me suis rendu compte en faisant quelques tests régulier de bonne santé de mon i,stallation l’autre jour que mon push IPX ne semble plus fonctionner.

J’ai eu beau faire des modifications, pas moyen d’obtenir autre chose que soit aucun effet, soit une erreur jeeEvent.

Je fais des tests maintenant avec Bruno (ou Postman, peu importe) vous me direz si c’est une bonne idée mais ca m’évite de courir sur deux étages pour aller ouvrir portes et actionner des relais et voir si ca fonctionne).

Mon url de push: POST http://192.168.1.21:80/core/api/jeeApi.php?type=ipx800v4&apikey=cléAPI&typeData=D&data=$D1

la clé API je la récupère ici:

Le « pot aux roses » c’est que j’avais dans mes URLs push un plugin=ipx800v4, et je pense que ca date d’avant une migration. J’ai aucune erreur si je laisse ce query param mais dans ce cas, je n’ai aussi aucun effet, ce qui est étrange.

J’ai essayé également avec les types allD, meme erreur jeeEvent.
J’ai également regénéré et donc changé la clé API.

J’ai donc du passer à côté de quelque chose d’évident. Coté IPX je n’ai pas de trace de ce qu’il se passe, c’est pour ca que j’essaye au moins de le faire marcher dans un outil, quitte à obtenir une erreur de formattage de la valeur, ca serait deja une indication que ça marche.

Ma page santé:

Mon swap était nickel sur l’Atlas, il y explosé hier suite j’ai l’impression aux redémarrage du démon IPX. Il est à quelque chose comme 80% encore avant. Je vais le surveiller

Si je l’enlève, j’ai direct:
jeeEvent Vous n’êtes pas autorisé à effectuer cette action, IP : XXX

Merci !


Informations Jeedom Atlas

Core : 4.4.19 (master)
DNS Jeedom Atlas : oui

Plugin : IPX 800 v4
Version : 2024-08-27 01:01:23 (stable)
Statut Démon : Démarré - (2024-11-13 09:22:03)

Salut,

A tout hasard: l’ip (client) de l’ipx n’aurait pas été bannie par jeedom entre temps? page config > sécurité

Merci !

Non, je viens de vérifier, ma liste est vide. La classe d’adresses est bien dans la liste d’autorisations de la partie connexion, au cas où.

J’ai essayé de modifier les niveaux de logs pour essayer d’avoir un début d’idée de pourquoi la requête est rejetée, mais je n’ai pas trouvé quoi régler pour obtenir un peu plus d’info. J’ai essayé le plugin ipx800 en debug, je n’ai que le cron régulier qui apparait, j’ai essayé event, api, je n’ai rien vu non plus.

Je suspecte que ce soit le format de la valeur, mais c’est peut etre tout autre chose.

Bon, je suis embêté, mes PUSHs marchent nickel dans Home Assistant avec le plugin Aohzan/ipx800.
Mais j’aimerais éviter de déporter encore mes configurations là bas surtout que j’ai juste du faire un mauvais réglage quelque part, ça doit forcément marcher.

J’ai essayé d’enlever plein de logger en debug, pas moyen d’obtenir un seul message me permettant de comprendre pourquoi le push est rejeté, c’est vraiment desespérant.
J’ai essayé de changer la méthode, regénérer une clé d’api, j’ai essayé de faire un push sur l’ensemble des entrées, on dirait que jeedom bloque vraiment l’appel

Soit je n’ai rien compris, soit il y a de multiples bugs avec ce plugin sur les pushs.

Voilà le type de requête que j’envoie:

POST http://192.168.1.21/core/api/jeeApi.php?type=event&plugin=ipx800v4&apikey=XXX&typeData=D&data=1
Saisie sous l’interface de l’IPX sous la forme:
host, port, POST et path = type=event&plugin=ipx800v4&apikey=XXX&typeData=D&data=$D3

Voilà ce que je reçois:
[2024-11-14 22:39:58] ERROR : Il y a un problème dans les données des de l’entrée digitale , 1 valeur(s) reçue(s) sur 56 valeurs attendues (1)

La doc du plugin indique:

* Mise à jour d’une seule variable : `/core/api/jeeApi.php?type=ipx800v4&apikey=XXX&typeData=A&data=$B` avec `A` qui prend les valeurs `D`, `R` ou `VO` et `B` qui prend la référence de la valeur à envoyer sur l’IPX(par exemple `D1` ou `VO1` ou `R1`…)

J’ai l’impression que c’est faux. Est ce que ce n’est pas mis à jour, obsolète, toujours d’actualité mais avec une subtilité … je ne sais pas. Mais c’est pas du tout le format de la requete qui passe.

Et malgré le typeData à D, qui est clairement documenté comme une valeur d’une entrée numérique, et avec data = $D3, qui est la valeur numérique (ici 0 ou 1, correctement remplacée)
Pourtant il attend 56 valeurs du genre 001000000000000000000…
Et clairement, ce n’est pas comme ça qu’il devrait se comporter !

Et pire, si du coup j’essaye d’ajuster par rapport à ces bugs et que j’envoie
POST http://192.168.1.21/core/api/jeeApi.php?type=event&plugin=ipx800v4&apikey=XXX&typeData=D&data=$D

Alors là c’est à devenir fou !

[2024-11-14 22:45:06][ERROR] : Il y a un problème dans les données des de l'entrée digitale , 56 valeur(s) reçue(s) sur 56 valeurs attendues (10000000000000000000000000000000000000000000000000000000)
[2024-11-14 22:45:15][ERROR] : Il y a un problème dans les données des de l'entrée digitale , 56 valeur(s) reçue(s) sur 56 valeurs attendues (10100000000000000000000000000000000000000000000000000000)

Je passe la sécurité, la valeur est correcte même si inutilement complexe … et ca ne passe pas !

logs debug:

012|[2024-11-14 22:45:06][ERROR] : Il y a un problème dans les données des de l'entrée digitale , 56 valeur(s) reçue(s) sur 56 valeurs attendues (10000000000000000000000000000000000000000000000000000000)
0013|[2024-11-14 22:45:15][ERROR] : Il y a un problème dans les données des de l'entrée digitale , 56 valeur(s) reçue(s) sur 56 valeurs attendues (10100000000000000000000000000000000000000000000000000000)
0014|[2024-11-14 23:01:33][DEBUG] : Receveid data :Array ( )
0015|[2024-11-14 23:01:33][DEBUG] : Type data found :D
0016|[2024-11-14 23:01:33][ERROR] : Il y a un problème dans les données des de l'entrée digitale , 56 valeur(s) reçue(s) sur 56 valeurs attendues (10000000000000000000000000000000000000000000000000000000)
0017|[2024-11-14 23:01:38][DEBUG] : Receveid data :Array ( )
0018|[2024-11-14 23:01:38][DEBUG] : Type data found :D
0019|[2024-11-14 23:01:38][ERROR] : Il y a un problème dans les données des de l'entrée digitale , 56 valeur(s) reçue(s) sur 56 valeurs attendues (10100000000000000000000000000000000000000000000000000000)

Par contre j’ai pu faire marcher en basculant sur allD (pour moi il n’y a que les allXXX qui marchent, les valeurs individuelles, je n’arrive pas à les faire marcher). Et encore, pas en suivant l’URL documentée

/core/api/jeeApi.php?type=event&plugin=ipx800v4&typeData=allD&data=$D&apikey=XXX

Et là j’ai bien un tableau de 56 éléments attendu comme un tableau, parsé et interprêté. Ce cas là semble marcher.