Publication de messages avec l'utilitaire mosquitto_pub
L'outil en ligne de commande mosquitto_pub permet d'envoyer des données vers un courtier MQTT. Plusieurs options de configuration sont disponibles pour adapter le comportement de publication :
-h: Définit l'adresse du courtier (nom de domaine ou IP).-p: Indique le port d'écoute du courtier.-t: Spécifie le sujet (topic) cible de la publication.-m: Contient le texte du message à transmettre.-f: Permet de lire le contenu du message depuis un fichier local.-q: Règle le niveau de Qualité de Service (QoS) parmi 0, 1 ou 2. La valeur par défaut est 0, ce qui signifie aucun accusé de réception ni retransmission.-r: Active l'option de message retenu (retain).-uet-P: Fournissent les identifiants d'authentification (utilisateur et mot de passe).-i: Assigne un identifiatn unique au client.-c: Empêche la réinitialisation de la session lors de la déconnexion (clean session désactivé).-F: Désactive la vérification du certificat du serveur (mode non sécurisé).
Voici un exemple pratique où l'on envoie le texte « Coucou MQTT » sur le sujet capteurs/temp avec une authentification :
mosquitto_pub -h 127.0.0.1 -t capteurs/temp -m "Coucou MQTT" -u admin -P monMotDePasse
Il est également possible d'injecter le contenu d'un fichier directement dans un sujet :
mosquitto_pub -t capteurs/temp -f donnees.json
Pour consulter la totalité des options disponibles, la commande d'aide est :
mosquitto_pub --help
Souscription à des sujets avec mosquitto_sub
Pour écouter les messages transitant par un courtier, l'utilitaire mosquitto_sub est employé. Ses principaux paramètres de configuration sont :
-h: Adresse réseau du courtier MQTT.-p: Port de connexion.-t: Sujet à écouter.-q: Niveau de QoS souhaité pour la souscription.-uet-P: Paramètres d'authentification.-c: Conserve l'état de la souscription après une déconnexion.-C: Sélectionne la version du protocole MQTT à utiliser.-i: Définit l'identifiant du souscripteur.-F: Ignore la validation des certificats TLS.-N: Affiche uniquement les nouveaux messages reçus.-R: Exclut l'affichage des messages conservés (retanied).
Exemple de connexion à un courtier local pour écouter le sujet capteurs/temp de manière sécurisée :
mosquitto_sub -h 127.0.0.1 -t capteurs/temp -u admin -P monMotDePasse
La liste complète des arguments peut être affichée via :
mosquitto_sub --help