Умения "Выбор из диапазона"
Управление параметрами устройства, которые имеют диапазон регулировки (громкость, яркость, температура).
Настраиваются через словарь custom_ranges
. В состоянии ожидается числовое значение.
Параметры¶
-
set_value
: Сервис вызываемый при установке абсолютного значения функции. В переменнойvalue
абсолютное или относительное значение (в зависимости от настроекrange
и наличияincrease_value
иdecrease_value
). Если не задан - установка абсолютного значения поддерживаться не будет. -
increase_value
иdecrease_value
: Сервисы, вызываемые при относительной регулировке (кнопки+
и-
и "Алиса, убавь температуру"). Если не заданы - будет вызываться сервисset_value
. -
range
: Граничные значения диапазона. Дляhumidity
,open
,brightness
есть ограничение: минимум0
, максимум100
. Если не задатьmin
иmax
регулировка будет только относительная (в переменнойvalue
-1
или-1
).
Для устройств, поддерживающих установку абсолютного значения, достаточно задать только set_value
.
А для устройств с поддержкой только относительного (например IR пульт) - increase_value
и decrease_value
.
Если ни один сервис не задан - умение из УДЯ управляться не будет.
Доступные функции¶
Функция | Описание |
---|---|
brightness | Изменение яркости световых элементов |
channel | Изменение канала, например телевизионного |
humidity | Изменение влажности |
open | Открывание чего-либо в процентах (открывание штор, окна) |
temperature | Изменение температуры (чайника, обогревателя) |
volume | Изменение громкости устройства |
tea_mode | Режима приготовления чая |
thermostat | Температурный режим работы климатической техники |
work_speed | Скорость работы |
Примеры¶
Бризер¶
Изменение параметра favorit_speed
на бризере Xiaomi (fan.xiaomi_airfresh_a1
)
configuration.yaml
yandex_smart_home:
entity_config:
fan.xiaomi_airfresh_a1:
custom_ranges:
volume: # как самое подходящее
state_entity_id: fan.xiaomi_airfresh_a1
state_attribute: favorit_speed
set_value:
service: xiaomi_miio_airpurifier.fan_set_favorite_speed
data:
speed: '{{ value }}'
# значения для примера
range:
min: 60
max: 300
precision: 20 # по вкусу
Выбор канала¶
Выбор канала на телевизоре через media_player.play_media
, листание каналов через отдельные скрипты, номер текущего канала нигде не хранится.
configuration.yaml
yandex_smart_home:
entity_config:
media_player.stupid_tv:
custom_ranges:
channel:
set_value:
service: media_player.play_media
entity_id: media_player.stupid_tv
data:
media_content_type: channel
media_content_id: '{{ value }}'
increase_value:
# сервис отправит нажатие кнопки "канал вверх" по IR
service: script.next_channel_via_ir
decrease_value:
# сервис отправит нажатие кнопки "канал вниз" по IR
service: script.prev_channel_via_ir
range:
min: 0
max: 999