Перейти к содержанию

Подключение устройств ioBroker в Алису: различия между версиями

Материал из Wiki yaboard
Новая страница: «== Настройка адаптера == За основу взята статья https://wiki.yaboard.com/w/Алиса_и_ioBroker и доработана. 1.…»
 
Нет описания правки
 
(не показано 20 промежуточных версий 2 участников)
Строка 1: Строка 1:
{{metadesc| Проброс и настройка устройств в УДЯ из системы ioBroker }}
__NOEDITSECTION__
__TOC__
== Вступление ==
Не буду рассказывать о плюсах/минусах самой системы ioBroker, потому что банально не сравнивал сам: установил и пользуюсь по принципу "поставил - поехал". Эта глава скорее для тех, кто сомневается в преимуществах развёртывания '''локального сервера УД'''.
Итак, '''какие плюсы получает владелец своего сервера?'''
* Независимость от состояния китайских серверов (если речь идет об устройствах xiaomi, итд);
* Полный контроль над системой (нет фобии, что завтра те же сервера закроются и система рухнет);
* Нет зависимости от постоянно отваливающихся сторонних навыков (отвязать/привязать устройство, не помогло, удалил/добавил, не помогло, писать в поддержку, ждать, пробовать снова...);
* Нет зависимости от Интернета (даже когда нет связи с Яндексом и другими аккаунтами, локальный умный дом не перестанет работать, а управлять им в это время можно и кнопками);
* Развитые сценарии локального "самоуправления";
* Не нужно произносить лишних фраз "запусти навык...", "попроси %имя_навыка% включить..." (да, это можно ''частично'' прятать в сценариях);
* Не нужны громоздкие цепочки "Алиса - Навык - IFTTT и обратно". Каждый шлюз - это свой сервис, со своими правилами/требованиями/интересами и т.д.
== Настройка адаптера ==
== Настройка адаптера ==
За основу взята статья https://wiki.yaboard.com/w/Алиса_и_ioBroker и доработана.


1. Регистрируемся на сайте, подтверждаем почтовый ящик.
https://iobroker.pro/intro
Устанавливаем драйвер "IoT Assistants". Заходим в настройки.
В ассистентах отмечаем Yandex Алиса;
Указываем логин-пароль подключения к ioBroker.pro;
Жмём "Сохранить" - адаптер перезапустится;
В случае успешного старта на почту придет индивидуальный пароль для этого экземпляра ("инстанса") ioBroker.iot.


