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

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

Материал из Wiki yaboard
Нет описания правки
Нет описания правки
Строка 7: Строка 7:




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


Посыл скорее для тех, кто сомневается в преимуществах размещения '''локального сервера УД'''. Какие плюсы получает владелец своего сервера:
Посыл скорее для тех, кто сомневается в преимуществах размещения '''локального сервера УД'''. Какие плюсы получает владелец своего сервера:
Строка 59: Строка 59:


Далее, открываем "Объекты" в ioBroker, и в каждом нужном нам устройстве выставляем "Функции" и "Комнату".
Далее, открываем "Объекты" в ioBroker, и в каждом нужном нам устройстве выставляем "Функции" и "Комнату".
<gallery>
[[Файл:P5new.jpeg|600px|Привязка комнат и функций]]
P5new.jpeg|привязка комнат и функций
 
</gallery>
 
Откроем еще раз настройки драйвера "IoT Assistants", во вкладке "устройства Алисы" так же должны появится объекты. Если есть, всё круто.
Откроем еще раз настройки драйвера "IoT Assistants", во вкладке "устройства Алисы" так же должны появится объекты. Если есть, всё круто.
<gallery>
[[Файл:p6.png|600px|Устройства Алисы]]
p6.png|устройства Алисы
</gallery>


  Предугадать все возможные трудности тяжело, статья рассчитана на то, что у Вас уже есть минимальное представление о платформе iob, мозги и чуйка.  
  Предугадать в статье все возможные проблемы тяжело; будем считать, что у Вас уже есть минимальное представление о платформе iob, мозги и чуйка.  
  Анализируйте ошибки, используйте поиск ("iobroker алиса"). Ещё я брал информацию здесь:
  Анализируйте ошибки, используйте поиск ("iobroker алиса"). Ещё я брал информацию здесь:
  https://forum.iobroker.net/topic/25560/драйвер-iot-assistants-и-алиса
  https://forum.iobroker.net/topic/25560/драйвер-iot-assistants-и-алиса
Строка 73: Строка 71:




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


Немного очевидности: все устройства, которые Вы заводите в iob, должны уметь работать с Алисой.


Здесь описаны примеры, как прокинуты различные устройства и их настройка.
В данный момент у меня подключены:
Немного очевидных вещей:
* '''Подрозетники Sonoff''';
Все устройства, которые Вы заводите в iob, теоретически, должны работать с Алисой.
* '''Шлюз Xiaomi''', выполняющий роль ночника в комнате (с регулировкой яркости);
В данный момент у меня имеются:
* '''Пылесос Xiaomi''' Mi Robot Vacuum 1 поколение;
* подрозетники sonoff;
* шлюз xiaomi, выполняющий роль ночника в комнате (с регулировкой яркости);
* пылесос Xiaomi Mi Robot Vacuum 1 поколение;




=== Подрозетники sonoff ===
=== Подрозетники sonoff ===
'''Предполагается, что они уже прошиты и настроены на работу непосредственно в iob, управляются из интерфейса. Вставляются в цепь между светильником и розеткой.'''


После того, как Вы объединили аккаунты iob и алисы, должны явится устройства.
* Находим подрозетники "sonoff", указываем ему имя, комнату. Имя, которое задано внутри iob не роляет, включать будет то, что обзовете непосредственно в настройке устройства Алисы.
* При этом модель устройства перекочует из iob, удобно, сразу понятно через что устройство прокинуто в Алису.
<gallery>
sonoff.jpg|Настройка в аккаунте
</gallery>
''С последним обновлением Яндекса, теперь, если устройство и колонка привязаны к определенной комнате, достаточно сказать "Алиса, включи зеркало" и у Вас, при соблюдении условий выше, включится "зеркало" в гостиной.''
Видеодемонстрация: <embedvideo service="youtube">//youtu.be/7SdKcjnlTAs</embedvideo>


Предполагается, что они уже прошиты и настроены на работу непосредственно в iob, управляются из интерфейса.
Установлены в цепь между светильником и розеткой.


=== Шлюз xiaomi в роли ночника ===
После того, как Вы объединили аккаунты iob и алисы, в настройках драйвера (см предыдущую иллюстрацию) должны появиться устройства.
Изначально, шлюз был приобретен 257 лет назад, как основа для УД. Но затем, узнав о платформе iob, и последующем разворачивании УД на нем, шлюз оказался ненужным.  
* Находим подрозетники "sonoff", указываем ему имя, комнату (заданное внутри iob имя и остаётся внутри; включать голосом будете по тому имени, которое укажете в настройке устройства Алисы.  
* Модель устройства перекочует из iob (удобно, сразу понятно, через что устройство прокинуто в Алису).
[[Файл:sonoff.jpg|300px|Настройка в аккаунте]]


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


Заведен в iob через драйвер "mihome", настройка так же проста, нужно указать IP адрес шлюза и его токен. Тоже гуглится, добывается в приложении mihome.
Видеодемонстрация:
<youtube>//youtu.be/7SdKcjnlTAs</youtube>


Предполагается, что Вы настроили шлюз, он управляется из iob, всё круто. После связки аккаунтов Алисы и iob точно так же, задаем комнату, имя.
 
<gallery>
=== Шлюз Xiaomi в роли ночника ===
Gateway.jpg|Настройка в аккаунте
 
</gallery>
 
''Из интересного, можно управлять яркостью и цветом.''
Когда-то давно этот шлюз был приобретен, как основа для УД. Но с переходом на ioBroker и разворачивании УД на нём, шлюз стал ненужным. Тогда было принято решение сделать из него ночник.
Видеодемонстрация: <embedvideo service="youtube">//youtu.be/0Ua-gx-7GvU</embedvideo>
 
Шлюз заведен в iob через драйвер "mihome", в настройке достаточно указать IP-адрес шлюза и его токен (добывается в настройках вашего роутера, например, и в приложении mihome).
 
Предполагается, что Вы настроили шлюз, он управляется из iob, всё круто. После связки аккаунтов Алисы и iob точно так же задаем комнату, имя.
 
[[Файл:Gateway.jpg|600px|Настройка в аккаунте]]
 
Из интересного: можно управлять яркостью и цветом нашего "ночника".
 
Видеодемонстрация:  
<youtube>//youtu.be/0Ua-gx-7GvU</youtube>




=== пылесос Xiaomi Mi Robot Vacuum 1 поколение ===
=== пылесос Xiaomi Mi Robot Vacuum 1 поколение ===
Мне хотелось, чтобы пылесос запускал уборку в определенной комнате. Зональная уборка.  
Мне хотелось, чтобы пылесос запускал уборку в определенной комнате. Зональная уборка.  



Версия от 05:10, 24 апреля 2020

Вступление

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

Посыл скорее для тех, кто сомневается в преимуществах размещения локального сервера УД. Какие плюсы получает владелец своего сервера:

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

Это при работе через Алису, соответственно, если Вы завязываете УД на кнопки, скорость еще выше.

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

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

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

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

В случае успешного старта на почту придет индивидуальный пароль для этого экземпляра ("инстанса") ioBroker.iot.

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

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

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

На вкладке "Умные перечисления" должны появиться "Функции" и "Комнаты". Если есть, всё круто (всё это можно редактировать во вкладке "Категории" ioBroker).

Далее, открываем "Объекты" в ioBroker, и в каждом нужном нам устройстве выставляем "Функции" и "Комнату". Привязка комнат и функций


Откроем еще раз настройки драйвера "IoT Assistants", во вкладке "устройства Алисы" так же должны появится объекты. Если есть, всё круто. Устройства Алисы

Предугадать в статье все возможные проблемы тяжело; будем считать, что у Вас уже есть минимальное представление о платформе iob, мозги и чуйка. 
Анализируйте ошибки, используйте поиск ("iobroker алиса"). Ещё я брал информацию здесь:
https://forum.iobroker.net/topic/25560/драйвер-iot-assistants-и-алиса
https://wiki.yaboard.com/w/Алиса_и_ioBroker

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

Немного очевидности: все устройства, которые Вы заводите в iob, должны уметь работать с Алисой. 

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

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

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

Предполагается, что они уже прошиты и настроены на работу непосредственно в iob, управляются из интерфейса. 
Установлены в цепь между светильником и розеткой.

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

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

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

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

Видеодемонстрация:

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

Когда-то давно этот шлюз был приобретен, как основа для УД. Но с переходом на ioBroker и разворачивании УД на нём, шлюз стал ненужным. Тогда было принято решение сделать из него ночник.

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

Предполагается, что Вы настроили шлюз, он управляется из iob, всё круто. После связки аккаунтов Алисы и iob точно так же задаем комнату, имя.

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

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

Видеодемонстрация:

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

Мне хотелось, чтобы пылесос запускал уборку в определенной комнате. Зональная уборка.

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

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

Круто, но нет.

Для решения этой проблемы я воспользовался скриптами в iobroker.

Нам понадобятся драйвера "mihome-vacuum" и "javascript".

Предполагается, что всё, для того, чтобы рулить скриптами в iob у Вас имеется.

Скрипт выглядит до безобразия простой. Нужно только раздобыть координаты комнаты и забиндить это в скрипт.

Создаем скрипт, обзываем без разницы как, и делаем 2 блока (да, это блокли если что), один на установку уборки, а второй просто тушит скрипт, заглушка.

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

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

Если кто научит получать их как-то иначе, чем делал я, буду премного благодарен.

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

Методом тыка понял, что координаты задаются примерно так:

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

Странно звучит, согласен. Не знаю, как объяснить. В доке описано про x1,y1,x2,y2 - мне это не понятно.
После того, как координаты более-менее подобраны, забиваем их в скрипт и проделываем, если необходимо, на каждую комнату.

И по традиции, снова обновляем список устройств в Алисе, у Вас должны подтянутся созданные скрипты, которые так же настраиваем.

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

Видеодемонстрация: