Mosquitto: Comprendre les topics MQTT

Cette documentation fait partie du guide Premiers pas. Consultez le guide complet ici : Comment débuter avec Mosquitto.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution Mosquitto MQTT cloud prête à l'emploi qui offre de nombreux avantages, notamment :

  • Echanges et transferts de messages illimités.
  • Authentification de périphériques illimités via une API externe.
  • ACLs avancées sur les topics, les utilisateurs et les actions.
  • Nom de domaine personnalisable sécurisé en HTTPS (par exemple, https://mqtt.votre-entreprise.com).
  • Mises à jour simplifiées en un clic.
  • Performance optimale et sécurité renforcée grâce à une VM privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il suffit de 5 minutes pour essayer la solution Mosquitto MQTT cloud hosting de Stackhero !

MQTT organise la communication autour de "topics", qui servent de canaux pour publier et s'abonner à des données. Les appareils publient des messages sur des topics spécifiques ou s'y abonnent pour recevoir les mises à jour correspondantes.

Les topics dans MQTT sont sensibles à la casse, doivent contenir des caractères UTF-8 et comporter au moins un caractère. La hiérarchie des topics est définie à l'aide du caractère slash (/).

Voici un exemple de configuration pour des appareils IoT collectant des données de température et d'humidité, identifiés par leur adresse MAC :

  • Pour un appareil avec l'adresse MAC 00:00:00:00:00:00 :

    • Température : devices/00:00:00:00:00:00/temperature
    • Humidité : devices/00:00:00:00:00:00/humidity
  • Pour un appareil avec l'adresse MAC 11:11:11:11:11:11 :

    • Température : devices/11:11:11:11:11:11/temperature
    • Humidité : devices/11:11:11:11:11:11/humidity

Les applications peuvent s'abonner à un topic précis, comme devices/00:00:00:00:00:00/temperature, pour recevoir les données de l'appareil IoT concerné.

MQTT prend en charge les jokers pour une gestion efficace des topics :

  • Le joker + correspond à un seul niveau dans la hiérarchie des topics. Par exemple, s'abonner à devices/+/temperature permet de recevoir les topics comme devices/1/temperature mais pas devices/1/2/temperature.

  • Le joker # correspond à plusieurs niveaux. Par exemple, devices/# couvre les topics comme devices/1/temperature, devices/2/humidity et devices/1/2/somethingElse.