# MQTT : Ai-je compris le fonctionnement ?\[spoiler alert\] non

**URL:** <https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521>\
**Category:** Configuration\
**Tags:** feature-integration\
**Created:** [Septembre 14, 2021, 1:05 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521 "2021-09-14T13:05:20Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![bong101](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bong101/32/9808_2.png) [@bong101](https://community.gladysassistant.com/u/bong101)\
**Post date:** [Septembre 14, 2021, 1:05 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/1 "2021-09-14T13:05:20Z")

</div>

Bonjour à tous

Je suis le projet depuis au moins la version 3, je l’ai installé plusieurs fois, sans parvenir à bien gerer correctement mes peripheriques…J’en parlerai une autre fois, mais ZWAVE ( le matos, pas l integration dans Gladys) n’a jamais bien fonctionné, grosse desillusion.

La semaine derniere, j’ai vu la video de @Pierre-Gilles ( dont je salue l’immense travail ici), et ça m’a donné l idee de repartir sur une install, en 4.5, pour profiter du multi-dashboard  
J’attends aussi les courbes de données, car les anciennes n’etaient pas top!!

Le point qui me tracasse maintenant, c’est MQTT avec un broker sur mon reseau local  
Gladys semble bien y acceder

 ![Capture d’écran du 2021-09-14 14-53-29](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/4/4a54b0ce3097a0658a63b48a76234888ad268518.png)

Sur mon broker, je suis en phase de test/integration, j’ai les topics suivants

![Capture d’écran du 2021-09-14 14-55-08](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/0/038a271a7ecf94336d14fa7b4a7239d1be34a037.png)

Lorsque je teste par exemple mqtt:Internet:data:Indice\_UV, j’ai un message d’erreur

 ![Capture d’écran du 2021-09-14 15-00-47](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/a/af82f585882bd970d63014c60bd96b0defc41ba6.png)

Bref, je n’ai compris cela fonctionne. J’ai regardé les messages ici, mais non, je n’ai rien compris…

Si vous voyez ou ça peche, je suis preneur.  
D’avance merci  
Olivier

---

<div class="post-metadata">

**Author:** ![VonOx](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/vonox/32/10128_2.png) [@VonOx](https://community.gladysassistant.com/u/VonOx)\
**Post date:** [Septembre 14, 2021, 2:01 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/2 "2021-09-14T14:01:52Z")

</div>

Je repose la doc API MQTT =\> [MQTT API | Gladys Assistant](https://gladysassistant.com/fr/docs/api/mqtt-api)  
La doc du service =\> [MQTT | Gladys Assistant](https://gladysassistant.com/fr/docs/integrations/mqtt)

* * *

a priori tu veux allez lire des valeurs sur ton broker

Gladys impose une structure particulière , toi tu as `Internet/data/#`

Gladys veux `gladys/master/device/:device_external_id/feature/:device_feature_external_id/state`

Ce qui dans ton cas donnerai

`gladys/master/device/mqtt:Internet/feature/mqtt:Internet:IndiceUV/state` par exemple

Je sais pas comment tu pousse tes données sur ton broker mais il va falloir revoir cette partie pour respecter le schéma de l’API MQTT Gladys

Une fois cela fait tu dois créer dans Gladys un device ‘Internet’ avec les fonctionnalités Indice UV , Qualité air etc…

---

<div class="post-metadata">

**Author:** ![bong101](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bong101/32/9808_2.png) [@bong101](https://community.gladysassistant.com/u/bong101)\
**Post date:** [Septembre 14, 2021, 2:58 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/3 "2021-09-14T14:58:42Z")

</div>

Merci @VonOx pour cette reponse rapide

Alors, oui, je veux aller chercher des infos sur internet, et les ranger dans un broker  
Et ajouter des infos de mes capteurs aussi…ce ne sera pas dans Internet…

Maintenant, il faut que je trouve comment je dois ranger les infos, ya rien de figé sur mon broker, tout est à faire, mais il faut que cela soit simple

Mais là, avec les docs et les explications, je ne comprends **RIEN**. _Je precise, je suis informaticien, je fais du bash, du python, du ansible toute la journée, mais là non, je ne comprends rien._

La syntaxe me parait redondante et compliquée

Mettons que j’ai un capteur de temperature situé dans le salon à base de DS1820 qui publie la temperature en Celsius

J’amerais avoir sur mon broquer MQTT un topic **Salon/Temperature** avec la temperature, et peut-etre la date de la derniere temperature saisie.  
Donc ca donnerait

- _Salon/Temperature/Temperature_\*
- _Salon/Temperature/Date\_derniere\_Temperature_\*

Comment je configure ça dans Gladys ? Et y a til une syntaxe générique genre VALEUR={{PROTOCOLE}}:{{HOST}}:{{PORT}}:{{TOPIC}}

Merci d’avance  
Olivier

---

<div class="post-metadata">

**Author:** ![GBoulvin](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/gboulvin/32/10006_2.png) [@GBoulvin](https://community.gladysassistant.com/u/GBoulvin)\
**Post date:** [Septembre 14, 2021, 3:10 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/4 "2021-09-14T15:10:10Z")

</div>

Le plus simple est de créer ton device MQTT dans Gladys et de copier le lien donné à la fin du formulaire. C’est sur ce topic que tu postes la valeur que tu veux que Gladys reçoive…  
Ça aide?

---

<div class="post-metadata">

**Author:** ![VonOx](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/vonox/32/10128_2.png) [@VonOx](https://community.gladysassistant.com/u/VonOx)\
**Post date:** [Septembre 14, 2021, 3:49 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/5 "2021-09-14T15:49:30Z")

</div>

@GBoulvin à tout à fait raison

Sur ton post on voit que tu crée un device mais sans fonctionnalité. De fait c’est une coquille vide.

Quand tu ajoutera des feature Gladys te donnera le bon topic

La structure peut paraître compliqué, mais elle est nécessaire ( c’est une API) , c’est le seul moyen pour que Gladys fasse la correspondance entre du texte côté mqtt et un device avec des features, une température fait référence à une unité etc…

---

<div class="post-metadata">

**Author:** ![bong101](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bong101/32/9808_2.png) [@bong101](https://community.gladysassistant.com/u/bong101)\
**Post date:** [Septembre 14, 2021, 4:25 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/6 "2021-09-14T16:25:06Z")

</div>

Daccord, MQTT doit s’adapter à Gladys, et pas l inverse.

Bon, je cree un appareil MAURICE qui a pour fonctionnalité Temperature qui se trouve dans le salon

 ![Capture d’écran du 2021-09-14 18-18-08](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/2/2ece8b8f9dbbe28be8b70573ea2ee48428fdaf4e.png)

 ![Capture d’écran du 2021-09-14 18-19-22](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/c/cadfdb80b92a677a123c2cdedba775964bd65c0a.png)

J’ai bien compris que je devais publier la valeur de MAURICE sur le topic que Gladys m impose dans Topic MQTT

L erreur survient lorsque je sauvegarde.  
Alors qu’est ce je ne fais pas bien ?

---

<div class="post-metadata">

**Author:** ![VonOx](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/vonox/32/10128_2.png) [@VonOx](https://community.gladysassistant.com/u/VonOx)\
**Post date:** [Septembre 14, 2021, 4:31 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/7 "2021-09-14T16:31:27Z")

</div>

ID externe de la fonctionnalité, tu n’as rien renseigné , l’unité peut être utile aussi .

mqtt:temperature par exemple

---

<div class="post-metadata">

**Author:** ![bong101](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bong101/32/9808_2.png) [@bong101](https://community.gladysassistant.com/u/bong101)\
**Post date:** [Septembre 14, 2021, 4:32 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/8 "2021-09-14T16:32:16Z")

</div>

OK, ca marche maintenant

![Capture d’écran du 2021-09-14 18-29-25](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/8/819e94d7da2028b1e53f050319da2af136ac123f.png)  
 ![Capture d’écran du 2021-09-14 18-31-05](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/0/0b96575eaddb069d5ee91aee5ad8fb8abb770115.png)

Merci à vous deux…je vais avancer par analogie pour inserer d’autres choses. Encore merci

---

<div class="post-metadata">

**Author:** ![VonOx](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/vonox/32/10128_2.png) [@VonOx](https://community.gladysassistant.com/u/VonOx)\
**Post date:** [Septembre 14, 2021, 4:36 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/9 "2021-09-14T16:36:14Z")

</div>

Super tu n’as plus qu’a créer d’autres feature ou d’autres device + feature ! 🙂

Autre conseil, tu n’as pas besoin de renseigner un horadatage =\> _Date\_derniere\_Temperature_  
Gladys se charge de stocker la valeur dans sa propre bdd avec l’horodatage. ( Pour exploiter l’historique via des courbes etc )

---

<div class="post-metadata">

**Author:** ![bong101](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bong101/32/9808_2.png) [@bong101](https://community.gladysassistant.com/u/bong101)\
**Post date:** [Septembre 14, 2021, 4:43 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/10 "2021-09-14T16:43:43Z")

</div>

C’est noté pour l horodatage pas forcement necessaire pour Gladys…Par contre, j’en aurais peut-etre besoin ailleurs…

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Septembre 15, 2021, 1:34 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/11 "2021-09-15T01:34:44Z")

</div>

> [@bong101](#):
>
> OK, ca marche maintenant

Pense à mettre une unité pour la température, ça fait un peu vide sans l’unité là 🙂

---

<div class="post-metadata">

**Author:** ![bong101](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bong101/32/9808_2.png) [@bong101](https://community.gladysassistant.com/u/bong101)\
**Post date:** [Septembre 15, 2021, 5:02 UTC](https://community.gladysassistant.com/t/mqtt-ai-je-compris-le-fonctionnement-spoiler-alert-non/6521/12 "2021-09-15T17:02:26Z")

</div>

Bien vu, c’est vrai que c’est tout de suite mieux… 😀
