Cmd n'a pas le sous-type String

Bonjour,

j ai mis a jour mon template dans jMQTT et depuis certaines de mes lumières ne marchent plus sous Jeedom Connect soit disant car #[Chambre Papa][Papa][Color_Hue]# ne retourne pas un String.

Pourtant j ai vérifié plein de fois et c est bien en info numeric comme pour les lumières qui fonctionnent alors du coup je sèche.

Version: 2022-12-06 16:02:47 sous Jeedom 4.3.12

une idée ? Merci
XabiX



J ai essayé de mettre en debug mais je ne vois rien qui puisse m aider

1 « J'aime »

Salut,

allez on essaie tous de bien commencer l’année 2023 …

1 « J'aime »
Jeedom Core : 4.3.12
Version JC : 1.6.0+ stable
Bonne année et tous mes voeux au passage.

DNS Jeedom : oui
Statut Démon : Stoppé - ()

Equipements :
  Valérie : v1.6.0 stable sur android [os : 31] (polling)
  Oppo : v1.6.0 stable sur android [os : 33]

merci

merci,


t’as pas l’impression en écrivant que tu donnes toi meme la réponse ? :slight_smile:

du coup en effet, « numeric » n’est pas « string » :slight_smile:

Du coup, je ne sais pas comment je dois configurer mes lampes Hue Couleurs pour que cela fonctionnait. Avant, elles étaient toutes comme celle ci dessous qui est en numeric et pas un string :slight_smile: et cela marchait.

Dois je juste changer Numeric en Autre? Je viens à me demander si finalement ma conf est correcte. En tout cas, l’exemple ci-dessous fonctionne toujours malgré le Color_Hue en Numeric (et si je fais Sauvegarder aussi)


si tu as réussi à les mettre une 1ere fois, c’est forcément qu’elles ont été en string à un moment donné (peut etre sur un autre plugin?)
en tout cas pas de chgt de notre côté depuis belle lurette sur cette partie !

oui tu peux si ca ne dérange pas les plugin jmqtt
ou sinon :
tu passes numerique → autre, tu créés/modifies ton widget JC et sauvegarde, puis tu rechanges sur jmqtt autre → numerique

les controles se font lors de l’ajout de la cmd, pas lors de la validation (peut etre à tort…) :slight_smile:

Merci @tomitomas. N existe pas une fonction qui pourrait transformer la valeur actuelle en String pour éviter de changer jmqtt et de transformer le numeric en string?

Sinon je vais essayer de passer Numeric a Autre et si pb je reviendrai sur Numeric après avoir maj les widgets sur JC.

Encore merci et bon 2023!!!

(idéalement je pense que ce serait mieux de faire le check a chaque fois pour que les choses soient propres et bien comprises car vu que cela marchait pour moi avec l un en Numeric je pensais que les chiffres étaient aussi des strings mais pas en informatique apparemment)

Le client crash, des que je change la couleur des lampes. Ca ne doit pas venir du changement NUMERIC a AUTRE (car cela m arrivait de temps en temps avant mais la c est systématique).

Ci joint le full log sans l api key. Je vais voir si je peux avoir un log coté tel au cas ou cela soit nécessaire.

Merci
JeedomConnect.log (36,7 Ko)

J ai le daemon JC en manuel d ou l icon rouge.
|Configuration démon |Désactivé|
|Statut démon|Désactivé|

on n’est plus sur LA lampe, mais LES lampes …!?

vu l’exemple que tu donnais plus haut, c’est surement pas déconnant puisqu’on attend une couleur au format HEX (#4596F2 pour un joli bleu), quand de ton côté tu récupères … je ne sais pas quel format :slight_smile:
« 212 » je ne suis pas certain de savoir dire à quelle couleur ça correspond

Oui j ai 6 lampes Color Hue mais j essaie de trouver comment faire fonctionner une avant de m attaquer aux autres. A priori si je mets autre je sauvegarde et je remets dans jmqtt numeric ca evite de crasher mais pour moi ce n est pas une solution alors je vais regarder plutot comment récupérer le code HEX qui est attendu par JC pour éviter d autres surprises à l avenir.

A priori cela doit se faire avec:

  • color_xy: To control the XY color (CIE 1931 color space) publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"color": {"x": X_VALUE, "y": Y_VALUE}} (e.g. {"color":{"x":0.123,"y":0.123}}). To read the XY color send a message to zigbee2mqtt/FRIENDLY_NAME/get with payload {"color":{"x":"","y":""}}. Alternatively it is possible to set the XY color via RGB:
    • {"color": {"r": R, "g": G, "b": B}} e.g. {"color":{"r":46,"g":102,"b":150}}
    • {"color": {"rgb": "R,G,B"}} e.g. {"color":{"rgb":"46,102,150"}}
      *** {"color": {"hex": HEX}} e.g. {"color":{"hex":"#547CFF"}}**

