Soy nuevo en MQTT (y la automatización del hogar en general, estoy mucho más en los sistemas y el lado del desarrollador), flasheé un interruptor WiFi (Sonoff Basic), lo conecté a una instancia de Mosquitto y Home Assistant y hasta ahora todo funciona bien.
Al monitorear el autobús de Mosquitto, veo todo tipo de mensajes, como
tele/hass1/LWT Online
tele/home/room1/switch1/LWT Online
cmnd/home/room1/switch1/POWER OFF
Reconozco home/room1/switch1
cuál definí en mi conmutador WiFi, y el conmutador luego envió algunos temas con el prefijo cmnd
(¿comando? Eso sería sorprendente ya que nadie manipuló el conmutador) y tele
(¿telemetría?). tele/hass1/...
es generado por Home Assistant.
¿Existen estándares o prácticas comúnmente aceptadas para los prefijos?
La documentación de MQTT explica cómo se formatean los temas, pero no introduce ninguna estructura (excepto los temas que comienzan con $
), por lo que supongo que, en el mejor de los casos, sería una mejor práctica (o práctica).
/
, esto es simplemente incorrecto, ya que agrega un segmento nulo adicional al árbol de temas que no es necesario y hace que sea un poco más difícil usar comodines correctamente.Respuestas:
En general, no, no hay estándares para la denominación de temas más allá de las especificaciones MQTT .
Hay muchas opiniones sobre cómo debe construir sus temas MQTT, y no muchas reglas fijas . Si bien esto es un poco inquietante cuando desea saber exactamente cuál es la mejor práctica, la falta de reglas estrictas significa que obtiene mucha flexibilidad con un corredor de MQTT.
A medida que usa Home Assistant, esto reduce un poco las cosas, pero más específicamente, los temas que está viendo son específicos de su conmutador Sonoff. La API se describe en este wiki :
El diagrama mencionado está aquí , aunque se ve mejor en la página wiki vinculada anteriormente.
En general , cualquier jerarquía utilizada será específica del fabricante o del sistema; Los dispositivos Sonoff generalmente seguirán una estructura de tema MQTT documentada, y otros fabricantes podrían usar algo diferente. No todos los fabricantes documentarán bien sus productos (¡o en absoluto!), Así que tenga cuidado al comprar productos.
fuente