Что умеет маруся как умная колонка - играет музыку с VK, управляет видео с Wink по подписке VK Combo за 169 руб./мес, есть поддержка некоторых умных домов. Поддерживает умный дом Xiaomi, но только в русском регионе - обычно для Xiaomi все выбирает регион китай потому что для китая число поддерживаемых устройств гораздо больше. Есть поддержка Yeelight, Roborock. Может позвонить на аккаунт VK или на другую марусю. Развлечения - типа новости, анекдоты, время, таймер, будильник, поиск. Позвонить с моего телефона не может, хотя колонка и может подключаться к телефону как bluetooth гарнитура. Ну в общем с самим телефоном особо не взаимодействует. DLNA нет. С календарем не взаимодействует, почту проверяет только в аккаунте mail.ru. Может вызвать такси с сервиса Ситимобил. Есть API для разработки скилов. Есть пуши для скилов, но если я понимаю все правильно, то колонку нельзя заставить что-то сказать "просто так" - например по событию от умного дома.
Но я то покупал колонку для того, чтобы не брать с полки телефон, когда надо выключить свет в спальне. Оказалось, что у маруси есть кастомная поддержка умного дома через Web Hooks (пункт DIY Hooks в списке умных домов маруси). Добавили ее в канун 2021 года. Поддерживает только включение-выключение. Этой фиче явно не уделяется много внимания - ждать чего-то нового не стоит - например в android приложении пункт DIY Hooks немного глючит. Есть возможность задать свои Http Headers (например для авторизации). Есть возможность передать json в теле запроса. Http запрос отправляется с внешнего адреса, поэтому для интеграции надо будет выставить web интерфейс home assistant в интернет. Не всегда обязательно иметь для этого белый IP - например, если у вас роутер ZyXel, то можно использовать их сервис KeenDNS.
Мой умный дом работает в основном под управлением HomeAssistant. И Mi Home немножко. HomeAssistant не создан для простых людей - чтобы им пользоваться нужны некоторые специальные навыки и знания. Поэтому и инструкции особо не нужны - народ догадливый - сам разберется. Но я все же оставлю это здесь, для тех, кто еще размышляет о покупке маруси или установке home assistant.
Для доступа к сервисам Home Assistant через web нам понадобится долгосрочный токен доступа. Идем в HomeAssistant - левая колонка навигации, самый низ, имя или иконка пользователя, жмем. В открывшейся странице "Профиль" пункт "Долгосрочные токены доступа" - генерируем и сохраняем.
Затем идем на сайт с описанием HomeAssistant web API и вясняем, что нам надо отправить POST запрос на URL `/api/services/<domain>/<service>`.
Чтобы понять какой сервис нам надо дернуть идем в HomeAssistant - Панель разработчика - Службы - ищем нужную службу и нужный объект (цель). Я выбрал сервис "Выключатель: Turn on (switch.turn_on)", цель - "пространство Bedroom". Можно протестировать сервис нажав "Вызвать службу" и убедиться, что он действительно делает то, что вы от него ожидаете. После этого жмем "Перейти в режим Yaml" и смотрим что там.
Получился вот такой YAML:
Исходя из этого нам надо сделать такой http запрос:
URL: https://<hass_addr>/api/services/switch/turn_on
Http Headers:
- Authorization: Bearer $LONG_LIVING_TOKEN
- Content-Type: application/json,
Body (payload): {"area_id": "bedroom"}
Можно попробовать выполнить этот запрос через curl и убедиться, что все работает.
```
LONG_LIVING_TOKEN='...'
HASS_ADDR='...'
curl -X POST -H "Authorization: Bearer $LONG_LIVING_TOKEN" \
-H "Content-Type: application/json" \
-d '{"area_id": "bedroom"}' \
"https://${HASS_ADDR}/api/services/switch/turn_off"
Все, мы готовы к настройке маруси. Готовим yaml файл со списком устройств и http запросами, которые необходимо вызвать для включения и выключения устройства. Вот пример от разработчиков маруси - yaml файл, который разработчики маруси отображают в приложении. Вот список типов устройств. Думаю тип устройства нужен, чтобы маруся лучше могла распознать действие. Ну, например, свет можно включить, а кофеварку запустить.
Свой yaml файл для включения и выключения света в спальне я выложил на GitHub, без LongLivingToken и без адреса сервера - моя вера в людей не стопроцентна.
Вам надо создать свой yaml файл на основе примеров, вставить туда адрес своего доступного из интернета Home Assistant сервера и свой Long Living Token. Адреса типа 192.168.х.х или 10.х.х.х не подойдут! Затем этот файл надо как-то передать на телефон и в процессе настройки скопировать в буфер обмена. В android приложении есть кнопка загрузить файл, но она не работает.
Заходим в приложение маруся на смартфоне, настройки, выбираем "Умный дом", листаем список умных домов вниз, выбираем "DIY Hooks", жмем "Войти в VK", выбираем "Умный дом загрузка описания формата YAML или JSON" и вставляем наш YAML файл и жмем "Сохранить".
Нормального обновления JSON описания устройств я не увидел. Чтобы обновить (например для добавления нового устройства) - я отключаю в марусе Умный дом DIY Hooks (маруся - настройки - "Умный дом" - "DIY Hooks" - кнопка "Отключить сервис"), потом заново его настраиваю. Но старые настройки не исчезают - можно откатиться к предыдущей работающей конфигурации.
Комментариев нет:
Отправить комментарий