Merci beaucoup. C est clair aussi pour la différence numeric et string! Je ne verrai plus jamais un String de la meme maniere dorenavant ;))

notre ami @Bison pourra surement aider :wink:


à noter qu’on dérive quand même du sujet initial … et que ca aurait mérité un autre post histoire de respecter les regles du forum cher @XabiX :slight_smile:

Bonjour,

Si besoin d’aide je peux essayer d’aider mais du coup ça a l’air sur la bonne voie :slight_smile:

Bonjour,

Ouf je suis sur la bonne voie, c’est déjà rassurant :).

Par contre je n’arrive pas à trouver la bonne requête MQTT pour récupérer la couleur en HEX (et en mode String) afin de configurer mes widgets dans JC et que l’appli ne crash pas quand je modifie la couleur.

J’ai essayé plein de permutations mais je sèche la:

la doc dit:

To read the XY color send a message to zigbee2mqtt/FRIENDLY_NAME/get with payload {"color": {"hex": HEX}} e.g. {"color":{"hex":"#547CFF"}}

Si je mets une commande Info, je n’arrive pas à rentrer de payload de type: {« color »: {« hex »: HEX}}. Si par contre je mets une commande Action alors oui je peux mettre un payload mais à priori je ne remonte rien et JC s’attend de toute manière à une Info de type String et non une Action :frowning:.

Quelle serait la bonne syntaxe si je dois mettre une Action avec un get et le payload pour récupérer la couleur en Hex? Dois=je faire qq chose supplémentaire pour pouvoir transformer cette Action en Info Couleur:
Screenshot 2023-01-03 at 11.59.23

Merci
Xavier

Salut,

Alors oui c’est ce que j’indiquais, il faut passer par un virtuel (enfin c’est ce que j’ai fais).

Donc, chez moi, dans jmqtt l’équipement « Lumière RB285C Bureau (MQTT) » et la commande qui envoi le payload : {"color":{"hex":"#color#"}}

Le virtuel qui envoi cette action et en lien avec une commande info string

Et enfin dans JC la possibilité d’ajouter les deux en indiquant les 2 commandes issues du virtuel :
image

Salut @Bison,

Voici ce que j’ai fait mais j’ai du loupé un truc dans la config:

Mon MQTT:


avec le set et le même payload.

Mon virtuel (mais je ne vois pas ta conf du ‹ Etat Couleur ›:

Quand je fais Tester dans le virtuel l’Etat #color# clignote en vert mais je récupère pas la valeure.

Zigbee me dit:
Screenshot 2023-01-03 at 13.50.01

J’ai aussi essayé avec rien dans Etat Couleur du Virtuel mais pas mieux:

Je me rends compte que l’on dérive du sujet initial. Je ne sais pas si un admin ou si j’ai la possibilité de bouger une partie du thread dans un autre sujet pour faciliter les recherches des autres utilisateurs si ils rencontrent le même problème.

MERCI

Il ne faut rien mettre dans la commande Etat Couleur, c’est la partie paramètres de l’action qui va lui pousser la couleur

Donc c’est bien cela qu’il faut faire mais avec un sous-type couleur et non Défault

EDIT : @Mips, aurais-tu la gentillesse de splitter le post stp ?

split entre numéro 8 et 17, sans ce dernier msg

et non pas tout à fait …
un numeric 00001 a une valeur de 1
là où un string 00001 a une « valeur » de 00001
ce n’est donc pas la meme chose :slight_smile:

Bonjour à tous,

Merci car le changement de configuration permet maintenant de pousser une couleur par le bouton Tester du Virtuel sur Plafond/Salon.

Par contre, j’ai appliqué le template nouvellement créer de mqtt sur toutes les ampoules et j’ai dupliqué les virtuels mais je me retrouve toujours avec les ampoules en défaut même si la sauvegarde du widget sous JC fonctionne maintenant sans erreur (donc le type de la cmd doit bien être en String.
Mais le widget reste en erreur et quand je l’ouvre il y a l’id du virtuel mais plus la syntaxe …

J’avoue ne plus comprendre car j’ai l’impression que les configs sont exactements les mêmes et j’ai vérifié le champ valeur des copier/coller (template ou duplicate)

Mais pq je n’arrive pas à faire pareil avec les autres …

Lampe qui fonctionne (Plafond/Salon):

Une des lampes qui ne fonctionne pas(ChambrePapa):

Quand je fais le Sauvegarde, le log montre:

Ai je loupé encore quelque chose :slight_smile: ?

Merci
Xavier

ba oui ! ya quand meme une belle différence :slight_smile:
ton état n’est jamais mis à jour … donc pas étonnant que ca plante

Trop fort!!! et oui un glitch du copier/coller!!!

Super ça marche merci beaucoup à @tomitomas et @Bison pour votre aide précieuse.

Le tout est un peu alambiqué mais ça fonctionne et ça ne plante plus! Bravo pour la réactivité!