HomeAssistant на Android

HomeAssistant Update

HomeAssistant Update

90% людей подключают к Умному Дому только лампочки для освещения. Вся индустрия Умного Дома заточена и протестирована под лампочки.

При подключении других типов устройств могут возникать проблемы с выбором интерфейса для управления из ограниченного списка элементов UI.

После подключении хочется задать условие для выполнения нужного действия. Простое условие «Если нажата кнопка, тогда включи свет» можно через UI с помощью ограниченного YAML задать. Для условия посложнее лучше сразу создать custom component на Python.

Ах, да… с апреля 2020 разработчики удаляют конфигурацию YAML. А с лета 2023 указывали сроки удаления.

Вся конфигурация HomeAssistant теперь хранится в хаотичных JSON’ах с возможностью начальной настройкой только через UI. Тоесть адрес, порт и пароль к MQTT через configuration.yaml не задать. В Git эти JSON’ы хранить сложнее, потому что постоянная конфигурация и меняющийся (временные токены доступа и т.д.) находятся в одном файле.

Помимо лампочек к HomeAssistant можно подключить устройства отвечающие за безопасность: датчики дыма, потопа, незаконного проникновения и т.п. Но кроме датчиков, которые срабатывают 1 раз за несколько лет, можно подключить более актуальные:

  • датчик состояния бабушки

  • проснулись ли детки?

  • мой сервер опять упал?

  • и т.д. (custom component на Python)

А вот теперь, когда лампочки, датчики, бабушка с детками и сервер подключены к HomeAssistant… пора начать получать уведомления на телефон!

HomeAssistant на Android ужасен!

На iOS врядли лучше…

HomeAssistant можно пользоваться через browser. Приложение на Android загружает HomeAssistant в WebView + показывает уведомления на телефоне и посылает данные (батарея, местоположение и т.д.) в HomeAssistant.

Сейчас приложение на Android «разрабатывают» 1.5 человека D&J (первые буквы их ников). В основном D&J только принимают pull request.

6 апреля 2024 в Google Play опубликовали версию 2024.3.5 и часть телефонов не могут запустить приложение из-за критической ошибки. Исправленную версию от 6 апреля можно скачать по секретной ссылке с GitHub. Но D&J не хотят даже опубликовать в Google Play исправленную версию, потому что (по мнению D&J) только 1% пользователей пострадали.

Известные проблемы HomeAssistant Android:

  • Нет тестов. Совсем нет никаких тестов!

  • Проверка доступности сервера HomeAssistant сделана через ж… Точнее, опрос «Загрузился?», когда WebView уже вернулся с ERR_TIMEOUT. (#4272)

  • Вид widget’ов ужасен. Иконки и надписи не загружаются. Про вид из HomeAssistant забудьте! Только состояние (state) показывает.

  • Widget’ы в Lawnchair не работают — хз чей косяк.

  • Нет возможности по QR дать доступ. Только руками вводить адрес, логин, пароль.

  • и т.д.

Отношения сообщества HomeAssistant

Я отдаю себе отчёт, что баги есть (поэтому я версию HomeAssistant зафиксировал), сервер может падать (уже ронял) и т.п. В Discord я уже указывал на критические ошибки и каждый раз получал ответ (и D&J поддерживают):

Гыгы, этот идиот не может включить свет без HomeAssistant!

Версия от 6 апреля 2024 является апогеем этого отношения. D&J обещали опубликовать исправленную версию в Google Play через неделю, но это не точно.

Разъясню ситуацию ещё раз:
Сейчас обычные люди (бабушки, дедушки, мамы, папы и т.д.) не могут пользоваться HomeAssistant в своём же доме после авто-обновления клиента на Android. Исправленную версию уже можно скачать, но на телефонах обычных людей будет через неделю или через 2 месяца.

Выводы

HomeAssistant при правильной настройке дает возможности человеку с инвалидностью включить свет, регулировать отопление и т.д. Родственникам предоставляется возможность лишний раз не волноваться.

Отношение разработчиков ПО для Умного Дома, как к «игрушке» — нужно учесть в первую очередь!

Если ты, Хабражитель, имеешь опыт Kotlin, то доведи HomeAssistant Android до адекватного состояния, плиззз.

© Habrahabr.ru