Problème de quotes indésirables dans un payload JMQTT

Bonjour à tous,

Je cherche à faire passer la valeur d’une info virtuelle comme valeur d’une commande action de JMQTT.

Mon équipement attend comme payload : away, 1, 2 ou 3

Lorsque cette info est un chiffre, pas de soucis, mais lorsque je mets une chaine de caractère (away dans mon cas) JMQTT envoie comme payload "away" et non away (sans les doubles quotes)

Capture commande JMQTT :

[INFO]  MQTT Property Message:  Topic homie/zehnderq450/controls/fan-mode/set, Payload "away"
[WARNING]  Payload value not valid for property for topic homie/zehnderq450/controls/fan-mode/set, payload is "away"

Si j’écris directement ma chaine dans la commande de JMQTT je n’ai pas ce problème.

[INFO]  MQTT Property Message:  Topic homie/zehnderq450/controls/fan-mode/set, Payload away

Si quelqu’un a une piste, je suis preneur.

Merci d’avance.

str_replace ???

str_replace('\"', '', #[Maison][test][fan-mode]#) ne change rien, les quotes sont toujours passées au brocker…

On dirait que lorsque un type string est interprété par le moteur d’expression, les quotes sont conservées jusqu’au bout.

Il faut voir avec les spécialistes mais je présume que les quotes sont amenées par le core, il doit être possible de les supprimer dans le code du plugin.

Je crois que c’est le cas par défaut, il y a une option dans Configuration => Equipement, dans la catégorie Divers (tout en bas), tu peux toujours tester pour voir, mais ça pourrait casser d’autres choses

Je suis sur un docker en dev, je teste tout de suite !

Bingo ! ça fonctionne en décochant l’option.

Quels sont les possibles effets de bord ?

Je saurai pas te dire exactement, j’ai jamais vraiment tenté de décocher l’option, peut-être des soucis sur des expressions conditionnelles, sur le passage en paramètre de ces infos, …

Arf…, je vais créer un nouveau sujet pour ça, il n’y a rien dans la doc pour le moment : https://doc.jeedom.com/fr_FR/core/4.1/administration#Onglet%20Equipements
Un dev du core passera peut-être sur le sujet pour détailler l’option.

En tout cas merci à @Jeandhom et @capic :grin:

2 « J'aime »

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