Сама настройка модуля Yandex Home прекрасно описана в базе знаний MajorDoMo, а также на GitHub разработчика majordomo-yandexhome.
Но, данные статьи подразумевают, что необходимо выставить интерфейс управления УД наружу и не затрагивают тему безопасности открытия внешнего доступа. Если "покурить" форум то можно найти решение, как прикрутить базовую авторизацию по логину и паролю для внешних сетей (ссылка на форуме). Но такое решение не лишено недостатков, так как периодически находятся дырки в безопасности MajorDoMo, поэтому как вариант можно выставить наружу не весь интерфейс управления УД, а только необходимый url для авторизации Yandex диалога.
Примечание: тут НЕ рассмотрена настройка ssl сертификатов, пример настройки: Let’s Encrypt на Apache, либо читайте статейку по настройке Nginx Proxy Manager. Рассматривается только вопрос проброса порта для авторизации Yandex диалога
Имеем кнопку Xiaomi WXKG01LM
Задача: в зависимости от количества нажатий отрабатывать различные действия
Реализуем это на примере модуля ZigbeeDev.
Некоторые устройства работающие по mqtt имеют разные топики для получения статуса устройства и управления им, например прошивки Tasmota.
и чтобы в Majordomo можно было получать статус устройства и управлять им, необходимо в модуле MQTT прописать не только топик со статусом, но и топик для управления.
Для этого переходим к настройке нужного топика и в поле Путь: (*) прописываем топик для получения статуса.
А в поле Путь (write): (не обязательно) прописываем топик для управления устройством
Пример:
На примере робота пылесоса XIAOMI Robot vacuum clear 1C.
Из маркета дополнений устанавливаем модуль "Xiaomi miIO" настраиваем его. Далее устанавливаем модуль "Простые устройства Xiaomi". После чего в Простых устройствах добавляем ПУ Пылесос, выбираем тип
XiRoborockVacuum и привязываем свойства к значениям пылесоса получаемых от "Xiaomi miIO".
Для того чтобы иметь возможность выполнять зональную уборку, нам необходимо установить модифицированную версию MiHome vevs. Скачать ее можно отсюда. Предварительно удалите оригинальную версию.
Если вы хотите интегрировать Ваш пылесос в систему умного дома типа MAjordomo или HA, вам необходимо получить токен. После установки в проводнике открываете папку \Внутренняя память\vevs\logs\devices\ (Если папки logs нет, создайте ее и перезапустите приложение). Далее открываете файл с расширением .json в нем в поле "token" будет указан токен. Также в этом файле будут указаны "model" вашего пылесоса и другие параметры которые возможно вам понадобятся, сохраните необходимую информацию.
Чтобы настроить зональную уборку необходимо получить координаты зон, которые планируете убирать. Для получения координат комнаты нужно в файле \Внутренняя память\Android\data\com.xiaomi.smarthome\files\plugin\install\rn\1000004\1009055\android\main.bundle (папки с цифрами могут отличаться) прописать параметр _reactNative.Alert.alert(points) для этого ищем код :
Наконец то дошли руки доделать начатое: поставил датчики на три замка, а также поменял метод определения того, закрыт замок или нет. Сначала думал реализовать определение состояния замков с помощью аналогового входа A0 на плате NodeMCU, подключал датчики по такой схеме:
Согласно которой, в зависимости от замкнутого контакта изменялось сопротивление, далее NodeMCU на входе A0 считывает значение и в зависимости от напряжения вычислялось какие замки закрыты. Но использование микриков:
показалось ненадежным, поэтому решил поменять на модули TCRT5000, которые покупал тут, встроил их в дверь вот таким способом: