Cours:BUTiot MQTT : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
(Exercice 1)
 
(7 révisions intermédiaires par le même utilisateur non affichées)
Ligne 5 : Ligne 5 :
 
</center>
 
</center>
  
Le travail de cette étape va consister à envoyer et recevoir des messages via le protocole MQTT, en ligne de commande.
+
Le travail de cette étape va consister à envoyer et recevoir des messages via le protocole MQTT, en ligne de commande avec mosquitto:
 +
* ''broker'' (serveur) mosquitto
 +
* publication de message
 +
* souscription à des topics
  
 
=== Exercice 1 ===
 
=== Exercice 1 ===
  
 
{{Todos|  
 
{{Todos|  
Lire ce document et faire les exercices :  [[Fichier:tutorial_mqtt.pdf]] (source J.Y. Tigli : http://www.tigli.fr)
+
Lire le document et faire les exercices (partie 2.5) :  [[Fichier:tutorial_mqtt.pdf]] (source J.Y. Tigli : http://www.tigli.fr)
 
}}
 
}}
  
Ligne 25 : Ligne 28 :
 
=== Exercice 2 ===
 
=== Exercice 2 ===
  
Échanger des informations entre deux machines (par binôme)
+
{{Todos| Échanger des informations entre deux machines (par binôme)}} :
* Faire simple : envoyer un message sur un seul topic
+
* Faire simple dans un premier temps : envoyer un message sur un seul topic
 
* En utilisant une des deux machines (ou les deux) en broker :
 
* En utilisant une des deux machines (ou les deux) en broker :
 
** L'IP de votre machine est accessible par la commande <code>ipconfig</code>
 
** L'IP de votre machine est accessible par la commande <code>ipconfig</code>
 
** Il sera nécessaire de :
 
** Il sera nécessaire de :
*** interrompre le daemon <code>mosquitto</code> en le tuant dans le gestionnaire des tâches
 
*** de lancer le broker par la commande <code>mosquitto.exe</code>
 
 
*** de modifier au préalable le fichier <code>mosquitto.conf</code>
 
*** de modifier au préalable le fichier <code>mosquitto.conf</code>
 
<source lang=bash>
 
<source lang=bash>
listener 1883 # vers la ligne 232 : permet l'acces sur le port 1883 par IP
+
listener 1883 0.0.0.0 # vers la ligne 232 : permet l'acces sur le port 1883 par IP
 
allow_anonymous true # vers la ligne 529 : autorise les connections externes
 
allow_anonymous true # vers la ligne 529 : autorise les connections externes
 
</source>
 
</source>
 +
*** interrompre et relancer le service <code>mosquitto</code>. Pour windows : <code>net stop mosquitto</code> puis <code>net start mosquitto</code>
 +
  
 
=== Ressources externes ===
 
=== Ressources externes ===
  
 
* MQTT Explorer : http://mqtt-explorer.com/
 
* MQTT Explorer : http://mqtt-explorer.com/
 +
* Comprendre MQTT : https://www.lemagit.fr/conseil/Internet-des-Objets-bien-comprendre-MQTT
 +
* (Si besoin) Installation des outils (plusieurs windows 10 + 1 W7+ 1 linux)
 +
** Informations sur https://mosquitto.org pour tous les os
 +
* Un tuto MQTT : https://hackmd.io/@pmanzoni/BJ9hwSfhG

Version actuelle datée du 27 novembre 2023 à 16:33

Retour à la page du cours

MQTT : envoyer/recevoir des données

Le travail de cette étape va consister à envoyer et recevoir des messages via le protocole MQTT, en ligne de commande avec mosquitto:

  • broker (serveur) mosquitto
  • publication de message
  • souscription à des topics

Exercice 1

    Todos.png Lire le document et faire les exercices (partie 2.5) : Fichier:Tutorial mqtt.pdf (source J.Y. Tigli : http://www.tigli.fr)


Note pour les utilisateurs de Windows : il sera préférable d’utiliser la console powerShell en mode administrateur (intégré à Windows) en guise de terminal plutôt que la rustique invite de commande.

Vous testerez ces brokers :

  • Broker de test : test.mosquitto.org
  • Broker graphique : https://lp-iot.cloud.shiftr.io : (visualisation des messages entrants et sortants).
    • Il est nécessaire de fournir un numéro d’utilisateur et un mot de passe.
    • Exemple mosquitto_pub -u lp-iot -P vHm5YuMEPJcpNfss -h lp-iot.cloud.shiftr.io -t NomDuTopic -m ContenuDuMessage
  • Broker lancé par défaut sur chaque machine
  • Broker interne (10.98.35.245)

Exercice 2

    Todos.png Échanger des informations entre deux machines (par binôme) :

  • Faire simple dans un premier temps : envoyer un message sur un seul topic
  • En utilisant une des deux machines (ou les deux) en broker :
    • L'IP de votre machine est accessible par la commande ipconfig
    • Il sera nécessaire de :
      • de modifier au préalable le fichier mosquitto.conf
listener 1883 0.0.0.0 # vers la ligne 232 : permet l'acces sur le port 1883 par IP
allow_anonymous true # vers la ligne 529 : autorise les connections externes
      • interrompre et relancer le service mosquitto. Pour windows : net stop mosquitto puis net start mosquitto


Ressources externes