Найти тему
HASSStas: Рецепты HomeAssistant

Как подружить Сбер и HomeAssistant

Оглавление

В одной из предыдущих своих статей я рассматривал СберБум Мини и сделал вывод, что колонка более-менее норм, но для управления умным домом на базе HomeAssistant совершенно не годится. Там же в комментариях мне дали наводку на аддон (не интеграцию) MQTT-SberGate, который позволяет использовать API Сбера и прокинуть устройства из HomeAssistant в систему Сбера для управления.

Так Шедеврум от Яндекса видит умный дом Сбера. Ничего личного.
Так Шедеврум от Яндекса видит умный дом Сбера. Ничего личного.

Ну что ж, это интересно, и я изучил.

Репозиторий на гитхабе: https://github.com/JanchEwgen/MQTT-SberGate

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

Итак, поехали. Первое, что нам надо -

Регистрация в Studio

Переходим на портал разработчика Сбер, он же Studio - https://developers.sber.ru/studio/registration, и регистрируем себе учётную запись:

-2

После успешной регистрации на главной панели будет кнопка "Создать проект", откроется всплывающее окно, где нужно пролистать, найти и выбрать Smart Home MQTT:

-3

Как-нибудь назовём наш проект:

-4

И создадим контроллер, к которому и будем подключаться в итоге:

-5

Готово, вот такая запись теперь у нас есть в кабинете:

-6

Следующий шаг:

Добавляем аддон в HomeAssistant.

Ещё раз подчеркну - это не интеграция! Её нельзя добавить через HACS, должен быть установлен менеджер аддонов - Supervisor.

Заходим в дополнения, добавляем кастомный репозиторий https://github.com/JanchEwgen/MQTT-SberGate

После добавления репозитория новый аддон в списке доступных у меня появился не сразу, можно попробовать перезапустить HA или просто подождать. Когда новый аддон появится в списке - установить его.

-7

Пока не запускаем! Нам нужны все реквизиты для работы аддона - токен доступа в HA, логин и пользовательский пароль контроллера Сбер.

Создаём долгосрочный токен (Профиль - Безопасность):

-8

А вот теперь настраиваем брокер MQTT-Sber:

  • ha-api_url: копируем из адресной строки браузера.
  • ha-api_token: вставляем значение долгосрочного токена доступа, созданного ранее
  • sber-mqtt_broker: mqtt-partners.iot.sberdevices.ru
  • sber-mqtt_broker_port: 8883
  • sber-mqtt_login: логин контроллера, созданного в Studio
  • sber-mqtt_password: пароль контроллера (не пользовательский!)
  • sber-http_api_endpoint: адрес MQTT-сервера умного дома Sber, указан в контроллере в Studio
-9

Сохраняем и запускаем. Смотрим журнал, чтобы было написано, что брокер запущен корректно.

Подключаем облако к Салюту

Возвращаемся в Studio, заходим в свой контроллер, находим и жмём кнопку "Сгенерировать" в колонке Пользовательский пароль, сохраняем полученное значение.

В Салюте заходим в Устройства - плюсик - Устройства других производителей. Листаем в самый низ и выбираем "Подключить готовый умный дом", где вводим пользовательский пароль из Studio и - там ничего нет! А всё потому, что нужно включить видимость устройств для Сбера.

Возвращаемся в аддон MQTT-Sber и запускаем веб-интерфейс, протыкиваем галочки у устройств, которые нужно прокинуть в Сбер. Возвращаемся в приложение, обновляем список устройств и - опа! - отмеченные устройства появились в Сбере! Перезагружать ничего не надо - добавляем галочки, убираем галочки - всё тут же показывается в Сбере. Это, кстати, классно.

Что работает, что нет

Из всего многообразия, которое есть у меня в HomeAssistant, для выбора в веб-интерфейсе аддона доступны:

  • light.* - в Салюте видны как лампочки, можно включать и выключать, видно текущее состояние;
  • switch.* - отображаются как коробочки реле, можно включать и выключать, видно текущее состояние;
  • script.* - отображаются так же, коробочки реле. Можно включать, при этом в HA запускается скрипт. Текущее состояние не показывается, что логично, поскольку его нет - скрипт отработал и всё;
  • input_boolean.* - отображается как кнопка, при этом её можно настроить на нажатие, двойное нажатие и долгое нажатие с запуском каких-то событий в Сбере. При этом состояние input_boolean в HA не меняется;
  • sensor.* - прокидываются как показания, без возможности взаимодействия. Увы, но показывают у меня по нулям. И в веб-интерфейсе видны только сенсоры температуры, хотя если выбрать сенсор, принадлежащий, например, термогигрометру, то в Салюте отображается и значок температуры, и значок влажности. Но - по нулям.
  • button.* - по непонятным мне причинам недоступны для выбора в веб-интерфейсе

Все остальные домены в HA так же не видны в веб-интерфейсе аддона.

В заключение

В принципе, для базовых задач, типа управления светом или запуска скриптов голосом, в текущем виде аддон вполне жизнеспособен. Можно насоздавать скриптов на все случаи жизни и они все будут доступны отдельными сущностями в Салюте. В большинстве случаев этого хватает. Строить сложную автоматику в окружении Салюта, имея полноценный сервер HomeAssistant, я не думаю что найдутся желающие.

Возможно, в будущем допилят что-то ещё и аддон будет ещё более полезен, а мои изыскания в этой сфере закончены, я понял, что есть жизнь на марсе с Салютом, но менять религию пока не намерен.

Всем добра, пис, лайк, шер, подписка и телеграм.