Voilà donc la question générale, mais je vais fournir le scénario ici.
J'utilise le serveur Mosquitto pour fournir une communication mqtt entre les modules de relais esp ( Sonoff de Itead ) et Home Assistant . La plupart du temps, cela fonctionne très bien. Chaque module a son propre sujet, et il y a autant de configurations "légères" dans HASS que de modules, de sorte qu'ils peuvent être contrôlés à partir de l'interface Web par des boutons à bascule individuels.
J'ai toutefois connu des situations d'état incohérentes où la lumière est réellement allumée et la bascule dans HASS est affichée comme éteinte (et la situation inverse également). En inspectant les journaux, j'ai découvert que Mosquitto ne publie pas certains messages sur HASS (qui devraient être abonnés à tous les sujets sur l'état des modules). Plus spécifiquement, étant donné 4 modules et ses sujets d'état correspondants ( state/sonoff_xx/POWER
), HASS semble être abonné uniquement aux modules 2 et 4 sujets, mais pas 1 et 3. Ce qui suit est le comportement attendu pour le module 4, le même peut être vérifié pour le autre module de travail, mais la publication sur HASS est manquante pour les deux autres.
Jun 15 19:22:46 nas mosquitto[9486]: Received PUBLISH from sonoff4 (d0, q0, r1, m0, 'stat/sonoff4/POWER', ... (2 bytes))
Jun 15 19:22:46 nas mosquitto[9486]: Sending PUBLISH to home-assistant (d0, q0, r0, m0, 'stat/sonoff4/POWER', ... (2 bytes))
Ce n'est pas une question concernant HASS et les modules relais, mais il s'agit de savoir comment creuser le statut du serveur MQTT qui est censé avoir certains clients abonnés mais, en regardant les journaux, il ne l'a pas fait.
log_type all
enmosquitto.conf
), en fait, j'ai vérifié l'entrée d'abonnement en me connectant à partir d'une console pendant lajournalctl -f
course. Je n'ai pas pu trouver, cependant, des entrées sur les abonnements HASS car cela pourrait se produire il y a quelques jours et journald n'est pas configuré comme persistant, donc je n'avais à portée de main que le démarrage actuel. C'est la raison pour laquelle j'espérais inspecter le statut de Mosquitto.