Подключение устройств ioBroker в Алису

Материал из База знаний
Перейти к навигации Перейти к поиску



Вступление

Не буду рассказывать о плюсах/минусах самой системы ioBroker, потому что банально не сравнивал сам: установил и пользуюсь по принципу "поставил - поехал". Эта глава скорее для тех, кто сомневается в преимуществах развёртывания локального сервера УД. 

Итак, какие плюсы получает владелец своего сервера?

  • Независимость от состояния китайских серверов (если речь идет об устройствах xiaomi, итд);
  • Полный контроль над системой (нет фобии, что завтра те же сервера закроются и система рухнет);
  • Нет зависимости от постоянно отваливающихся сторонних навыков (отвязать/привязать устройство, не помогло, удалил/добавил, не помогло, писать в поддержку, ждать, пробовать снова...);
  • Нет зависимости от Интернета (даже когда нет связи с Яндексом и другими аккаунтами, локальный умный дом не перестанет работать, а управлять им в это время можно и кнопками);
  • Развитые сценарии локального "самоуправления";
  • Не нужно произносить лишних фраз "запусти навык...", "попроси %имя_навыка% включить..." (да, это можно частично прятать в сценариях);
  • Не нужны громоздкие цепочки "Алиса - Навык - IFTTT и обратно". Каждый шлюз - это свой сервис, со своими правилами/требованиями/интересами и т.д.


Настройка адаптера

За основу взята (и доработана) статья "Алиса и ioBroker".


Создаём учётную запись в системе ioBroker

  • Регистрируемся на сайте, подтверждаем почтовый ящик.
  • Устанавливаем драйвер "Соединение Cloud IoT", заходим в настройки:
    • В ассистентах отмечаем Yandex Алиса;
    • Указываем логин-пароль подключения к ioBroker.pro;
    • Жмём "Сохранить" (адаптер перезапустится).


Объединяем аккаунты в приложении Яндекс

  • Открываем приложение Яндекса;
  • Переходим в квазар - "Управление устройствами";
  • "Добавить устройство" - "ioBroker";
  • Вводим логин/пароль от учётной записи iobroker.pro
  • Разрешаем доступ указанному устройству.
Если не удалось связать - поменяйте/установите в настройках телефона браузер по умолчанию и пробуйте снова, или воспользуйтесь веб-версией квазара Яндекса.


Настройки драйвера "IoT Assistants" в iob

Подготовительный этап:

  • Открываем iobroker, делаем активную вкладку (если не было раньше) "Категории" и переходим в неё.
  • Создаем комнаты, где планируется разместить умные устройства.
  • Создаем для них функции: свет, отопление, жалюзи, техника и т.д.
  • Открываем "Объекты" в ioBroker, и в каждом нужном нам устройстве выставляем "Функции" и "Комнату".


Привязка комнат и функций


Теперь открываем настройки драйвера "IoT Assistants", во вкладке "устройства Алисы" должны появиться наши объекты.


Устройства Алисы

 Часть информации взята здесь:
- "Драйвер IoT Assistants и Алиса"
- "Алиса и ioBroker"


Примеры устройств и нюансы настройки

В данный момент у меня подключены:

  • Подрозетники Sonoff;
  • Шлюз Xiaomi, выполняющий роль ночника в комнате (с регулировкой яркости);
  • Пылесос Xiaomi Mi Robot Vacuum 1 поколение;
  • Выключатель Tuya;


Подрозетники sonoff

После того, как Вы объединили аккаунты iob и алисы, в настройках драйвера (см предыдущую иллюстрацию) должны появиться устройства.

  • Находим подрозетники "sonoff", указываем ему имя, комнату (заданное внутри iob имя и остаётся внутри; включать голосом будете по тому имени, которое укажете в настройке устройства Алисы.
  • Модель устройства перекочует из iob (удобно, сразу понятно, через что устройство прокинуто в Алису).

Настройка в аккаунте

С недавним обновлением Яндекса, если устройство и колонка привязаны к определенной комнате (например, "гостиная"), достаточно сказать "Алиса, включи зеркало" - и у Вас включится "зеркало" в гостиной.


Шлюз Xiaomi в роли ночника

Шлюз заведен в iob через драйвер "mihome", в настройке достаточно указать IP-адрес шлюза и его токен (этим модифицированным приложением).

После связки аккаунтов Алисы и iob точно так же задаем комнату, имя.

Настройка в аккаунте

Из интересного: можно управлять яркостью и цветом нашего "ночника".


Пылесос Xiaomi Mi Robot Vacuum 1 поколение

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

Простейшее решение проблемы: в приложении mihome грузится карта (если не заглючит и не скажет, что карту забыл), затем ручками выбирается сектор и отправляется на уборку.

Круто, но нет. Чтобы стало круто, используем скрипты iobroker.

Нам понадобятся драйвера "mihome-vacuum" и "javascript" (предполагаем, что нужное, чтобы рулить скриптами в iob, у Вас имеется).

Скрипт до безобразия прост. Главное - раздобыть координаты комнаты и забиндить их в скрипт. Создаем скрипт, называем по вкусу, и делаем 2 блока: один на установку уборки, а второй просто тушит скрипт (заглушка).

Пример скрипта


Теперь самое простое (сложное): найти координаты комнаты. В открытом виде их нет нигде.

Я искал в инете, натыкался на немецких авторов и ничего там не понимал. Что-то программировать я не умею, так что всё методом тыка, по-деревенски. Если кто научит получать их как-то иначе, чем делал я, буду премного благодарен.

Итак, что я делаю: в скрипт выше начинаю вписывать различные значения комнаты и потом смотрю в приложении "mihome", что он отрисовал. Методом тыка понял, что координаты пределов задаются примерно так:

[верхний левый, нижний левый, нижний правый, верхний правый]
[22600, 21000, 26300, 26100, 1]

Странно звучит, согласен. В доке описано про x1,y1,x2,y2 - непонятно, как соотносится.


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

Script.png


Должны подтянуться созданные скрипты. Настроим их запуск в приложении Яндекс. Для скрипта из примера я указал имя "Пылесос" и привязал его к комнате. Теперь по команде "включи пылесос в гостиной" запускается зональный скрипт уборки.

Настройка в аккаунте


Выключатель Tuya

Как и со всеми устройствами выше, нужно указать комнату и функцию, после этого обновить список устройств.

Обязательно обновляем список устройств в Алисе!

Успехов и удачи в освоении ioBroker, и больше новых умных устройств в вашем доме!

Источник — https://wiki.yaboard.com/index.php?title=Подключение_устройств_ioBroker_в_Алису&oldid=6076 // MOD ext links // End MOD