Fil de discussion du [TUTO] Utiliser Valetudo RE et le contrôler via MQTT

Si elles sont créées.
J’ai supprimée ma carte dernièrement et je les ai recréés sans les renommer.

alors as tu une idée de où mon problème d’expression non valide peux venir ?
j’ai pourtant respecté les étapes du virtuel et du scénario

As-tu créé la variable ?
Dsl je n’ai pas accès à mon Jeedom pour le moment.

Je pense que c’est là le problème…
je la retrouve bien dans l’onglet des variables avec des valeurs pour les id des pièces sélectionné,
mais elle est initialisé nul par ailleurs

Je reboucle mais c’est effectivement étrange que tu ai une « , » après le 19…
Tu as une pièce #19 ?
Dans ton scénario, tu as une pièce #1 dont, de mémoire, la numérotation ne commence qu’à partir de #15 dans Valetudo.
La condition du dernier bloc garde-fou est bien 'variable(SelectionAspi)' != '' ?
Peut-être tester le scénario en dupliquant le bloc « code » en dehors de la condition en désactivant le dernier bloc « si », de la sorte :

Oui j’ai bien une pièces #19 c’est la Cuisine, j’ai bien des pièces inférieur a 15, tout comme toi d’ailleurs dans ton scénario le Cellier a un id= 5
je n’ai pas de problème avec le bloc code, si je le sort comme tu viens de me demander mon scénario n’affiche plus le message avec l’erreur d’expression.
donc si j’en conclu avec ces test le problème vient de la condition du dernier bloc où j’ai bien 'variable(SelectionAspi)' != ''

Bon au final on progresse je n’ai plus de message lors de l’exécution du scénario mais rien ne produit au niveau de l’aspirateur :frowning:
juste une petit précision pour le déclenchement du scénario tu as mis quoi ? parce que j’ai bien mis une action sur la commande nettoyage partiel du virtuel.

[2021-05-07 10:07:54][SCENARIO] Start : Lancement provoque.
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [action] : action
[2021-05-07 10:07:54][SCENARIO] Affectation de la variable SelectionAspi =>  = 
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-05-07 10:07:54][SCENARIO] Evaluation de la condition : [0 == 1  ] = Faux
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [action] : else
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-05-07 10:07:54][SCENARIO] Evaluation de la condition : [1 == 1  ] = Vrai
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-05-07 10:07:54][SCENARIO] Affectation de la variable SelectionAspi => 16, = 16,
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-05-07 10:07:54][SCENARIO] Evaluation de la condition : [1 == 1  ] = Vrai
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-05-07 10:07:54][SCENARIO] Affectation de la variable SelectionAspi => 16,19, = 16,19,
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-05-07 10:07:54][SCENARIO] Evaluation de la condition : [0 == 1  ] = Faux
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [action] : else
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [condition] : if
[2021-05-07 10:07:54][SCENARIO] Evaluation de la condition : ['16,19,' != ''] = Vrai
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [action] : then
[2021-05-07 10:07:54][SCENARIO] Exécution d'un bloc élément : 8
[2021-05-07 10:07:54][SCENARIO] Exécution du sous-élément de type [action] : code
[2021-05-07 10:07:54][SCENARIO] Exécution d'un bloc code
[2021-05-07 10:07:54][SCENARIO] Exécution de la commande [Salon][R2D2][Clean Segment]
[2021-05-07 10:07:54][SCENARIO] Fin correcte du scénario

On est pas mal alors… il a réussi à passer le 'variable(SelectionAspi)' != '' sans erreur ?
Sinon pour le bouton de commande : effectivement il y a une petite filouterie :


Il ne porte pas d’action mais déclenche le scénario avant de ne rien exécuter :sweat_smile:
C’est le scénario qui lance la commande clean segment.
D’où l’imprécision de ma dernière capture…

la petite filouterie est bien réalisé, mais du coup comme j’ai rien qui ce passe je me questionne sur le fait d’avoir oublié quelque chose au niveau du scénario.

