мНет описания правки |
м (→Общие сведения) |
||
| Строка 4: | Строка 4: | ||
== Общие сведения == | == Общие сведения == | ||
Статья содержит обобщенные данные о структуре MQTT-топиков, посредством которых сервисы HOMEd общаются друг с другом, и не включает в себя описание данных, которые содержат эти топики. Для ознакомления со структурой данных можно почитать соответствующие статьи на страницах сервисов в этой вики или воспользоваться приложением [http://mqtt-explorer.com MQTT Explorer] для самостоятельного изучения (на мой взгляд - ''там нет ничего сложного''). | Статья содержит обобщенные данные о структуре MQTT-топиков, посредством которых сервисы HOMEd общаются друг с другом, и не включает в себя описание данных, которые содержат эти топики. Для ознакомления со структурой данных можно почитать соответствующие статьи на страницах сервисов в этой вики или воспользоваться приложением [http://mqtt-explorer.com MQTT Explorer] для самостоятельного изучения (на мой взгляд - ''там нет ничего сложного''). | ||
В описании топиков используются следующие шаблоны: | |||
* <code class="value">{prefix}</code> - корневой топик, как указано в файле конфигурации любого сервиса | |||
* <code class="value">{prefix}</code> - название сервиса в нижнем регистре, например, <code class="value">recorder</code> или <code class="value">zigbee</code> | |||
* <code class="value">queued</code> - не прерывать выполнение, а по окончании выполнить новый набор действий | |||
* <code class="value">parallel</code> - не прерывать выполнение и выполнить новый набор действий параллельно с текущим | |||
=== service === | === service === | ||
Версия от 16:02, 6 августа 2025
Общие сведения
Статья содержит обобщенные данные о структуре MQTT-топиков, посредством которых сервисы HOMEd общаются друг с другом, и не включает в себя описание данных, которые содержат эти топики. Для ознакомления со структурой данных можно почитать соответствующие статьи на страницах сервисов в этой вики или воспользоваться приложением MQTT Explorer для самостоятельного изучения (на мой взгляд - там нет ничего сложного).
В описании топиков используются следующие шаблоны:
{prefix}- корневой топик, как указано в файле конфигурации любого сервиса{prefix}- название сервиса в нижнем регистре, например,recorderилиzigbeequeued- не прерывать выполнение, а по окончании выполнить новый набор действийparallel- не прерывать выполнение и выполнить новый набор действий параллельно с текущим
service
{prefix}/service/{service}[/instance]
Топики, в которые сервисы HOMEd публикуют состояние своей доступности. Данные топики являются LWT-топиками, это значит, что при потере соединения между каким-либо сервисом и брокером (по причине плохой связи или некорректного завершения работы сервиса), брокер сам опубликует в соответсвующий топик сообщение с содержимым {"status":"offline"}.
status
{prefix}/status/{service}[/instance]
Топики, в которые сервисы HOMEd публикуют свои версии и статические данные, такие, как списки устройств, настройки дашбордов и автоматизаций.
device
{prefix}/device/{service}[/instance]/{deviceId}
Топики, в которые сервисы HOMEd, работающие с устройствами, публикуют состояния доступности своих устройств. Помимо прочего, сервис ZigBee публикует в эти топики метки времени "lastSeen", указывающие на момент получения последних данных от устройства.
expose
{prefix}/expose/{service}[/instance]/{deviceId}
Топики, в которые сервисы HOMEd, работающие с устройствами, публикуют данные о способностях устройств и соответствующие им опции.
fd - from device
{prefix}/fd/{service}[/instance]/{deviceId}[/endpointId]
Топики, в которые сервисы HOMEd, работающие с устройствами, публикуют данные, полученные от устройств. Помимо прочего, сервис ZigBee публикует в эти топики параметр "lastSeen", указывающий на качество связи с устройством (с ближайшим к координатору роутером, в случае, когда устройство работает через роутер).
td - to device
{prefix}/td/{service}[/instance]/{deviceId}[/endpointId]
Топики, из которых сервисы HOMEd, работающие с устройствами, получают данные для управления устройствами. Эти данные публикуются, например, сервисом автоматизаций.