Modbus/Database/Items: различия между версиями

Материал из HOMEd Wiki
мНет описания правки
Строка 3: Строка 3:


== Общие сведения ==
== Общие сведения ==
Биндинги позволяют связывать сторонние MQTT-топики и их данные с устройством HOMEd Custom. Биндинги описываются как JSON-обект, ключами которого являются имена описываемых свойств. Структура описания биндингов выглядит так:
Карта регистров позволяет описывать схему данных для любых устройств, не выходящих за рамки стандарта Modbus. Карта регистров описывается как массив JSON-объектов, каждый элемент которого добавляет соответствующую [[Common/Exposes|способность]]. Структура описания биндингов выглядит так:
<syntaxhighlight lang="json">
<syntaxhighlight lang="json">
{
{
   ...
   ...
   "real": true,
   "type": "customController",
  "exposes": ["switch", "temperature"],
   "items":
   "bindings":
   {
   {
    "status":
 
    {
      "inTopic": "switch/status/topic",
      "inPattern": "{{ on if json.switch == true else off }}",
      "outTopic": "switch/command/topic",
      "outPattern": "{\"switch\":{{ true if value == on else false }}}"
    },
    "temperature":
    {
      "inTopic": "temperature/status/topic",
      "inPattern": "{{ json.temperature }}"
    }
   }
   }
   ...
   ...
}
}
</syntaxhighlight>
</syntaxhighlight>
{{Warning|Биндинги работают только в случае, когда в настройках устройства включен параметр <code>real</code>.}}
{{Warning|Карта регистров работает только для устройств типа <code>"customController"</code>.}}
{{Warning|Карта регистров поддерживает только [[Common/Exposes#Типовые способности|типовые]] способности устройств.}}


== Параметры регистров ==
== Параметры регистров ==

Версия от 11:13, 24 марта 2025

HOMEd > Modbus > База данных > Карта регистров

Общие сведения

Карта регистров позволяет описывать схему данных для любых устройств, не выходящих за рамки стандарта Modbus. Карта регистров описывается как массив JSON-объектов, каждый элемент которого добавляет соответствующую способность. Структура описания биндингов выглядит так:

{
  ...
  "type": "customController",
  "items":
  {

  }
  ...
}

Карта регистров работает только для устройств типа "customController".

Карта регистров поддерживает только типовые способности устройств.

Параметры регистров

inTopic

MQTT-топик, в который устройство публикует состояние описываемого свойства. Является обязательным в случае, если отсутствует параметр outTopic.

inPattern

Шаблон для получения состояния описываемого свойства из топика inTopic. В случае отсутствия этого параметра, данные будут использованы без изменений. Подробнее в разделе шаблоны.

outTopic

MQTT-топик, который необходимо опубликовать для изменения состояния описываемого свойства. Является обязательным в случае, если отсутствует параметр inTopic.

outPattern

Шаблон для передечи состояния описываемого свойства в топик outTopic. В случае отсутствия этого параметра данные будут опубликованы без изменений. Подробнее в разделе шаблоны.