Dans ma dernière capture, pour sortir le bloc « code » du garde-fou j’ai omis de placer le l’action « clean segment » juste après qui est la commande jmqtt :

J’avais bien le bloc action pour clean segment dans le scenario,
mais je pense que maintenant l’erreur de saisie est dans la commande de JMQTT
vue que j’ai aucune erreur lors de l’exécution du scénario.

Autant pour moi, je n’avais pas vu la fin de ton log…
Pour la commande jmqtt, c’est un Topic valetudo/roborock/custom_command avec pour Valeur : {"command":"segmented_cleanup","segment_ids":[variable(SelectionAspi)]}
D’ailleurs, sans variabiliser la sélection en passant par le scénario, as-tu testé la commande clean segment en l’état ? ta variable étant toujours renseignée et vidée seulement au lancement du scénario.
A tester aussi la commande jmqtt avec la valeur de tes pièces par exemple :
{"command":"segmented_cleanup","segment_ids":16,19}
ou
{"command":"segmented_cleanup","segment_ids":"16,19"}
Je me rappelle avoir bataillé avec ces variables notamment à cause des "" et/ou des '' lié au core qui les traite différemment en fonction du contenu.
Je ne peux pas tester pour le moment mais de mémoire Valetudo n’apprécie pas les :
{"command":"segmented_cleanup","segment_ids":16,19,}
ou les
{"command":"segmented_cleanup","segment_ids":}

J’ai un tout autre problème :sob:
c’est bien ma liaison Valetudo → JMQTT qui pose problème j’ai essayé la commande Démarrage | valetudo/roborock/command | start mais rien ne ce passe non plus.

Perso je n’avais pas fait les modif suggérées plus haut concernant jmqtt.
Mais cela bouge sur ce plugin :

Je viens de passer la mise à jour puis lancer le scenario : ok

1 « J'aime »

je vais faire la mise à jour de JMQTT
je me pose la question aussi si il n’y a pas un problème avec le fait que j’ai installé ZigBee2MQTT aussi dernièrement avec le plugin ZigBeeLinker

Bonjour Mib88,
Pourrais-tu me montrer la version V4 de ton widget si tu l’as faite?
Je n’arrive pas à adapter ta version V3…

Merci

1 « J'aime »

Salut titom, je reviens sur le lien télégram si tu me le permet.
Moi le link a mon bot jeedom ou meme avec un nouveau bot ne fonctionne pas, la connexion echoue toujours. Aurais tu des pistes à creuser par hasard?

salut salut, j’ai mis ce jour valetudo (pas RE) sur mon Cecotec Conga 5090 mais celui-ci possède des noms de champs à remplir légèrement différents de ceux du tuto, débutant sur mqtt (et donc jmqtt), je n’arrive pas à trouver ou mettre x ou y infos.
J’ai gardé la config stock de jmqtt (mais il faut que je fasse un truc pour que mosquitto se lance au démarrage car je dois le faire manuellement en me loguant sur la console de mon docker sur lequel est installé jeedom et donc jmqtt et donc mosquitto, mais c’est un détail).
Voici donc les champs que j’ai, si cela vous parle, je veux bien un peu d’aide :wink:

Après, idéalement tu utilises un client genre « MQTT Explorer » pour voir les message qui passent :slight_smile:

1 « J'aime »

Bonjour.
Comment gérer vous le remplissage du bac.
En firmware stock le robot alerte sur la nécessité de vider.
Comment avez vous transposer celà sous valetudo ?
Merci pour vos réponses.

Bonjour à tous

Je ne sais pas si ce topic est encore en vie ou non (plus trop vu la date des derniers message), mais j’ai un soucis de restauration de carte (suite à un déménagement)

Il me remet systématiquement mon ancienne carte (appelé ici « appartement » et non ma nouvelle carte (qu’on va appeler « maison »)

j’ai pourtant bien configuré la restauration auto de la map avec la nouvelle carte, mais rien à faire, j’ai toujours mon ancienne qui remonte

y’a t’il une astuce particulière pour changer la carte ?