м (→json) |
м (→Шаблоны) |
||
Строка 41: | Строка 41: | ||
== Шаблоны == | == Шаблоны == | ||
Шаблон | Шаблон это простая строка, которая может содержать части текста, обернутые двойными фигурными скобками <code><nowiki>{{ ... }}</nowiki></code>. Эти части теста будут автоматически заменяется на значение, зависящее от набора элементов шаблона. | ||
=== <code>json</code> === | === <code>json</code> === | ||
Этот элемент шаблона применим к случаям, когда устройство публикует свое состояние в виде JSON-объекта, и позволяет получать из этого объекта необходимые параметры. Примеры использования: | Этот элемент шаблона применим к случаям, когда устройство публикует свое состояние в виде JSON-объекта, и позволяет получать из этого объекта необходимые параметры. Примеры использования: | ||
{{#tag:pre|<nowiki>{{ | {{#tag:pre|<nowiki>{{ json.pressure }}</nowiki>}} | ||
{{#tag:pre|<nowiki>{{ json.values[2].status }}</nowiki>}} | |||
[[Category:Custom]] | [[Category:Custom]] |
Версия от 10:40, 10 февраля 2025
Общие сведения
Биндинги позволяют связывать сторонние MQTT-топики и их данные с устройством HOMEd Custom. Биндинги описываются как JSON-обект, ключами которого являются имена связываемых свойств. Структура описания биндингов выглядит так:
{
...
"bindings":
{
"status":
{
"inTopic": "switch/status/topic",
"inPattern": "{{ on if json.switch is true else off }}",
"outTopic": "switch/command/topic",
"inPattern": "{\"switch\":{{ true if value is on else false }}}"
},
"temperature":
{
"inTopic": "temperature/status/topic",
"inPattern": "{{ json.temperature }}"
}
}
...
}
Параметры биндингов
inTopic
Топик, в который устройство публикует состояние описываемого свойства. Является обязательным в случае, если отсутствует параметр outTopic
.
inPattern
Шаблон для получения состояния описываемого свойства из топика inTopic
. В случае отсутствия этого параметра, данные будут использованы без изменений. Подробнее в разделе шаблоны.
outTopic
Топик, который необходимо опубликовать для изменения состояния описываемого свойства. Является обязательным в случае, если отсутствует параметр inTopic
.
outPattern
Шаблон для передечи состояния описываемого свойства в топик outTopic
. В случае отсутствия этого параметра данные будут опубликованы без изменений. Подробнее в разделе шаблоны.
Шаблоны
Шаблон это простая строка, которая может содержать части текста, обернутые двойными фигурными скобками {{ ... }}
. Эти части теста будут автоматически заменяется на значение, зависящее от набора элементов шаблона.
json
Этот элемент шаблона применим к случаям, когда устройство публикует свое состояние в виде JSON-объекта, и позволяет получать из этого объекта необходимые параметры. Примеры использования:
{{ json.pressure }}
{{ json.values[2].status }}