===== Этот пункт не описан на вики автора, что делать с паролем: =====
За основу взята (и доработана) статья "[[Алиса и ioBroker]]".
 
 
=== Создаём учётную запись в системе ioBroker ===
 
 
* Регистрируемся [https://iobroker.pro/intro на сайте], подтверждаем почтовый ящик.
* Устанавливаем драйвер "[https://github.com/ioBroker/ioBroker.iot/blob/master/README.md Соединение Cloud IoT]", заходим в настройки:
** В ассистентах отмечаем Yandex Алиса;
** Указываем логин-пароль подключения к ioBroker.pro;
** Жмём "Сохранить" (адаптер перезапустится).
 
 
=== Объединяем аккаунты в приложении Яндекс ===
 
 
* Открываем приложение Яндекса;
* Переходим в [https://yandex.ru/quasar квазар] - "Управление устройствами";
* "Добавить устройство" - "ioBroker";
* Вводим логин/пароль от учётной записи iobroker.pro
* Разрешаем доступ указанному устройству.
 
Если не удалось связать - поменяйте/установите в настройках телефона браузер по умолчанию и пробуйте снова, или воспользуйтесь веб-версией квазара Яндекса.
 
 
=== Настройки драйвера "IoT Assistants" в iob ===
 
Подготовительный этап:
 
* Открываем iobroker, делаем активную вкладку (если не было раньше) "Категории" и переходим в неё.
* Создаем комнаты, где планируется разместить умные устройства.
* Создаем для них функции: свет, отопление, жалюзи, техника и т.д.
* Открываем "Объекты" в ioBroker, и в каждом нужном нам устройстве выставляем "Функции" и "Комнату".
 
 
[[Файл:P5new.jpeg|600px|Привязка комнат и функций]]
 
 
Теперь открываем настройки драйвера "IoT Assistants", во вкладке "устройства Алисы" должны появиться наши объекты.
 
 
[[Файл:p6.png|600px|Устройства Алисы]]
 
  Часть информации взята здесь:
- "[https://forum.iobroker.net/topic/25560/драйвер-iot-assistants-и-алиса Драйвер IoT Assistants и Алиса]"
- "[[Алиса и ioBroker]]"
 
 
== Примеры устройств и нюансы настройки ==
 
 
В данный момент у меня подключены:
* '''Подрозетники Sonoff''';
* '''Шлюз Xiaomi''', выполняющий роль ночника в комнате (с регулировкой яркости);
* '''Пылесос Xiaomi''' Mi Robot Vacuum 1 поколение;
* '''Выключатель Tuya''';
 
 
=== Подрозетники sonoff ===
 
После того, как Вы объединили аккаунты iob и алисы, в настройках драйвера (см предыдущую иллюстрацию) должны появиться устройства.
* Находим подрозетники "sonoff", указываем ему имя, комнату (заданное внутри iob имя и остаётся внутри; включать голосом будете по тому имени, которое укажете в настройке устройства Алисы.
* Модель устройства перекочует из iob (удобно, сразу понятно, через что устройство прокинуто в Алису).
 
[[Файл:sonoff.jpg|300px|Настройка в аккаунте]]
 
С недавним обновлением Яндекса, если устройство и колонка привязаны к определенной комнате (например, "гостиная"), достаточно сказать "Алиса, включи зеркало" - и у Вас включится "зеркало" в гостиной.
 
 
=== Шлюз Xiaomi в роли ночника ===
 
Шлюз заведен в iob через драйвер "mihome", в настройке достаточно указать IP-адрес шлюза и его токен ([https://www.kapiba.ru/2017/11/mi-home.html этим модифицированным приложением]).
 
После связки аккаунтов Алисы и iob точно так же задаем комнату, имя.
 
[[Файл:Gateway.jpg|300px|Настройка в аккаунте]]
 
Из интересного: можно управлять яркостью и цветом нашего "ночника".
 
 
=== Пылесос Xiaomi Mi Robot Vacuum 1 поколение ===
 
 
Мне было важно, чтобы пылесос запускал уборку в определенной комнате (зональная уборка). В первой версии этого пылесоса такой фичи нет.
 
Простейшее решение проблемы: в приложении mihome грузится карта (если не заглючит и не скажет, что карту забыл), затем ручками выбирается сектор и отправляется на уборку.
 
Круто, но нет. Чтобы стало круто, '''используем скрипты iobroker.'''
 
Нам понадобятся драйвера "mihome-vacuum" и "javascript" (предполагаем, что нужное, чтобы рулить скриптами в iob, у Вас имеется).
 
Скрипт до безобразия прост. Главное - раздобыть координаты комнаты и забиндить их в скрипт. Создаем скрипт, называем по вкусу, и делаем 2 блока: один на установку уборки, а второй просто тушит скрипт (заглушка).
 
[[Файл:Pulaski.png|600px|Пример скрипта]]
 
 
Теперь самое простое (сложное): '''найти координаты комнаты.''' В открытом виде их нет нигде.
 
Я искал в инете, натыкался на немецких авторов и ничего там не понимал. Что-то программировать я не умею, так что всё методом тыка, по-деревенски. Если кто научит получать их как-то иначе, чем делал я, буду премного благодарен.
 
Итак, что я делаю: в скрипт выше начинаю вписывать различные значения комнаты и потом смотрю в приложении "mihome", что он отрисовал. Методом тыка понял, что координаты пределов задаются примерно так:
[верхний левый, нижний левый, нижний правый, верхний правый]
[22600, 21000, 26300, 26100, 1]
Странно звучит, согласен. В доке описано про x1,y1,x2,y2 - непонятно, как соотносится.
 
 
После того, как координаты более-менее подобраны, окончательно забиваем их в скрипт, и повторяем процесс для каждой комнаты.
 
[[Файл:Script.png|600px]]
 
 
Должны подтянуться созданные скрипты. Настроим их запуск в приложении Яндекс. Для скрипта из примера я указал имя "Пылесос" и привязал его к комнате. Теперь по команде "включи пылесос в гостиной" запускается зональный скрипт уборки.
 
[[Файл:Pul_ya.jpg|300px|Настройка в аккаунте]]
 
 
=== Выключатель Tuya ===
 
Как и со всеми устройствами выше, нужно указать комнату и функцию, после этого обновить список устройств.
 
'''Обязательно обновляем список устройств в Алисе!'''
 
Успехов и удачи в освоении ioBroker, и больше новых умных устройств в вашем доме!


Открываем приложение Яндекса
Переходим в знакомый всем квазар - управление устройствами
Добавить устройство - ioBroker
и вот здесь связываем аккаунты йоба и алисы с помощью пароля выше.


Если аккаунты связались, всё круто, едем дальше.
[[Category:Умный дом]]
Возвращаемся в настройки драйвера "IoT Assistants" в iob. На вкладке "умные перечисления" должны появится "функции" и "комнаты". Если есть, всё круто. Это всё можно отредактировать во вкладке "категории" ioBroker-а.
Далее, открываем "объекты" в ioBroker, и, в каждом устройстве, которым хотим управлять, выставляем "функции" и "комнату".
<gallery>
P5new.jpeg|привязка комнат и функций
</gallery>
Откроем еще раз настройки драйвера "IoT Assistants", во вкладке "устройства Алисы" так же должны появится объекты. Если есть, всё круто.
<gallery>
p6.png|устройства Алисы
</gallery>
=== Я много пишу "если, то круто" и не разбираю что делать, если есть трудности. гуглить. Предугадать все возможные трудности тяжело, но статья расчитана на то, что у Вас есть минимальное (очень надеюсь, что выше моего) представление о платформе iob, а так же мозги и чуйка. Анализировать ошибки, гуглить, вникать, разбираться. Гуглится iobroker алиса. Оставлю ссылку, где я еще брал материал: ===
https://forum.iobroker.net/topic/25560/драйвер-iot-assistants-и-алиса
https://wiki.yaboard.com/w/Алиса_и_ioBroker

Текущая версия от 07:21, 7 апреля 2022

Вступление

Не буду рассказывать о плюсах/минусах самой системы 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 - непонятно, как соотносится.


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


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

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

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

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

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

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