м (→Общие сведения) |
м (→Триггер) |
||
(не показаны 53 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE: | {{DISPLAYTITLE:Cпособности устройств}} | ||
{{Breadcrumbs| | {{Breadcrumbs|Cпособности устройств}} | ||
== Общие сведения == | == Общие сведения == | ||
После долгих дискуссий было решено, что <code class="value"> | После долгих дискуссий было решено, что <code class="value">"способности"</code> это максимально подходящее по смыслу слово русского языка, которое может заменить слово <code class="value">"exposes"</code> в контексте описания сервисов HOMEd и других систем умного дома. | ||
Cпособности устройств это абстрактные сущности, на которых основана работа функции [https://www.home-assistant.io/integrations/mqtt/#mqtt-discovery Home Assistant MQTT Discovery], работа сервиса [[Cloud|HOMEd Cloud]], а так же работа [[Web|веб-интерфейса]]. Например, способность <code class="value">"temperature"</code> указывает на наличие датчика темературы, а <code class="value">"light"</code> описывает осветительный прибор. | |||
== Типовые способности == | |||
Типовые способности устройств делятся на 6 основных категорий: | |||
* Бинарный сенсорор (binary) | |||
* Сенсор (sensor) | |||
* Переключатель (toggle) | |||
* Диапазон (number) | |||
* Селектор (select) | |||
* Триггер (button) | |||
Категория типовой способности, как и прочие параметры, настраивается при помощи [[Common/Options|опций]]. | |||
=== Бинарный сенсор === | |||
Данная способность описывает сенсоры, имеющие всего два состояния (активен/не активен), например, датчик протечки воды или датчик движения. Данная способность ''не предполагает'' возможности установки значения. | |||
Пример описания: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"type": "binary" | |||
} | |||
</syntaxhighlight> | |||
=== Сенсор === | |||
Данная способность описывает любые сенсоры, такие, как датчик температуры или силы тока. Показания сенсора могут быть как числовыми, так и строковыми. Данная способность ''не предполагает'' возможности установки значения. | |||
Пример описания: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"type": "sensor", | |||
"unit": "°C" | |||
} | |||
</syntaxhighlight> | |||
Дополнительные опции:<br> | |||
<code>"round"</code> - округление числового значения (количество знаков после запятой)<br> | |||
<code>"unit"</code> - единица измерения | |||
=== Переключатель === | |||
Данная способность описывает органы управления или настройки устройства, имеющие два состояния (включено/выключено). Данная способность ''предполагает'' возможность установки значения. | |||
Пример описания: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"type": "toggle" | |||
} | |||
</syntaxhighlight> | |||
=== Диапазон === | |||
Данная способность описывает органы управления или настройки устройства, имеющие числовой дипазон значений. Данная способность ''предполагает'' возможность установки значения. | |||
Пример описания: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"type": "number", | |||
"min": 0, | |||
"max": 100, | |||
"unit": "%" | |||
} | |||
</syntaxhighlight> | |||
Обязательные опции:<br> | |||
<code>"min"</code> - минимальное возможное значение<br> | |||
<code>"max"</code> - максимальное возможное значение | |||
Дополнительные опции:<br> | |||
<code>"unit"</code> - единица измерения<br> | |||
<code>"step"</code> - минимальный шаг изменения значения | |||
=== Селектор === | |||
Данная способность описывает органы управления или настройки устройства, имеющие несколько строковых значений. Данная способность ''предполагает'' возможность установки значения. | |||
Пример описания: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"type": "select", | |||
"enum": ["toggle", "momentary", "multifunction"] | |||
} | |||
</syntaxhighlight> | |||
Или: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"type": "select", | |||
"enum": {"0": "off", "1": "on", "2": "toggle", "255": "previous"} | |||
} | |||
</syntaxhighlight> | |||
Обязательные опции:<br> | |||
<code>"enum"</code> - массив или объект со значениями (в случае использования массива, в качестве передаваемого устройству значения будет использован индекс элемента в массиве, а в случае использования объкета - ключ элемента) | |||
=== Триггер === | |||
Данная способность описывает сущность, необходимую для вызова какого-либо действия со стороны устройства, например для запуска калибровки или сброса настроек. С точки зрения пользовательского интерфейса это просто кнопка. | |||
Пример описания: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"type": "button" | |||
} | |||
</syntaxhighlight> | |||
=== Опции Home Assistant === | |||
Следующие опции способностей используются для функции [https://www.home-assistant.io/integrations/mqtt/#mqtt-discovery Home Assistant MQTT Discovery]:<br> | |||
<code>"icon"</code> - иконка из набора [https://pictogrammers.com/library/mdi/ Material Design Icons], применимо ко всем типовым способностям<br> | |||
<code>"class"</code> - класс устройства, применимо к способностям <code class="value">"binary"</code> и <code class="value">"sensor"</code><br> | |||
<code>"state"</code> - выбор способа ведения статистики, возможные значения - <code class="value">"measurement"</code> или <code class="value">"total_increasing"</code>, применимо к способности <code class="value">"sensor"</code> | |||
== Специальные способности == | |||
Специальные способности устройств делятся на 5 основных категорий: | |||
* Осветительный прибор (light) | |||
* Выключатель (switch) | |||
* Штора (cover) | |||
* Замок (lock) | |||
* Термостат (thermostat) | |||
Эти способности отличаются от типовых тем, что имеют свои уникальные наборы опций. {{ Later }} | |||
[[Category:Common]] | [[Category:Common]] | ||
[[Category:Custom]] | [[Category:Custom]] | ||
[[Category:ZigBee]] | [[Category:ZigBee]] |
Текущая версия от 13:22, 5 сентября 2024
Общие сведения
После долгих дискуссий было решено, что "способности"
это максимально подходящее по смыслу слово русского языка, которое может заменить слово "exposes"
в контексте описания сервисов HOMEd и других систем умного дома.
Cпособности устройств это абстрактные сущности, на которых основана работа функции Home Assistant MQTT Discovery, работа сервиса HOMEd Cloud, а так же работа веб-интерфейса. Например, способность "temperature"
указывает на наличие датчика темературы, а "light"
описывает осветительный прибор.
Типовые способности
Типовые способности устройств делятся на 6 основных категорий:
- Бинарный сенсорор (binary)
- Сенсор (sensor)
- Переключатель (toggle)
- Диапазон (number)
- Селектор (select)
- Триггер (button)
Категория типовой способности, как и прочие параметры, настраивается при помощи опций.
Бинарный сенсор
Данная способность описывает сенсоры, имеющие всего два состояния (активен/не активен), например, датчик протечки воды или датчик движения. Данная способность не предполагает возможности установки значения.
Пример описания:
{
"type": "binary"
}
Сенсор
Данная способность описывает любые сенсоры, такие, как датчик температуры или силы тока. Показания сенсора могут быть как числовыми, так и строковыми. Данная способность не предполагает возможности установки значения.
Пример описания:
{
"type": "sensor",
"unit": "°C"
}
Дополнительные опции:
"round"
- округление числового значения (количество знаков после запятой)
"unit"
- единица измерения
Переключатель
Данная способность описывает органы управления или настройки устройства, имеющие два состояния (включено/выключено). Данная способность предполагает возможность установки значения.
Пример описания:
{
"type": "toggle"
}
Диапазон
Данная способность описывает органы управления или настройки устройства, имеющие числовой дипазон значений. Данная способность предполагает возможность установки значения.
Пример описания:
{
"type": "number",
"min": 0,
"max": 100,
"unit": "%"
}
Обязательные опции:
"min"
- минимальное возможное значение
"max"
- максимальное возможное значение
Дополнительные опции:
"unit"
- единица измерения
"step"
- минимальный шаг изменения значения
Селектор
Данная способность описывает органы управления или настройки устройства, имеющие несколько строковых значений. Данная способность предполагает возможность установки значения.
Пример описания:
{
"type": "select",
"enum": ["toggle", "momentary", "multifunction"]
}
Или:
{
"type": "select",
"enum": {"0": "off", "1": "on", "2": "toggle", "255": "previous"}
}
Обязательные опции:
"enum"
- массив или объект со значениями (в случае использования массива, в качестве передаваемого устройству значения будет использован индекс элемента в массиве, а в случае использования объкета - ключ элемента)
Триггер
Данная способность описывает сущность, необходимую для вызова какого-либо действия со стороны устройства, например для запуска калибровки или сброса настроек. С точки зрения пользовательского интерфейса это просто кнопка.
Пример описания:
{
"type": "button"
}
Опции Home Assistant
Следующие опции способностей используются для функции Home Assistant MQTT Discovery:
"icon"
- иконка из набора Material Design Icons, применимо ко всем типовым способностям
"class"
- класс устройства, применимо к способностям "binary"
и "sensor"
"state"
- выбор способа ведения статистики, возможные значения - "measurement"
или "total_increasing"
, применимо к способности "sensor"
Специальные способности
Специальные способности устройств делятся на 5 основных категорий:
- Осветительный прибор (light)
- Выключатель (switch)
- Штора (cover)
- Замок (lock)
- Термостат (thermostat)
Эти способности отличаются от типовых тем, что имеют свои уникальные наборы опций. Описание добавлю позже.