Модуль Xiaomi miIO - Управление роботом-пылесосом

Xiaomi miIO Комментариев нет

Управление роботом-пылесосом

В модуле Xiaomi miIO официально поддерживается управление двумя моделями роботов-пылесосов Xiaomi - Mi Vacuum Cleaner и Mi Roborock S50/S51. Другие модели, вероятно, также будут поддерживаться, поскольку все пылесосы имеют однотипное API, и в таком случае в модуле в качестве модели нужно выбрать любую из двух имеющихся моделей пылесосов.

Mi Roborock S50/S51 и Mi Vacuum Cleaner

Настройка

Перед началом работы настройте модуль в соответствии со статьей. А также убедитесь, что пылесос в модуле имеет статус онлайн, а в его настройках указан корректный токен. Для получения актуального статуса пылесоса необходимо активировать периодический опрос, указав разумный период (в секундах) в поле Период опроса.

Общие настройки

Класс, объект, свойства

Так как пылесос устройство не "простое" и в типовых Простых устройствах MajorDoMo оно не представлено, то для их совместной работы необходимо создать класс, объект и свойства, через которые они смогут взаимодействовать друг с другом.

В Панели управления MajorDoMo переходим в Объекты - Добавить новый класс.

Создание нового класса

Заполняем поля Родительский классНазвание нового класса и Описание, нажимаем Добавить. Имя класса обязательно латиницей.

Настройки класса

После сохранения переходим на вкладку Свойства. Там уже есть унаследованные свойства от родительского класса.

Свойства класса

Необходимо добавить недостающие свойства, применимые к новому устройству (пылесосу).

Список всех свойств (метрик) пылесоса виден в модуле Xiaomi milO на вкладке Данные робота-пылесоса. Удобно открыть их в соседней вкладке браузера, чтобы переключаясь между ними копировать названия метрик пылесоса в создаваемые свойства класса.

В большинстве случаев достаточно назвать свойства класса точно также как и метрики в модуле, но при желании можно указывать свое название. Последовательно добавляем свойства пылесоса из модуля Xiaomi milO в класс. При этом вовсе необязательно создавать свойства на каждую метрику, если нет необходимости использовать их в дальнейшем.

Добавление свойств класса

Примерный список свойств класса

Теперь на вкладке Объекты нашего нового класса создаем Объект устройства, который будет привязан к пылесосу. В качестве примера назовем объект MiRoborock.

Создание объекта

Привязка свойств объекта к метрикам

После того, как Объект для пылесоса создан, его необходимо связать с самим устройством. Для этого в модуле Xiaomi milO заходим в пылесос на вкладку Данные и связываем каждую метрику с соответствующим свойством нашего нового объекта. Для этого пользуемся выпадающим списком в столбце Связанный объект.

Привязка метрик к объекту

И сразу же в столбце Связанное св-во связываем его с соответствующим свойством объекта.

Привязка метрик к свойствам

Теперь MajorDoMo может управлять пылесосом и получать его статус.

Управление

Управление (отправка команд) осуществляется через запись в свойство, привязанное к метрике command, необходимых команд с помощью функции setGlobal().

Например, чтобы начать уборку достаточно записать в свойство command объекта MiRoborock команду app_start, а для завершения уборки соответственно команду app_stop.


Возможные команды для управления пылесосом хорошо расписаны здесь https://github.com/MeisterTR/XiaomiRobotVacuumProtocol

 

Поделитесь в соц сетях

Теги: