Home Assistant и несколько аккаунтов Яндекс: Умный дом

Материал из База знаний
Перейти к навигации Перейти к поиску



Задача

Квартира, в разных комнатах которой установлены Яндекс-станции (обычная и мини). Станции привязаны к аккаунтам разных членов семьи, поэтому вместе управлять одним умным домом Яндекс по умолчанию они не могут.

На вики есть похожая инструкция "Home Assistant и несколько аккаунтов Яндекс: медиаплеер". 
Однако она решает немного другую задачу: добавляет колонки в качестве медиаплееров и позволяет управлять из Home Assistant ими, а не умными устройствами другого аккаунта с них.

Нам же нужно с любой колонки управлять устройствами Умного дома Яндекса.


Решение

Для подключения потребуются:

  • Установленный и настроенный Home Assistant (в инструкции созданы отдельные пользователи Home Assistant для каждого из членов семьи. Будет ли работать, если всех подключить как одного пользователя, не проверялось).
  • Установленный и настроенный компонент Yandex Smart Home от dmitry-k (Алиса и Home Assistant).

Действия в нашем аккаунте:

  • В меню своего приватного навыка в Диалогах заходим на вкладку «Доступ».
  • Нажимаем на кнопку «Сгенерировать», получаем одноразовую ссылку - и отправляем ее тому, кого хотим подключить.

Действия в подключаемом аккаунте:

  • Из-под нового аккаунта переходим по ссылке. Наш приватный навык добавлен в профиль другого пользователя.
  • Нажимаем "Добавить" -> "Другое устройство".
  • В списке/поиске производителей находим название нашего навыка.
  • Связываем аккаунты Яндекс и Home Assistant (указываем логин и пароль соответствующего пользователя в Home Assistant).
  • Обновляем список устройств.
  • Настраиваем отображение устройств по комнатам и группам.

Теперь мы можем с умной колонки или смартфона, привязанных к другому аккаунту, управлять устройствами умного дома.


Уведомления УДЯ об изменении статуса устройств в дополнительных аккаунтах

Для этого нужно прописать нужные параметры в файле configuration.yaml по шаблону:

 yandex_smart_home:
 notifier:
   - oauth_token: XXXXXXXXXXXXXXXXXXXXXXXXXXX
     skill_id: xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx
     user_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxx
   - oauth_token: YYYYYYYYYYYYYYYYYYYYYYYYYYY
     skill_id: yyyyyyyy-yyyy-yyyy-yyyyyyyyyyyy
     user_id: yyyyyyyyyyyyyyyyyyyyyyyyyyyy

Заметьте, что для каждого аккаунта будет свой OAuth-токен. Skill ID будут одинаковые, с учетом того, что навык один и тот же и им просто поделились. А вот ID пользователя может быть как один, если в Home Assistant один пользователь, так и разные - для случая, когда каждому члену семьи соответствует свой пользователь в Home Assistant.

Готово!


С возникающими вопросами и проблемами можно обратиться в чат Станции или чат компонента.

Источник — https://wiki.yaboard.com/index.php?title=Home_Assistant_и_несколько_аккаунтов_Яндекс:_Умный_дом&oldid=5708 // MOD ext links // End MOD