Piloter un device MQTT depuis Gladys

Lorsque je configure un device MQTT en remontées d’informations avec le topic fourni par Gladys tout se passe parfaitement : les données capteurs sont bien reçues sur l’application.

Cependant quand je désactive l’option “est-ce un capteur” pour piloter ce même device depuis Gladys, impossible de récupérer le message MQTT envoyé par l’application (j’écoute sur le nouveau topic founi).

Ai-je loupé une étape?

Fonctionne du feu de Dieu, j’avais mal configuré la souscription du Topic MQTT.

Par contre je trouve déroutant que le Topic MQTT de publication du device ne soit plus visible (à la faveur du Topic de souscription des commandes Gladys) quand l’option “est-ce un capteur” est désactivée.

Pour bien comprendre il faut aller dans la notice rubrique “API” et “MQTT API” et non pas dans “Intégrations” “MQTT”.

Est-ce que je peux faire une demande de fonctionnalité qui consisterait à ajouter une deuxième ligne “Topic MQTT de souscription” dans la page de configuration des devices MQTT si l’option “est-ce un capteur” est désactivée?

4 « J'aime »

Salut @Fabic ! Merci pour ton retour, peut-être qu’une simple issue Github est mieux pour un retour d’UX aussi simple, c’est pas vraiment une demande de fonctionnalité :slight_smile:

Tu peux créer une issue (en anglais si possible), sur le repo Gladys:

Salut Pierre-Gilles,

Bonne année à tous et au projet Gladys.

Je viens de créer une issue sur Github…

Je profite de ta réponse pour une nouvelle question : quelle est la commande à envoyer dans la discussion Gladys pour passer l’état du device de 0 à 1 et inversement?
Je n’ai pas trouvé la réponse dans la doc

Si c’est une lumière, tu peux dire “allume/éteins la lumière du salon” par exemple :slight_smile:

Je galère un peu avec les commandes de la discussion.

J’ai configuré un Sonnoff sous Tasmota:

Dans la discussion quand je fais “allume la lum” rien ne se passe :

image

Quand je fais “allume le Salon”, le switch Salon passe bien en bleu mais pas la lum:

image

Cependant quand je switch le salon au clic, la “lum” switch également comme prévu.

Je me plante dans la syntaxe?

Tu as bien fait ton branchement ?

oui j’en suis sûr, quand je commute le switch manuellement au clic dans le tableau de bord, j’entends le relais du Sonoff claquer:
image

Hello @Fabic ! :slight_smile:

Déjà pour l’instant on a qu’un seul moyen d’allumer les lampes dans le chat, c’est un fonctionnement par pièce et pas par appareil, donc il faut dire “Allume la lumière du salon”, “Eteins la lumière du jardin”, etc…

Le fichier de questions du modèle ressemble à ça :

Ensuite, lorsque tu dis “allume la lumière du salon”, ce que fait Gladys c’est qu’elle va chercher tous les appareils de la pièce nommée, de catégorie “lumière” et ayant une fonctionnalité “binaire On/Off”.

Il faudrait s’assurer que dans ce cas là, ton appareil est bien configuré en tant que lumière ?

Cette fonctionnalité dans l’intégration Tasmota Sonoff (pouvoir déclarer une prise en lumière) est toute nouvelle, donc c’est pas impossible qu’il y ait des couacs, on va trouver :slight_smile:

Bonjour @pierre-gilles,

Merci pour les informations détaillées, peut-être peux-tu les intégrer dans la doc (j’en profite concernant la doc Tasmota, j’avais dans un premier temps renseigné le topic avec “test/topic”. Or Gladys ne découvre que les Topics “tele/+/+” soit interdiction d’utiliser le / pour ne pas surcharger le Topic. Je pense qu’un petit “Attention ne pas surcharger le Topic” dans la doc permettrait d’éviter à certain pas fute fute comme moi de pas se louper)

J’ai bien configuré en “lumière” le Sonoff, d’ailleurs quand je switch le bouton de la pièce manuellement au clic le comportement est bon.

J’ai simulé un appareil MQTT en “éclairage ON/OFF” (ampoule) et tout fonctionne bien avec la discussion, mais rien à faire avec l’appareil en Tasmota!

image

Du coup me vient une question, peut-on programmer dans les scènes un déclencheur sur un terme d’une discussion? (ex: “ouvvre volet” déclenche action " appareil volet passe à ON")

Tu peux nous faire une PR ? :slight_smile: La doc est open-source et tu sauras mieux expliquer que moi : GitHub - GladysAssistant/v4-website: Gladys Assistant website

Bizarre c’est clairement un bug ça.

Est-ce que tu peux regarder plusieurs choses:

  • Les logs de Gladys quand tu presse le bouton dans l’UI ( docker logs gladys sur le Pi)
  • Eventuellement vérifier la catégorie de ton périphérique pour comprendre si il est bien configuré en « lumière » par le service.

Pour cela sur ton navigateur, sur le dashboard tu fais « clic droit → inspecter l’élément »

Et tu ouvres la requête GET /api/v1/room/garage?expand=devices

Puis tu vas dans l’onglet « preview » pour voir la réponse et tu ouvre le device « lum » et ses features.

ça devrait ressembler à ça:

ce n’est pas possible actuellement non. Après ça peut-être un développement futur pourquoi pas.

Après dans le cas présent là, il y a clairement un bug donc il faut enquêter déjà sur ce qui ne va pas là :slight_smile:

@pierre-gilles,

Merci pour ta disponibilité.

Voici le retour de la requête (‘lum’ est bien en category : light’):

Par contre concernant les logs, après avoir lancé docker logs gladys sur le pi , je n’ai aucun retour de la commande manuel des switchs quels qu’ils soient (Tasmota, MQTT, Garage).

J’ai commencé la PR de la Doc du site sur la version Française. J’espère pouvoir te l’envoyer avant la fin de la semaine, et si OK je ferai la version EN.

ok, ça semble bon.

Tu vois quand même des logs on est d’accord ? Juste tu ne vois rien de spécial quand tu déclenche la commande on/off ?

Petite astuce, tu peux faire:

docker logs gladys -f

Si tu veux que les logs restent à l’écran et s’actualise en live

Génial ! :+1:

Oui, je vois bien les logs (merci pour l’astuce -f) mais aucune nouvelle ligne quand j’active ou désactive le switch de la pièce manuellement ou par les commandes de la discussion.

Ok, il n’y a donc pas d’erreur spécifique dans les logs.

J’avoue que je sèche un peu là :

  • Ton appareil semble bon (c’est bien une catégorie “lumière”, et type “binaire”)
  • Pas de logs d’erreur

Je ne vois pas pourquoi autant dans l’UI que dans les commandes vocales il ne repère pas que cette lumière doit être allumée…

Est-ce que l’erreur ne peut pas venir de plus loin ? Côté de la prise individuellement tout fonctionne on est d’accord ? Quand tu clique sur la lumière elle s’allume bien on est d’accord ?

Du coup ça veut juste dire qu’en entrée c’est bon, le relais claque mais en sortie ça donne quoi ?

Oui tout fonctionne parfaitement quand je clique sur « lum » ou « garage ».
J’ai vraiment le sentiment que c’est le service Tasmota qui déconne sur cette fonctionnalité.

Voici les captures d’écran:

Quand je passe le switch garage de OFF à ON et inversement au clic tout fonctionne (le Sonoff clac, la lampe s’allume, les messages sont envoyés sur les topics MQTT)

image
Après clic switch garage
image

Pour ça, c’est nickel.

Maintenant, avec les commandes « allume » et « éteins » le garage (qui normalement switch le bouton garage comme précédemment):

Résultat
image

Gladys répond dans la discussion qu’elle n’a pas réussi à allumer la lumière, ce qui est partiellement vrai car elle a allumé le device MQTT (message bien reçu sur le Topic du device MQTT).
Le sonoff n’a pas claqué et rien sur le Topic du Sonoff (normal le switch lum est resté sur OFF).

Du coup on sait que Gladys sait qu’elle a problème de switch du Tasmota grâce à la conversation, mais je confirme, rien dans les logs.

Tu parles des messages publiés par Tasmota lorsque le relais claque?

Ok! Je sèche complètement je t’avoue, je suis à court d’idée !

Si quelqu’un qui lit cette conversation a une idée…

Eventuellement @Tlse-vins si tu passes dans le secteur, pourrais-tu vérifier que le comportement que je décris entre Tasmota et la commande d’allumage par la Discussion est identique sur un de tes Sonoff?

Je suis entrain d’emménager dans ma nouvelle maison et je n’ai pas encore tout réinstallé.
J’ai juste rebranché le Pi avec Gladys pour la mettre à jour.
Je regarde dès que je peux.