Avec la domotique Jeedom, je suis passé aux plugins z2m, zwavejs et jMQTT, j’ai donc installé et configuré Mosquitto pour mes besoins. C’est un broker MQTT comme il en existe plusieurs.
Voici quelques bases d’explications, que vous pouvez compléter avec la documentation officielle du protocole.
architecture de communication de MQTT
Nous avons un broker, celui qui passe les messages.
Des clients Publisher vont envoyer des messages avec un nom appelé Topic
Des clients Subscriber vont recevoir des messages s’ils sont abonnés à ce Topic
architecture du protocole MQTT
C’est organisé en Topic / sujets
On peut faire un topic racine : toto
Et des sous topic :
- toto/test1/o1
- toto/test1/o2
- toto/test2/o1
- toto/test2/o2
- toto/test3
On peut souscrire à plusieurs Topic via toto/*
ou toto/#
Il n’est pas possible de mettre #
pour la racine
On peut s’inscrire à plusieurs sous Topic via le + : toto/+/o1
MQTT Broker
Le plus utilisé : Mosquitto. Il est open-source et simple de configuration.
Organisation des Topic Jeedom
Il faut vous organiser à l’avance pour l’arborescence des topic qui seront utilisé chez vous. Voici ce que j’ai organisé chez moi pour les niveaux :
- mettre le protocole passerelle
- mettre la pièce ou une référence à la pièce
- mettre le device
- mettre les topics du device
Cela permet par exemple de matcher tous les objets du bureau quelque soit son protocole!
- MQTT direct : ip/piece/device/xxx
- si plusieurs composant pour un seul objet, mettre cet objet devant le device : ip/display-rdc/matrixled-temp/xxx et ip/display-rdc/matrixled-spotify/xxx par exemple
- modbus2mqtt : modbus/rdc/device/xxx
- zigbee2mqtt : zigbee/bureau/device/xxx
- zwaveJS : zwave/bureau/device/xxx
clients
- Windows : MQTT Explorer permet le MQTT en clair, en MQTTS avec certificat serveur uniquement ou avec la pair de certificat/clé client
- Android j’en cherche encore un bon pour le debug
Laisser un commentaire