Home Assistant на сегодняшний день — лучший хаб для умного дома. Количество поддерживаемых устройств растет с каждым днем, но с голосовым управлением выбор не велик. Для англоговорящих пользователей уже давно существует Алекса и Google Assistant. Последний мы сегодня и будем добавлять для управления устройствами Home Assistant.

Это бесплатный способ. Существует так же платный, через Home Assistant Cloud, его я рассматривать не буду.

Итак, начнем с требований. Home Assistant должен быть доступен через интернет по SSL. У меня есть для этого отдельная серия статей:

Получение белого ip, используя выделенный сервер VPS

Правильная настройка SSL для удаленного доступа к Home Assistant

Теперь о самой настройке Google Assistant. Переходим в Google Actions и создаем новый проект:

Затем выбираем Home Control:

И Smart home:

Далее выбираем Name your Smart Home action:

И придумываем имя:

Сохраняем.

Далее возвращаемся в раздел Overview и выбираем Setup account linking:

На выборе No, I only want to allow account creation on my website жмем Next:
И в Linking type выбираем OAuth и Authorization code и жмем Next:

 

Далее, заполняем:

 

Client ID: должен быть https://oauth-redirect.googleusercontent.com/

Client secret: любой пароль, не используется Home Assistant, нужен только для google

Authorization URL: https://hass.example.com/auth/authorize

где https://hass.example.com это адрес вашего Home Assistant в интернете

Token URL: https://hass.example.com/auth/token

где https://hass.example.com это так же адрес вашего Home Assistant в интернете

 

Далее в Configure your client (optional) добавим строчку, и введем email и имя:

 

Галочку на Google to transmit clientID and secret via HTTP basic auth header ставить не нужно.

В Testing instructions пишем что угодно, например test, и сохраняем:

 

Теперь возвращаемся на Overview и жмем Add Action(s):

Add fulfillment URL должен быть: https://hass.example.com/api/google_assistant

где https://hass.example.com это адрес вашего Home Assistant в интернете:

Возвращаемся на Overview и жмем Enter information required for listing your Action in the Actions directory:

И заполняем в произвольной форме, это нигде не пригодится:

Privacy Policy можно вставить ссылку на сайт Home Assistant: https://www.home-assistant.io:

Поднимаемся наверх и жмем Save. Опять возвращаемся на Overview и смотрим чтобы везде стояли галочки:

Перейдем на вкладку Test, выбираем русский язык в Language и жмем Start testing:

После жмем Done:

И дожидаемся вот такого подтверждения:

После жмем на три точки для открытия меню и выбираем Project Settings:

Попадаем в настройки, где нам нужен Project ID:

Он необходим для настройки Google Assistant внутри Home Assistant.

Теперь настроим ключ API. Переходим в Google Cloud Console и выбираем свой проект вверху, как показано на скриншоте (если их несколько):

Жмем Перейти к обзору API в карточке API:

и жмем Включить API и сервисы:

Ищем Homegraph API и включаем:

Затем в левой колонке жмем на Учетные данные и жмем на Настроить окно запроса доступа:

На открывшейся странице жмем на вкладку Учетные данные, затем Создать учетные данные, и выбираем Ключ API:

Запишите ваш Ключ API. Можно нажать Закрыть, а можно настроить ограничения, например дать ключу имя, чтобы в будущем отличить его от других:

 

На стороне Google это всё. Теперь пришло время добавить компонент Google Assistant в наш Home Assistant.

В configuration.yaml:

google_assistant:
  project_id: PROJECTID
  api_key: APIKEY
  exposed_domains:
    - light

project_id и api_key мы получили ранее.

Чтобы более тонко настроить обнаружение ваших объектов из Home Assistant в Google Assistant посетите https://www.home-assistant.io/components/google_assistant/, там указаны все переменные и их описание.

Теперь переходим в приложение Google Home, жмем + добавить устройство > Настроить устройство > Ранее настроенные устройства, и выбираем наш Home Assistant — значок облака и присвоенное ему вами ранее имя:

Нас перекидывает на страницу авторизации нашего Home Assistant. Авторизуемся, и после устройства появятся:

0 0 vote
Article Rating

Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

7 Комментарий
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Bluefox
1 год назад

Не думаю, что hass лучший.

concept
concept
10 месяцев назад

Спасибо автор за исчерпывающую инструкцию. Как пожелание, можно добавить пояснение, для чего делаются те или иные действия.
Кстати, если в HA изменились настройки или названия оборудования, то можно вызвать сервис google_assistant.request_sync и тогда все новые настройки синхронизируются с гугл хоум.

Lenny
2 месяцев назад

Вопрос: как работает голосовое управление, по сравнению с Алисой (что вы предпочитаете, например lenovo smart display или яндекс.станция)?
Какой девайс в принципе посоветуете для голосового управления? Спасибо.

Дмитрий
Дмитрий
15 дней назад

Добрый день. Подскажите почему то не появляется окно выбора На выборе No, I only want to allow account creation on my website жмем Next:. Как будто проскакивает этот шаг. А после того как все выполняешь просит заполнить данные о компании. С чем эт может быть связано?