• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to secondary sidebar

У Павла!

  • Контроллеры
    • Arduino
      • Приборы
      • Музыка
      • Проекты Arduino
      • Уроки Arduino
      • Игры на Arduino
      • Роботы на Ардуино
      • FLProg
    • Raspberry pi
      • Raspberry pi pico
      • Raspberry pi server
      • Проекты Raspberry pi
    • ESP
      • ESP8266
        • NodeMCU
      • ESP32
      • M5stack
    • Другие контроллеры
      • STM32
  • ЧПУ
  • 3d печать
  • Умный дом
    • Home Assistant
    • Tuya
    • ESPHome
    • Яндекс
  • Об авторе

Яндекс колонка с Алисой в Home Assistant.

20 июня, 2022

 

Покупал колонку тут: http://alii.pub/6dn72r

На всякий случай резерв:  http://alii.pub/6dn780

Все мы слышали про умную колонку от Яндекс с голосовым помощником Алисой. Довольно удобная колонка. И для русскоязычного народа самый лучший вариант из умных колонок.

Так-же у Яндекса под эту колонку есть своя система умного дома. Ну это и логично. Умная колонка и должна управлять умным домом.

Но одним яндексом “сыт не будешь” и хочется, чтоб Умная колонка Яндекс управляла разными устройствами от разных экосистем умных домов.

В принципе умный дом Яндекс поддерживает много разных производителей и XIaomi и Tuya. Но вот например самодельные на esp32 к примеру. С ними уже будут проблемы.

По этому в этой статье добавим Яндекс колонку в Home Assistant. И научим ее управлять устройствами добавленными в Home Assistant.

Для добавления колонки в Home Assistant служит аддон YandexStation. https://github.com/AlexxIT/YandexStation

Данный Аддон устанавливается через HACS.

 

Установка HACS в Home Assistant

 

Устанавливается он просто, возникнуть проблем не должно. Находим его в HACS и нажимаем “Загрузить этот репозиторий с помощью HACS”.

 

Далее перезапускаем Home Assistant. И после перезапуска этот аддон YandexStation должен появиться в Интеграциях.

И при добавлении этой интеграции в Настройках->интеграции:

Нам нужно будет авторизировать колонку. Это можно делать несколькими способами предложенными на скрине:

 

У меня настроена авторизация по одноразовому ключу. ПО этому я выбрал этот способ, но вы можете выбрать любой удобный для Вас. В общем эта авторизация точно такая0же как и обычная авторизация в яндексе.

Ну собственно после авторизации, у Вас появится интеграция YandexStation с одним устройством и объектом.

 

И собственно после добавления этой колонки, мы уже ей можем управлять. Например включить выключить проигрыватель, управлять громкостью. Выключить колонку.

 

Так-же Умную колонку Яндекс можно обучать. Например создавать разные сценарии для управления умным домом Яндекс.

Но мы из этого тоже можем получить выгоду и для Home Assistant. Давайте создадим сценарий. Сценарии для умной колонки создаются тут: https://yandex.ru/quasar/iot

В общем переходим на вкладку сценарии и нажимаем “плюсик”

И создадим там сценарий, который будет выполняться когда мы скажем “Алиса температура балкон”. И Алиса выполнит команду “Сделай громче на 0” И колонка собственно должна будет сделать громкость 0 на время.

 

И так-как мы добавили колонку, теперь мы можем с нее получать статусы. А именно, например когда мы говорим колонке выполнить какое-либо действие, эти действия пишутся в события. И собственно эти события мы можем просмотреть.

 

Вот собственно на скрине выше, видим что произошло событие “Сделай громче на 0”. И это событие произошло на мою фразу “Алиса температура балкон”. Собственно эта фраза которую мы создали выше.

Ну а теперь отслеживая это событие, мы можем создать автоматизацию. Которая будет при событии “Сделай громче на 0” от яндекс колонки, выводить голос на колонку.

Для этого в automations.yaml напишем следующую автоматизацию.


#Температура на балконе яндекс колонка
- id: yandex_temp_balkon
  alias: температура на балконе
  trigger:
  - platform: event
    event_type: yandex_speaker
    event_data:
      value: Сделай громче на 0  # фраза из Сценария Яндекса (раздел То) 
  action:
  - service: media_player.play_media
    target:
      entity_id: '{{ trigger.event.data.entity_id }}'  # ответить той же колонкой
    data:
      media_content_type: text
      media_content_id: 'Температура на балконе {{ states("sensor.ble_temperature_balkon")|round }} градуса'
  mode: single

 

Собственно тут мы задаем какое событие мы отслеживаем: value: Сделай громче на 0 

Ну а тут будет колонка говорить фразу которую мы задаем, а именно “Температура на балконе (и собственно показания с датчика температуры на балконе sensor.ble_temperature_balkon) градуса.”:

media_content_id: 'Температура на балконе {{ states("sensor.ble_temperature_balkon")|round }} градуса'

Естественно фразу можно любую указать и сенсор любой подставить.

 

Следующим действие давайте сделаем, при котором Яндекс колонка будет включать и выключать освещение.

Для этого создадим сценарий в яндексе:

Собственно теперь мы будем отслеживать команду “Сделай громче на 0?” можно ставить сколько угодно вопросительных и восклицательных знаков. Колонка их напишет в событии, но команда выполнится все так-же корректно и просто громкость сделается 0.

А мы собственно всеми этими вопросительными и восклицательными знаками будем отделять наши события и понимать что же сейчас колонке сказали.

В данном примере колонке будем говорить “Настольная лампа балкон”.

И сделаем автоматизацию при которой будет включаться и выключаться настольная лампа.


#Управление настольной лампой на балконе яндекс колонка  
- id: yandex_desk_lamp_balkon
  alias: настольная лампа яндекс
  trigger:
  - platform: event
    event_type: yandex_speaker
    event_data:
      value: Сделай громче на 0?  # фраза из Сценария Яндекса (раздел То) 
  action:
  - service: light.toggle 
    entity_id: light.desk_lamp

Тут  автоматизация получилась по короче.

Собственно она ищет событие “сделай громче на 0?” value: Сделай громче на 0?

И если это событие улавливается, то мы либо включаем лампу, если она выключена. Или выключаем, если она была включена:

- service: light.toggle

Ну и собственно название лампы в Home Assistant: entity_id: light.desk_lamp

 

Для первого раза думаю хватит и этой информации. Ее уже будет достаточно, чтоб колонка Вам говорила состояние датчиков и управляла всякими выключателями умного дома.

 

Primary Sidebar

Поиск

Новые записи

  • Вызов сервиса как кнопки в Home Assistant
  • Датчик Пыли/Дыма Sharp GP2Y1010AU0F
  • Самый простой способ управления устройствами Home Assistant с Яндекс станции с помощью интеграции Yandex Smart Home.
  • Измеряем скорость ветра с помощью анемометра CG-Anem на arduino, esp32 или esp8266.
  • Яндекс колонка с Алисой в Home Assistant.

Подписаться на YouTube!

Secondary Sidebar




Copyright_У Павла! © 2022 ·