Яндекс.Погода в Home Assistant

11d07f44993673e843d92488659b5952

После того как gismeteo стал все чаще и чаще огорчать недоступностью данных в Home Assistant (а я утром оказывался на холодном полу в ванной потому что HA не мог узнать какая погода на улице и нужно ли ему включать теплый пол), я задумался о смене источника погодной информации. Выбор пал на Яндекс.Погоду. В начале хотел обойтись command_line сенсором, который бы тянул температуру через API, но сорвался и запилил целую интеграцию, которой и хотел бы поделиться.

Pull Request на добавление в HACS висит на рассмотрении (видимо, сказывается отсутсвие востребованности у нового репозитория), так что репозиторий (пока) придется добавлять в ручную как пользовательский: HACS → Интеграции → Три точки в правом верхнем углу → пользовательские репозитоии. Заполняем:

После чего интеграцию можно установить через HACS, перезапустить Home Assistant и добавить в HA в разелее настроек «Устройства и службы».

Дальше понадобится ключ API Яндекс.Погоды (бесплатный, без ограничения срока, но с ограничением количества запросов в сутки, называется «Погода на вашем сайте»), координаты интеграция берет из настроек HA.

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

  • Яндекс обновляет погодные данные (по крайней мере для Москвы на бесплатном тарифе) раз в час, поэтому 50 запросов в сутки, доступных на бесплатном тарифе, вполне достаточно.

  • Яндекс рисует свои картинки со статусом погоды. Ссылка на картинку с текущим статусом доступна через компонент погоды интеграции, в атрибуте entity_picture

  • Погодные состояния Яндекса гораздо богаче чем предусмотренные в Home Assistant, поэтому вынесены в отдельный сенсор.

  • Через API прогноз отдается в виде прогноза на часть суток (утро/день/вечер/ночь) и в интеграцию пока не добавлен (но будет в следующих релизах).

  • При смене погодного состояния интеграция выбрасывает event, который можно использовать в автоматизациях.

Habrahabr.ru прочитано 8493 раза