Найти в Дзене
Sprut.ai

Home Assistant, статья 4 (интеграция с HomeKit)

Сегодня разберемся, как на уже настроенном Home Assistant (далее HA) включить интеграцию с HomeKit и отфильтровать только нужные нам устройства.

Часть первая

Список всего, что может быть прокинуто можно найти на официальной страничке плагина тут. По сути это подавляющее большинство устройств (перевод с офф страницы):

  • Сигнализации
  • Автоматизации (как переключатели вкл/выкл)
  • Бинарные сенсоры
  • Термостаты и прочие устройства связанные с климатом
  • Устройства управления рольставнями, воротами, шторами и прочим
  • Трекинг пользователей и устройств (как датчики движения)
  • Вентиляторы
  • Светильники
  • Замки
  • Медиаплееры 
  • Сенсоры температуры, света, качества воздуха, влажности, СО2
  • Выключатели

У меня заработало все, кроме управления телевизором Самсунг. А так же к сожалению нельзя (надеюсь это временно) работать с камерами. Ну что ж приступим!Подключаемся к нашей малинке через ssh и редактируем конфиг:

ssh pi@your_raspberry_ip
cd /home/homeassistant/.homeassistant/
sudo nano configuration.yaml


В конец файла добавляем:

homekit:


Сохраняем файл и перезапускаем HA. Ждем около 15 минут, пока не начнет работать веб морда. Время необходимо, что бы HA скачал нужный нам плагин и импортировал поддерживаемые устройства в свой собственный бридж. Когда веб морда заработает, на главной появится вот такая плашка с кодом для добавления в Кит:

Далее процесс такой же как и в хоумбридж. Открываем приложение Дом, жмакаем по кнопочке добавить аксессуар, жмем внизу по строчке "нет кода или не можете сканировать?", выбираем наш бридж, который там появится, и вводим код с плашки как пин:

-2
-3

После этого приступаем к раскидываю устройств по комнатам и их переименованию:

-4
-5

Часть вторая

Теперь разберемся, как отфильтровать и импортировать только те устройства, которые нам нужны. На данный момент есть небольшой баг, и если включить фильтр - он скорее всего проявится и у вас. При включенном фильтре могут не появляться никакие устройства в ките, это происходит потому, что плагин хоумкита запускается раньше, чем HA успеет найти ваши подключенные устройства. Фиксится это задержкой запуска плагина. Как это сделать? Находим в нашем конфиге вот такую строчку и проверяем, что перед ней не стоит знак #:

automation: !include automations.yaml


Эта строчка говорит, что HA будет брать все настроенные автоматизации из файла automations.yaml. Сохраняем конфиг и открываем этот файл:

sudo nano automation.yaml


Удаляем все что в нем есть и добавляем следующий текст:

- alias: 'HomeKit Delayed Start'
trigger:
- platform: homeassistant
event: start
action:
- delay: 00:05
- service: homekit.start


В данной автоматизации мы создали триггер на выполнение действия - запуск HA, а само действие - запуск плагина homekit с задержкой 5 минут. После можно сохранить конфига автоматизаций и проверить его на правильность через веб морду. После чего возвращаемся к правке основного конфига: 

sudo nano configuration.yaml


Находим наш раздел, где мы писали
homekit: и добавляем в него следующие строчки (чуть дальше я расскажу что и зачем мы добавляем):

homekit:
auto_start: false
filter:
include_domains:
- climate
- switch
- light
exclude_entities:
- switch.plug_158d0001b195fd
- light.gateway_light_286c07f1c549


auto_start: false 

Этой строчкой мы запретили плагину запускаться автоматически, т.к. мы ранее добавили автоматизацию по его запуску

filter:

Указываем, что у нас будет работать фильтр

include_domains:

Тут мы перечисляем, какие типы устройств у нас будут прокидываться. Вам необходимо перечислить то, что вы настроили ранее в конфиге. 

exclude_entities:

Здесь указываем, какие устройства из типов выше мы не хотим видеть в ките. Где их найти? Идем в веб морду HA и нажимаем на кнопку "состояния":

-6

Справа в первой колонке во всем списке будет видно все настроенные устройства. Именно их названия, как в таблице, надо указывать выше в разделе exclude_entities: 

После того, как все нужное и ненужное мы указали, сохраняем конфиг и в последний раз проверяем его на правильность в веб морде. Далее можно перезапустить HA, через пять минут после перезапуска, все исключенные устройства пропадут из кита и можно продолжать пользоваться своим умным домом! В следующий статье мы немного разберемся, как устроены автоматизации в HA.