Роль точек данных

Каждый объект типаstate обладает характерной чертойcommon.role В описании не указано, какое именно значение оно имеет, но показано, что оно обозначает : переключатель, температура, уровень яркости или сообщение.

Одно значение может быть неоднозначным.true Это может означать, что свет включен, окно открыто или устройство доступно. Именно эта роль преобразует эту информацию в то, что может обработать пользовательский интерфейс или голосовой помощник.

В чём смысл всего этого?

Затем визуализации выбирают свой управляющий элемент.switch получает переключатель, аlevel.dimmer ползунок,value.temperature Дисплей с градусными символами. При отсутствии подходящей роли отображается пустое поле ввода.

Голосовые помощники распознают устройство по его возможностям. Alexa может приглушить свет лампы только в том случае, если точка данных имеет соответствующую роль.level.dimmer несет.

Система распознавания устройств собирает информацию об устройстве на основе нескольких точек данных. RGB-лампа состоит из трех взаимосвязанных значений:

  • switch для входа и выхода
  • level.color.rgb с цветовой кодировкой
  • level.brightness с яркостью

Только эти три ролика в одном канале превращают три цифры в лампочку. Какие ролики необходимы для данного типа устройства, а какие являются необязательными, указывается в детекторе типов .

Vier Zustände mit Typ und Rolle und die Bedienelemente, die daraus entstehen

Тип и роль в совокупности определяют, что делает поверхность состоянием.

Как структурируется роль

Должности разделены на уровни и обозначаются точками, от общих к конкретным:

switch
switch.power
level
level.color.temperature
value.temperature

Первый уровень обозначает тип значения. Все последующие уровни описывают его более подробно.

Первый этапОзначает
stateНеизвестно. Используется, когда ничего более конкретного не подходит.
sensorЗначение «да/нет», которое только считывается. Окно открыто, обнаружено движение.
indicatorЗначение «да/нет» для обозначения состояния устройства: низкий заряд батареи, недоступно. Отображается в виде небольшого значка.
valueЧисло, которое только считывается. Температура, потребление, влажность.
levelТакже можно задать числовое значение. Яркость, целевая температура, положение рольставни.
switchТакже можно задать значение «да/нет».
buttonЭто просто текст, не представляющий никакой значимой ценности для чтения.
text ,html ,json ,list ,dateЗначения, которые не управляют устройством, но что-то представляют.

Всегда используйте наиболее подходящий по размеру рулон.level.color.temperature говорит больше, чемlevel , иswitch.power больше, чемswitch В рамках одного канала одна и та же роль может встречаться только один раз; в противном случае система распознавания устройств не сможет определить, какое из двух значений имеется в виду.

Где вы видите и меняете роль

В панели администратора, на вкладке «Объекты» , роль отображается в отдельном столбце. Ее можно изменить с помощью значка карандаша, а в экспертном режиме — также непосредственно в самом объекте.

Изменение роли точки данных, созданной самим адаптером, обычно не влечет за собой долговременных изменений: адаптер записывает её обратно при следующем запуске. Если роль навсегда изменена, это отображается в сообщении об ошибке для адаптера. Для ваших собственных нужд лучше использовать псевдоним , поскольку роль можно установить свободно, не изменяя адаптер.

Полный список

Все роли, включая их типы данных, обязательные поля и устаревшие обозначения, перечислены в разделе «Роли состояния» в главе «Разработка адаптера». Этот список является авторитетным; он поддерживается вместе с детектором типов.