Commandes action MQTT non prises en compte

Je n’arrive pas à comprendre le problème. Je viens d’ajouter un Shelly 1 via jMQTT, exactement de la même façon que je l’ai fait avec d’autres depuis des années.
Toutes les commandes s’ajoutent automatiquement, SAUF les deux commandes action dont j’ai besoin (on et off). Quand je les crées manuellement (comme la commande action « on » ci-dessous, en bas), ça ne marche pas. MQTT Explorer détecte pourtant bien le changement d’état du relai lorsque je clique « tester », mais 5 seconde après il repasse tout seul sur off (et le Shelly reste en off tout le long).
L’état du relai affiché par broker est pourtant correct.

Où est le souci ?


Mes infos de config
OS version: raspbian 10 on RPI 3 B+
PHP version: 7.3.27-1~deb10u1
Python version: 3.7.3
Core version: 4.4.19 (master)
Nb lines in http.error: 142
Plugins: calendar espeasy geotrav heliotrope jMQTT mail mobile mode rfxcom shelly telegram virtual weather xiaomihome

jMQTT: 23.11.8 (2024-06-08 14:14:45) branch: stable
Nb Errors or Warnings in jMQTT logs: 36 (level is error)
Daemon Status: Started (2025-08-04 12:07:20)
Nb eqBrokers: 1 / eqLogics: 8 / cmds: 72

Salut , n’aurais tu pas mis une tempo dans ton shelly?

Non non. C’est pas que la commande change au bout de 5 sec, c’est juste qu’elle est ignorée (et que le statut du relai se remet correctement à jour).
D’ailleurs le debug dit ça :
Cmd #[Aucun][Spots cuisine Shelly][on]# est de type action : ignorée

On est d’accord que si tu pilotes ton module pas via MQTT t’a pas ce souci ?

Si je clique sur le switch via l’interface Shelly y a aucun problème. Et même le statut remonte correctement dans Jeedom via MQTT, c’est ça qui est bizarre.

Bizarre, les problèmes de jMQTT semblent s’étendre là où ça marchait encore y a 10 min. Plus rien ne semble remonter, mes appareils ne communiquent plus du tout via jMQTT (pas d’autre souci par ailleurs). Malgré un restore de backup et un reboot général du réseau.
Est-ce lié à ma version obsolète de Debian ou à l’âge de ma carte SD ?

Sans logs on va pas pouvoir faire grand chose d’autre que des hypothèses

Rien de plus que ce que j’ai dit plus haut. Ca indique que les commandes sont ignorées.

[2025-08-04 13:49:08] INFO  : Cmd #[Aucun][Suspension 1 (MQTT)][On]# -> 'on' sur le topic 'shellies/shelly1-55551E/relay/0/command'
[2025-08-04 13:49:08] DEBUG  : Cmd #[Aucun][Suspension 1 (MQTT)][Off]# est de type action : ignorée
[2025-08-04 13:49:08] DEBUG  : Cmd #[Aucun][Suspension 1 (MQTT)][On]# est de type action : ignorée
[2025-08-04 13:49:08] INFO  : Cmd #[Aucun][Suspension 1 (MQTT)][relay:0:command]# <- on
[2025-08-04 13:49:20] INFO  : Cmd #[Salon][Suspension 2 (MQTT)][relay:0]# <- off
[2025-08-04 13:49:20] INFO  : Cmd #[Salon][Suspension 2 (MQTT)][statut]# <- off
[2025-08-04 13:49:20] INFO  : Cmd #[Salon][Suspension 2 (MQTT)][input:0]# <- 1
[2025-08-04 13:49:21] INFO  : Cmd #[Salon][Suspension 3 (MQTT)][statut]# <- off
[2025-08-04 13:49:21] INFO  : Cmd #[Salon][Suspension 3 (MQTT)][input0]# <- 0
[2025-08-04 13:49:22] INFO  : Cmd #[Aucun][Suspension 1 (MQTT)][Off]# -> 'off' sur le topic 'shellies/shelly1-55551E/relay/0/command'
[2025-08-04 13:49:22] DEBUG  : Cmd #[Aucun][Suspension 1 (MQTT)][Off]# est de type action : ignorée
[2025-08-04 13:49:22] DEBUG  : Cmd #[Aucun][Suspension 1 (MQTT)][On]# est de type action : ignorée
[2025-08-04 13:49:22] INFO  : Cmd #[Aucun][Suspension 1 (MQTT)][relay:0:command]# <- off
[2025-08-04 13:49:50] INFO  : Cmd #[Salon][Suspension 2 (MQTT)][relay:0]# <- off
[2025-08-04 13:49:50] INFO  : Cmd #[Salon][Suspension 2 (MQTT)][statut]# <- off
[2025-08-04 13:49:50] INFO  : Cmd #[Salon][Suspension 2 (MQTT)][input:0]# <- 1
[2025-08-04 13:49:51] INFO  : Cmd #[Salon][Suspension 3 (MQTT)][statut]# <- off
[2025-08-04 13:49:51] INFO  : Cmd #[Salon][Suspension 3 (MQTT)][input0]# <- 0

Alors que l’adresse est la bonne, et que ça fonctionne avec d’autres modules.

On voit une partie /command dans le log que l’on ne voit pas dans la copie d’écran de la commande.

Bon j’ai finalement résolu les problèmes en recréant de nouveaux modules dans jMQTT et, pour le plus récalcitrant, en changeant le MQTT prefix dans l’interface Shelly. Suite à un reset de module, il semble qu’il y avait un conflit avec son état précédent (son ID étant toujours le même).

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.