Oui, c’est ce que je voudrais faire, mais en mettant #message# ou #title# (entouré ou non de {} ou de ‹ ›) cela ne fonctionne pas chez moi.
Je dois merder qq part dans la syntaxe, peux tu me donner le contenu exact du champ de la colonne valeur (à tourner trop longtemps autour d’un truc on devient aveugle )
Autre précision, la chaine que je cherche à envoyer et du type
'["^{ESC}","CHROME.EXE","{ENTER}"]'
ca coince peut être au niveau json ?
Le deuxième qui référence une commande virtuelle initialisé avec le même contenu fonctionne aussi très bien
Le troisième est KO, rien n’arrive dans MQTT explorer en envoyant le même contenu, par contre si j’envoie une valeur numérique elle arrive bien dans MQTT explorer.
Je pense donc que l problème est dans l’interprétation du json via la commande ‹ message ›
Petite précision : le remplacement auto des quotes des paramètres Jeedom est sur ‹ non ›
Peux-tu stp me montrer ce que tu fais exactement coté jMQTT et ce que tu obtiens comme message sur le Broker ? C’est vraiment important que j’ai plus de détails, car il y a un vrai changement de fonctionnement dans le Core en v4.2 depuis ces 2 commits c6887fd & 430f004
Maintenant jeedom::evaluateExpression() est en mesure de retourner une valeur de type Array (notamment dans le cas du passage d’un tableau json en $_input).
#513# → cmd info qui récup le champ « state » du tableau json dans le topic « dummy/set » #514# → cmd action on doit envoyer au topic « dummy/set » exactement le texte {"state":"ON"} #515# → cmd action off doit envoyer au topic « dummy/set » exactement le texte {"state":"OFF"} #516# → cmd action toggle doit envoyer au topic « dummy/set » le texte {"state":0} ou {"state":1}
Avant la v4.2.2 :
les commandes #514# et #515# envoyaient bien ce qu’elles devaient → OK
la commande #516# envoyait {"state":1-0} ou {"state":1-1} → NOK, impossible à gérer
Après la v4.2.2 (en l’état) :
les commandes #514# et #515# envoient {'state':'ON'} ou {'state':'OFF'} → NOK
la commande #516# envoie {'state':0} ou {'state':1} → NOK, mais gérable
Suite au patch en préparation pour remettre un coup de json_encode les array en v4.2.2 :
les commandes #514# et #515# envoient bien ce qu’elles devaient → OK
la commande #516# envoie bien {"state":0} ou {"state":1} → OK
Donc c’est un changement positif, mais il peut poser problème si l’appelant n’a pas prévu les cas où autre chose que bool/int/string lui serait renvoyé.
Selon moi, la sérialisation devrait être réalisée dans le core pour encadrer les types retournés.