Управление умным домом Home Assistant через Яндекс Алису
Существует две глобальные интеграции Яндекса и Home Assistant. Первая — Yandex SmartHome — позволяет «утащить» все устройства из HA в Яндекс и строить автоматизации уже в приложении «Умный дом», а управление голосом через колонку работает под скрипты самого Яндекса.
В моем же случае я хочу остаться глобально в HA и не давать Яндексу полный контроль, а только голосовое управление. Тут на помощь приходит интеграция Yandex Station. Казалось бы, теперь всё супер: можно получать озвучку скриптов и отдавать команды. Но, к сожалению, на практике оказалось, что на новых версиях эта интеграция по задумке автора должна принимать голосовые команды, однако в реальности она может только озвучивать, а голосовые команды будут выдавать ошибку.
И тут на помощь приходит дополнительная интеграция к Yandex Station — Yandex Station Intents, которая позволяет создавать свои голосовые команды. Алиса обрабатывает их, но вся логика выполняется уже в Home Assistant.
В этой статье рассмотрим: Yandex Station и Yandex Station Intents — как подключить и как это работает на практике.
Содержание статьи
1. Интеграции Яндекса для Home Assistant
В HACS (и не только) существует несколько интеграций для работы с Яндекс Алисой. Вот основные:
📢 Yandex.Station
Управление колонками с Алисой из Home Assistant, отправка голосовых уведомлений
🏠 Yandex Smart Home
Добавление устройств из HA в умный дом Яндекса, управление с колонок
🎵 Браузер Яндекс.Музыки
Выбор и включение треков Яндекс.Музыки из Home Assistant
💬 YandexDialogs
Получение команд от Алисы через платформу Яндекс.Диалоги
🎯 Yandex.Station Intents
Получение команд от Алисы в Home Assistant (речевые сценарии)
🎨 Yandex Icons
Правильное отображение иконок устройств Яндекса
2. Установка Yandex Station
Шаг 1. Откройте Home Assistant
https://localhost:8123
Шаг 2. Установите интеграцию
- Перейдите во вкладку HACS в боковой панели
- Найдите и скачайте Yandex Station
⚙️ Альтернативный способ (ручная установка)
Скопируйте папку yandex_station из latest release в директорию /config/custom_components/
Шаг 3. Перезагрузите Home Assistant
- Настройки → в правом верхнем углу троеточие → Перезагрузить
Шаг 4. Добавьте интеграцию
- Настройки → Устройства и службы → Добавить интеграцию
- Найдите и выберите Yandex Station
- Авторизуйтесь в своем аккаунте Яндекса. Автор рекомендует авторизацию через QR-code, cookies или token, если у вас ранее была подключена данная интеграция. Но помимо этих вариантов есть еще через почту или логин/пароль.
В моем случае получилось только через cookies. Более подробная инструкция будет для каждого варианта прописана в самом варианте авторизации. Далее все настройки на ваше усмотрение. В моем случае это облачный тип подключения и передача через интерфейс.
3. Установка Yandex Station Intents
Шаг 1. Добавьте пользовательский репозиторий в HACS
- Откройте HACS → в правом верхнем углу троеточие → Пользовательские репозитории
- В поле «Репозиторий» укажите:
dext0r/ha-yandex-station-intents - Тип: Интеграция → нажмите «Добавить»
Шаг 2. Установите интеграцию
- В HACS найдите Yandex Station Intents
- Скачайте и перезагрузите Home Assistant
Шаг 3. Добавьте интеграцию
- Настройки → Устройства и службы → Добавить интеграцию
- Найдите Yandex Station Intents
- Авторизуйтесь через компонент Yandex Station
4. Пример скрипта и автоматизации
Шаг 1. Пропишите фразы в configuration.yaml
Откройте файл configuration.yaml и добавьте:
yandex_station_intents:
intents:
выключи свет: # Ваша команда для Алисы (двоеточие обязательно)
тишина в доме: Сейчас # Алиса ответит "Сейчас" на эту фразу
Шаг 2. Создайте автоматизацию
- Перейдите в Настройки → Автоматизации и сцены
- Нажмите «Создать автоматизацию» → «Начать с пустой автоматизации»
Шаг 3. Настройте триггер
- Тип триггера: «Получено созданное вручную событие»
- Тип события:
yandex_intent - Данные события:
text: выключи свет
Шаг 4. Настройте действие
- Например, выключение лампочки
- И ответ Алисы:
Лампочка выключена
Пример настройки автоматизации для голосовой команды