Sujets connexes
[AI Routeur] Installation du MQTT Broker (Mosquitto)
MQTT [Transport de télémétrie par file d'attente de messages] est un protocole de messagerie léger couramment utilisé pour la communication entre les appareils IoT. Dans Home Assistant, MQTT est souvent utilisé pour l'intégration de l'automatisation. Par exemple, lorsque vous utilisez Frigate pour l’analyse vidéo [comme la détection de l’entrée de quelqu’un dans une zone spécifique], Frigate enverra un message à Home Assistant via MQTT, qui pourra ensuite déclencher d’autres automatisations [comme allumer les lumières ou envoyer des notifications].
Rôles MQTT :
Quels sont les rôles dans le protocole MQTT ? Prenons le scénario d’intégration des caméras IP Frigate avec Home Assistant comme exemple :
- Publisher : Frigate. Lorsque Frigate détecte un événement [par exemple, une personne entre dans une zone spécifique] à partir du flux de la caméra IP, elle publie cet événement sous forme de message au broker MQTT.
- Subscriber : Home Assistant. Il s’abonne au sujet spécifique publié par Frigate. Lorsque Home Assistant reçoit le message, il peut déclencher des automatisations [telles que l’allumage des lumières ou l’envoi de notifications].
- Broker : Mosquitto. Sert d’intermédiaire, recevant les messages de Frigate et les transmettant aux abonnés Home Assistant. Dans cet exemple, Frigate et Home Assistant ne communiquent pas directement, mais échangent des messages via le broker MQTT Mosquitto.
1. Prérequis
- Assurez-vous de bien connaître les opérations de base de Portainer. Vous pouvez consulter le guide Comprendre Docker, Images, Conteneurs, et Portainer avec l’exemple AdGuard Home.
- Vous devrez utiliser l’éditeur de texte vi pour certaines étapes. Si vous ne le connaissez pas, recherchez un tutoriel vi de base en ligne.
2. Installer Mosquitto
2-1. Déployer Mosquitto à l’aide de Portainer :
- Allez à la page [Stacks] dans Portainer et cliquez sur [Ajouter Stack].
- Nommez cette stack mosquitto.
- Dans le [Éditeur Web], collez la configuration suivante :

version: "3.8" services: # --- Broker MQTT (Eclipse Mosquitto) --- mosquitto: image: eclipse-mosquitto:2 nom_du_conteneur: mosquitto redémarrer: sauf_si_arrêté volumes: - mosquitto_config:/mosquitto/config - mosquitto_data:/mosquitto/data - mosquitto_log:/mosquitto/log
ports: - "1883:1883" # MQTT - "9001:9001" # WebSocket volumes: mosquitto_config: mosquitto_data: mosquitto_log: |
2-2. Cliquez sur le bouton [Déployer la pile] pour terminer le déploiement.

3. Configurer Mosquitto
3-1. Allez à la page [Conteneurs] dans Portainer et trouvez mosquitto.
3-2. Cliquez sur mosquitto pour entrer dans la page de détails du conteneur, puis cliquez sur l'onglet [Console].

3-3. Dans le champ [Commande], saisissez /bin/shet cliquez sur [Connecter] pour ouvrir l’interface en ligne de commande du conteneur.

3-4. Dans la ligne de commande, saisissez la commande suivante pour créer un fichier de mot de passe :
mosquitto_passwd -c -b /mosquitto/config/passwd <nom d’utilisateur> <mot de passe>
Remplacez <nom d’utilisateur> et <mot de passe> par le nom d’utilisateur et le mot de passe souhaités (utilisez uniquement des lettres et des chiffres, et ne commencez pas par #). Pour confirmer que le fichier a été créé : exécutez ls /mosquitto/config pour vérifier que mosquitto.conf et passwd existent tous les deux.

3-5. Modifiez le fichier de configuration de Mosquitto mosquitto.conf en entrant :
vi /mosquitto/config/mosquitto.conf

3-6. Dans le mosquitto.conf, ajoutez les paramètres suivants pour spécifier le chemin du fichier de mot de passe et désactiver l'accès anonyme : Appuyez sur i pour passer en mode insertion, puis ajoutez le contenu suivant au début ou à la fin du fichier : Vous pouvez utiliser ctrl + shift + v pour coller du texte dans l'éditeur vi.
allow_anonymous false password_file /mosquitto/config/passwd listener 1883 0.0.0.0 socket_domain ipv4 |

3-7. Appuyez sur Esc, tapez :wq, et appuyez sur Entrée pour enregistrer et quitter l’éditeur. (Si vous souhaitez annuler les modifications, tapez :q! et appuyez sur Entrée )

3-8. Redémarrez le conteneur Mosquitto pour appliquer les paramètres :
- Retournez à la page [Conteneurs] dans Portainer et trouvez mosquitto.
- Cliquez sur mosquitto pour accéder à la page de détails du conteneur, puis cliquez sur le bouton [Redémarrer].

4. Configurer l’intégration MQTT dans Home Assistant
4-1. Dans Home Assistant, accédez à [Paramètres] > [Appareils & Services] et cliquez sur [Ajouter une intégration].
4-2. Recherchez et sélectionnez [MQTT].

4-3. Dans la boîte de dialogue qui s'affiche, sélectionnez MQTT et saisissez les informations suivantes :
- Broker : localhost ou l'adresse IP de votre carte AI
- Port : 1883
- Nom d'utilisateur : Le nom d'utilisateur que vous avez défini pour Mosquitto
- Mot de passe : Le mot de passe que vous avez défini pour Mosquitto


4-4. Une fois terminé, vous pouvez utiliser un client MQTT pour vous connecter à Mosquitto.

Comment obtenir l'(utilitaire / micrologiciel) ?
Vous pouvez télécharger les derniers drivers, logiciels, micrologiciels et manuels d'utilisation dans le Centre de téléchargement ASUS.
Si vous avez besoin de plus d'informations sur le Centre de téléchargement ASUS, veuillez consulter ce lien.