- PVSM.RU - https://www.pvsm.ru -

Home Assistant — платформа которая помогает подключать самые разные устройства умного дома, включая малоизвестные и самодельные, а также управлять ими, следить за статусами на удобном дашборде [1] и создавать сложные сценарии. Например, чтобы обеспечить безопасность дома, автоматизировать рутины, развлечь детей и гостей.
Всё это становится в разы удобнее, если добавить голосовое управление — например, с помощью Маруси [2] от VK. В этой статье мы по шагам расскажем, как настроить Home Assistant и «подружить» его с Марусей.
По аналогии с инструкцией в этой статье Марусю можно подключить и к другим «кастомным» системам умного дома, используя протоколы Яндекса, Google и Tuya.
Все ссылки на программное обеспечение и рекомендации — по выбору версий и другие — актуальны на момент создания статьи, ноябрь 2022.
Перед установкой Home Assistant ознакомьтесь с исправлениями [3] в выбранной вами версии HASS OS и более новыми.
В статье есть ссылки на сторонние репозитории — мы не можем гарантировать, что они не изменятся и в них не появится вредоносный код. Пожалуйста, используйте их ответственно.
Если у вас уже настроен Home Assistant, пропустите этот раздел. А если нет, следуйте пошаговой инструкции.
Одноплатный компьютер Raspberry Pi 4 или 3
Блок питания 5V / 2A
Micro SD Card (флешка) не хуже Class 2, рекомендуемый объём — от 32 Гб
SD Card Reader
Ethernet-кабель
1. Вставить флешку в компьютер.
2. Скачать и установить приложение для записи образов — например, Balena Etcher [4].
3. В приложении выбрать Flash from URL.
4. Вставить ссылку на нужный образ:
● Raspberry 4 (64 Bit): https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi4-64-9.3.img.xz [5]
● Raspberry 4 (32 Bit): https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi4-9.3.img.xz [6]
● Raspberry 3 (64 Bit): https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi3-64-9.3.img.xz [7]
● Raspberry 3 (32 Bit): https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi3-9.3.img.xz [8]

5. После скачивания образа выбрать флешку для установки:


6. Нажать Flash, чтобы записать образ на флешку.
1. Вставить флешку в Raspberry Pi.
2. Соединить с роутером при помощи Ethernet-кабеля.
3. Включить в розетку и подождать пару минут.
4. Открыть в браузере на компьютере ссылку: http://homeassistant.local:8123 [9]
5. Подождать 5–15 минут, пока Home Assistant загрузится.
После этого в Home Assistant можно добавить умные устройства. Здесь не получится сделать универсальную инструкцию, потому что у разных устройств — свои конфигурации. Примеры можно поискать в статьях других пользователей Хабра — например, в этой [10].
Это нужно, чтобы в дальнейшем вы могли удалённо подключаться к Home Assistant с устройств не в локальной сети, а также чтобы к нему получила доступ Маруся.

1. Установить в Home Assistant аддон SSH & Web Terminal: Settings → Add-ons → Add-on Store → Home Assistant Community Add-on → SSH & Web Terminal
2. Открыть настройки аддона и включить параметр Show in sidebar
3. Снова зайти в Add-on Store, выбрать Repositories и добавить адрес репозитория: https://github.com/ThomDietrich/home-assistant-addons [11]

4. Установить аддон SSH Tunnel & Forwarding из Add-on Store. Зайти в настройки аддона, на вкладке Log найти такой фрагмент и скопировать из него ключ:
[13:19:53] INFO: The public key is:
ssh-ed25519 XXXXXXXXXXXXXXXXXXXX hassio-setup-via-autossh
[13:19:53] WARNING: Add this key to '~/.ssh/authorized_keys' on your remote server now!
[13:19:53] WARNING: Please restart add-on when done. Exiting…
5. Подключиться к удалённой виртуальной машине с внешним IP-адресом (внешний хост, ) по SSH: ввести адрес, логин и пароль, выданные хостом. Найти или создать файл .ssh/authorized_keys и добавить в него ключ, скопированный на прошлом шаге.
Как выбрать и за сколько купить VPS/VDS [13] (цены актуальны на 2020 год)
6. В конфигурации аддона SSH Tunnel & Forwarding ввести адрес и имя пользователя удалённой машины, к которой только что привязали ключ. Сохраниться и перезапустить аддон.

