Cпособности устройств

Материал из HOMEd Wiki
HOMEd > Cпособности устройств

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

После долгих дискуссий было решено, что способности это максимально подходящее по смыслу слово русского языка, которое может заменить слово exposes в контексте описания сервисов HOMEd и других систем умного дома.

Cпособности устройств это абстрактные сущности, на которых основана работа функции Home Assistant MQTT Discovery, работа сервиса HOMEd Cloud, а так же работа веб-интерфейса. Например, способность "temperature" указывает на наличие датчика темературы, а "light" описывает осветительный прибор.

Типовые способности

Типовые способности устройств делятся на 6 основных категорий:

  • Бинарный сенсорор (binary)
  • Сенсор (sensor)
  • Переключатель (toggle)
  • Диапазон (number)
  • Селектор (select)
  • Триггер (button)

Категоря способности, как и прочие параметры, настраивается при помощи опций.

Бинарный сенсор

Данная способность описывает сенсоры, имеющие всего два состояния (активен/не активен), например, датчик протечки воды или датчик движения. Данная способность не предполагает возможности установки значения.

Пример описания:

{
  "type": "binary"
}

Сенсор

Данная способность описывает любые сенсоры, такие, как датчик температуры или силы тока. Данная способность не предполагает возможности установки значения.

Пример описания:

{
  "type": "sensor",
  "unit": "°C"
}

Дополнительные опции:
"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 MQTT Discovery.

"class" - класс устройства, применимо к способностям "binary" и "sensor"
"round" - настройка округдения значения, применимо к способности "sensor"
"state" - выбор способа ведения статистики, возможные значения - "measurement" или "total_increasing", применимо к способности "sensor"
"icon" - иконка из набора MDI Icons, применимо ко всем типовым способностям.

Специальные способности

Описание добавлю позже.