Установите плагин в директории Node-RED через терминал:
cd ~/.node-red
npm install node-red-contrib-alice
Или установите через меню Node-RED: Manage palette → Install → найдите node-red-contrib-alice.
После установки перезапустите Node-RED.
alice-onoff) на рабочее поле Node-RED.После деплоя нода покажет статус online — подключение к MQTT установлено.
Устройство появится в приложении «Дом с Алисой» после обновления списка устройств.
Умение (capability) — свойство объекта «Устройство», которое описывает его возможности. Устройство описывается как минимум одним умением. Платформа умного дома не ограничивает провайдеров в выборе возможностей для устройств, поэтому у пользователя могут появиться устройства с нестандартной связкой тип:умение, например, у телевизора может быть функция «температура».
Каждое умение — это отдельная нода в Node-RED, которая привязывается к устройству (alice-device). Ноды умений двунаправленные: принимают команды от Алисы (выход) и отправляют обновления состояния на сервер (вход).
| Нода | Тип умения | Описание | Вход (msg.payload) | Выход (msg.payload) |
|---|---|---|---|---|
alice-onoff |
on_off | Включение и выключение устройства | true / false |
true / false |
alice-range |
range | Управление числовым параметром в диапазоне (яркость, громкость, температура) | number |
number |
alice-color |
color_setting | Цвет (RGB/HSV), цветовая температура, световые сцены | Объект {r,g,b} или {h,s,v}, число (temperature_k) или строка (scene) |
3 выхода: цвет, температура, сцена |
alice-mode |
mode | Переключение режимов работы (скорость вентилятора, программа стирки, режим кондиционера) | "auto", "cool", "heat" и др. |
Выбранный режим (строка) |
alice-togle |
toggle | Переключатели доп. функций (подсветка, звук, пауза, блокировка) | true / false |
true / false |
alice-video |
video_stream | Видеопоток с камеры (HLS) | — | — |
Базовое умение для большинства устройств. Подайте true или false на вход, чтобы обновить состояние на сервере. Когда пользователь скажет Алисе «Включи лампу», нода выдаст true на выход.
Опция «Split button» — разделяет кнопку на «включить» и «выключить» как два отдельных элемента управления.
Управление числовым параметром. Доступные типы (instance):
Поддерживает относительные команды: «Алиса, увеличь яркость на 20%».
Управление цветом светящихся элементов. Три независимых выхода:
{r, g, b} или {h, s, v} (зависит от выбранной схемы)"candle", "sunrise", "movie" и др.)Доступные сцены: alarm, alice, candle, dinner, fantasy, garland, jungle, movie, neon, night, ocean, party, reading, rest, romance, siren, sunrise, sunset.
Переключение между предустановленными режимами. Доступные типы (instance):
Управление дополнительными функциями устройства (вкл/выкл). Доступные типы:
Трансляция видеопотока с камеры. Указывается URL потока (протокол HLS). Требования: кодек H.264, аудио AAC, разрешение до 1920×1080, URL должен быть доступен из интернета.
В отличие от умений, датчики и события — однонаправленные: они только отправляют данные в облако (нет выхода).
Числовые показания датчиков. Подайте число на вход — значение будет отправлено в облако.
Защита от дублирования: одинаковые значения не отправляются повторно. Переотправка происходит автоматически каждые 10 минут.
Доступные типы датчиков:
| Instance | Описание | Единицы |
|---|---|---|
| temperature | Температура | °C |
| humidity | Влажность | % |
| pressure | Давление | мм рт. ст. |
| illumination | Освещённость | люкс |
| co2_level | Уровень CO₂ | ppm |
| battery_level | Уровень заряда | % |
| power | Потребляемая мощность | Вт |
| voltage | Напряжение | В |
| amperage | Сила тока | А |
| water_level | Уровень воды | % |
| food_level | Уровень корма | % |
| tvoc | Летучие орг. соединения | мкг/м³ |
| pm1_density | Частицы PM1 | мкг/м³ |
| pm2.5_density | Частицы PM2.5 | мкг/м³ |
| pm10_density | Частицы PM10 | мкг/м³ |
| electricity_meter | Счётчик электроэнергии | кВт·ч |
| gas_meter | Счётчик газа | м³ |
| heat_meter | Счётчик тепла | Гкал |
| water_meter | Счётчик воды | м³ |
Дискретные события (строковые значения). Подайте строку на вход — событие будет отправлено в облако.
| Instance | Описание | Значения |
|---|---|---|
| open | Открытие/закрытие | opened, closed |
| motion | Движение | detected, not_detected |
| button | Нажатие кнопки | click, double_click, long_press |
| vibration | Вибрация | tilt, fall, vibration |
| smoke | Задымление | detected, not_detected, high |
| gas | Утечка газа | detected, not_detected, high |
| water_leak | Протечка воды | dry, leak |
| battery_level | Уровень заряда | low, normal |
| water_level | Уровень воды | low, normal |
Особенность: для типа button значение автоматически сбрасывается через 1 секунду.
Устройство в Node-RED собирается из нод: одна нода alice-device и одна или несколько нод умений/датчиков, привязанных к этому устройству.
Простейший вариант — одно устройство с одним умением. Подайте true/false на вход alice-onoff, чтобы отобразить текущее состояние розетки. Алиса сможет включать и выключать её голосом.
Подайте числовое значение температуры на вход alice-sensor. Алиса будет отвечать на вопросы типа «Какая температура в гостиной?».
Подайте строку "detected" или "not_detected" на вход alice-event.
Лампа, которую можно включить/выключить и регулировать яркость от 0 до 100%. Алиса понимает команды: «Включи лампу», «Поставь яркость 50%», «Увеличь яркость».
Полноцветная лампа. Помимо включения и яркости, поддерживает цвет (RGB/HSV), цветовую температуру (тёплый/холодный свет) и световые сцены («Алиса, включи романтику»).
Вентилятор с включением/выключением и переключением скорости (auto, low, medium, high, turbo). Алиса: «Поставь вентилятор на максимум».
Полнофункциональный кондиционер: включение, целевая температура, режим работы (охлаждение/нагрев/авто), скорость вентилятора, качание шторок. Алиса: «Поставь кондиционер на 22 градуса в режиме охлаждения».
Одно устройство с несколькими датчиками. Алиса: «Какая влажность в спальне?», «Какой уровень CO₂?».
Увлажнитель с управлением: вкл/выкл, скорость работы, целевая влажность, датчик уровня воды.
При создании alice-device нужно выбрать тип устройства. Тип влияет на иконку и голосовые команды Алисы. Основные категории:
| Категория | Типы | Рекомендуемые умения |
|---|---|---|
| Освещение | Light, Light Ceiling, Light Strip | on_off, range (brightness), color_setting |
| Розетки и выключатели | Socket, Switch | on_off |
| Климат | Thermostat, AC, Humidifier, Purifier, Fan | on_off, range (temperature), mode (thermostat, fan_speed) |
| Медиа | TV, TV Box, AV Receiver, Media Device | on_off, range (volume, channel), mode (input_source) |
| Кухня | Coffee Maker, Kettle, Multicooker | on_off, mode (coffee_mode, tea_mode, multicooker_mode), toggle (keep_warm) |
| Открывающиеся | Curtain, Door, Gate, Window, Valve | on_off, range (open) |
| Бытовые | Vacuum Cleaner, Washing Machine, Dishwasher, Iron | on_off, mode (program, work_speed), toggle (pause) |
| Датчики | Sensor, Sensor.Motion, Sensor.Climate, Sensor.Open, Sensor.WaterLeak, Sensor.Smoke, Sensor.Gas, Sensor.Button, Sensor.Vibration, Sensor.Illumination | sensor (temperature, humidity и др.), event (motion, open и др.) |
| Счётчики | Smart Meter, Electricity, Gas, Water, Heat | sensor (electricity_meter, gas_meter, water_meter, heat_meter) |
| Камеры | Camera | video_stream |
| Прочее | Pet Feeder, Pet Drinking Fountain, Other | on_off, sensor (food_level, water_level) |
Подробнее о типах устройств и умениях в документации Яндекса по типам устройств и типам умений.