7. В зависимости от операционной системы, используя менеджер пакетов, установить на удалённой машине nginx [14]. Добавить в конфигурацию такую секцию:
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
server_name ha.yourhost.ru;
root /data/www/ha;
location / {
try_files $uri $uri/index.html $uri.html @backend;
}
location @backend {
proxy_pass http://127.0.0.1:8123;
proxy_set_header Host $host;
# proxy_set_header X-Forwarded-For $remote_addr;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
Вместо ha.yourhost.ru здесь и далее вписывать адрес своего домена, если он есть; а если нет, то IP-адрес удалённой машины.
8. Проверить доступность http://ha.yourhost.ru [15] на компьютере в локальной сети. Если там отображается интерфейс Home Assistant, значит, всё настроено правильно.
Пока мы используем наработки IoT-энтузиастов для интеграции Home Assistant с умным домом от Яндекса, чтобы аналогичным образом подключить Home Assistant к Марусе.
1. Открыть терминал в Home Assistant, запустить скрипт установки HACS: wget -O - https://get.hacs.xyz | bash -
Дождаться его установки и перезапустить Home Assistant.

2. Открыть HACS → Integrations, нажать кнопку Explore & Download Repositories, найти и выбрать Yandex Smart Home, установить.
3. Зайти в Settings → Devices & Services, нажать кнопку Add Integration, найти и выбрать Yandex Smart Home.
4. Открыть настройки интеграции, выбрать доступные устройства и тип подключения — «напрямую».
5. Проверить доступность внешнего адреса: http://ha.yourhost.ru/api/yandex_smart_home/v1.0/ping [16]
Если всё ок, по ссылке должен отразиться список доступных устройств.
Подключение Home Assistant к Марусе
Для этого вам нужно будет завести свой умный дом на базе Home Assistant на платформе VK для внешних разработчиков. Тогда он появится в приложении Маруси.
1. Зайти на платформу [17], авторизоваться с VK ID, создать проект и приложение.
2. В настройках приложения указать такие параметры:
Адрес API — http://ha.yourhost.ru/api/yandex_smart_home/v1.0 [18]
Адрес страницы авторизации — http://ha.yourhost.ru/auth/authorize [19]
Адрес для получения и обновления токена — http://ha.yourhost.ru/auth/token [20]
Авторизационные client_id — https://vc.go.mail.ru [21]
Авторизационный secret — любой пароль

3. Через минуту открыть приложение Маруси, зайти в раздел «Умный дом», найти свой проект среди провайдеров и авторизоваться с логином и паролем, установленными при настройке Home Assistant. После этого ваши устройства и сценарии добавятся к Марусе, и вы сможете управлять ими голосом.
Смотрите, как может работать ваш умный дом на базе Home Assistant с Марусей:
Если в процессе настройки что-то пойдёт не так, напишите в комментарии — мы постараемся ответить на вопросы и помочь. Удачных интеграций!
Автор: BlackWizard
Источник [22]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/blog-kompanii-vk/381055
Ссылки в тексте:
[1] дашборде: https://demo.home-assistant.io/#/lovelace/0
[2] Маруси: https://marusia.mail.ru/
[3] исправлениями: https://github.com/home-assistant/operating-system/releases
[4] Balena Etcher: https://www.balena.io/etcher/
[5] https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi4-64-9.3.img.xz: https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi4-64-9.3.img.xz
[6] https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi4-9.3.img.xz: https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi4-9.3.img.xz
[7] https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi3-64-9.3.img.xz: https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi3-64-9.3.img.xz
[8] https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi3-9.3.img.xz: https://github.com/home-assistant/operating-system/releases/download/9.3/haos_rpi3-9.3.img.xz
[9] http://homeassistant.local:8123: http://homeassistant.local:8123
[10] этой: https://habr.com/ru/company/singularis/blog/546072/
[11] https://github.com/ThomDietrich/home-assistant-addons: https://github.com/ThomDietrich/home-assistant-addons
[12] VPS: https://www.reg.ru/?rlink=reflink-717
[13] Как выбрать и за сколько купить VPS/VDS: https://habr.com/ru/post/510000/
[14] nginx: https://habr.com/ru/post/311212/
[15] http://ha.yourhost.ru: http://ha.yourhost.ru
[16] http://ha.yourhost.ru/api/yandex_smart_home/v1.0/ping: http://ha.yourhost.ru/api/yandex_smart_home/v1.0/ping
[17] платформу: https://platform.vk.com/
[18] http://ha.yourhost.ru/api/yandex_smart_home/v1.0: http://ha.yourhost.ru/api/yandex_smart_home/v1.0
[19] http://ha.yourhost.ru/auth/authorize: http://ha.yourhost.ru/auth/authorize
[20] http://ha.yourhost.ru/auth/token: http://ha.yourhost.ru/auth/token
[21] https://vc.go.mail.ru: https://vc.go.mail.ru
[22] Источник: https://habr.com/ru/post/702986/?utm_source=habrahabr&utm_medium=rss&utm_campaign=702986
Нажмите здесь для печати.