miIO - протокол для Xiaomi (Mi Home) устройств

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

AnT
Сообщения: 7
Зарегистрирован: Вт сен 26, 2017 11:33 am
Благодарил (а): 1 раз
Поблагодарили: 0

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение AnT » Пн ноя 06, 2017 9:03 am

Создал тоже класс но для пылесоса. К сожалению управление им проблематично.
После первой команды, кроме проверки статуса не проходит не одна команда, управление только через MiHome.
Возможно где-то я косанул.
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение skysilver » Пн ноя 06, 2017 12:34 pm

AnT писал(а):К сожалению управление им проблематично.
После первой команды, кроме проверки статуса не проходит не одна команда, управление только через MiHome.
Пылесос крайне капризная штука. Много кто жалуется на него на форумах других систем УД.

Какая версия прошивки у пылика? Есть возможность по удаленке подключиться, чтобы подебажить?
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
AnT
Сообщения: 7
Зарегистрирован: Вт сен 26, 2017 11:33 am
Благодарил (а): 1 раз
Поблагодарили: 0

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение AnT » Пн ноя 06, 2017 3:01 pm

skysilver писал(а):
AnT писал(а):К сожалению управление им проблематично.
После первой команды, кроме проверки статуса не проходит не одна команда, управление только через MiHome.
Пылесос крайне капризная штука. Много кто жалуется на него на форумах других систем УД.

Какая версия прошивки у пылика? Есть возможность по удаленке подключиться, чтобы подебажить?
Версия 3.3.9_003077
Подебажить... Сейчас не дома, но трафик выдернуть думаю смогу. Что и как проверить?
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение skysilver » Пн ноя 06, 2017 5:45 pm

AnT писал(а):но трафик выдернуть думаю смогу. Что и как проверить?
Нее, трафик пока перехватывать не надо. Для начала выставить $debug = true; в методе getStatus, запустить его вручную раза два-три с промежутком секунд 5-10 и скинуть сюда выхлоп.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
ysanjok
Сообщения: 15
Зарегистрирован: Сб авг 12, 2017 7:16 pm
Благодарил (а): 11 раз
Поблагодарили: 7 раз

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение ysanjok » Ср ноя 08, 2017 1:41 am

sergejey писал(а):Очень интересная разработка
Сергей, вопрос по объектам:
Возможно ли при экспорте класса и объектов в файл *. txt сохранить структуру? Класс=>Подкласс=>...=>Подкласс=>Объекты.
Дабы после импорта не пришлось выставлять родителей вручную.

Отправлено с моего Redmi Note 4 через Tapatalk
Аватара пользователя
Genplane
Сообщения: 32
Зарегистрирован: Чт авг 18, 2016 11:43 am
Откуда: Калининград
Благодарил (а): 37 раз
Поблагодарили: 1 раз

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение Genplane » Чт ноя 30, 2017 11:30 am

Всем привет! Имеем Xiaomi Smart plug WiFi (приобрёл по ошибке вместо ZigBee версии).
Как её включать-выключать через miio-cli.php? Токен розетки известен, но не известна структура команд устройства.
Или как ею управлять через Majordomo?
Windows 7, MiniPC, MegaD, Arduino
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение skysilver » Чт ноя 30, 2017 11:42 am

Genplane писал(а):приобрёл по ошибке вместо ZigBee версии) Как её включать-выключать через miio-cli.php? Токен розетки известен, но не известна структура команд устройства. Или как ею управлять через Majordomo?
Попробуй такие команды в консоли:

Код: Выделить всё

php miio-cli.php --ip 192.168.1.47 --token b31c928032e6a4afc898c5c8768a518f --sendcmd '{"method":"set_power","params":["on"],"id":1}'
php miio-cli.php --ip 192.168.1.47 --token b31c928032e6a4afc898c5c8768a518f --sendcmd '{"method":"set_power","params":["off"],"id":1}'
php miio-cli.php --ip 192.168.1.47 --token b31c928032e6a4afc898c5c8768a518f --sendcmd '{"method":"toggle","params":[],"id":1}'
php miio-cli.php --ip 192.168.1.47 --token b31c928032e6a4afc898c5c8768a518f --sendcmd '{"method":"set_on","params":[],"id":1}'
php miio-cli.php --ip 192.168.1.47 --token b31c928032e6a4afc898c5c8768a518f --sendcmd '{"method":"set_off","params":[],"id":1}'
IP и токен, конечно, свои подставь.

Также очень интересно увидеть выхлоп команды:

Код: Выделить всё

php miio-cli.php --ip 192.168.1.47 --token b31c928032e6a4afc898c5c8768a518f --info --debug
За это сообщение автора skysilver поблагодарили (всего 2):
Genplane (Чт ноя 30, 2017 12:24 pm) • Amarok (Чт ноя 30, 2017 1:16 pm)
Рейтинг: 2.33%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
smart_g
Сообщения: 292
Зарегистрирован: Вт окт 17, 2017 11:29 am
Откуда: Украина, Киев
Благодарил (а): 15 раз
Поблагодарили: 33 раза

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение smart_g » Пт дек 01, 2017 2:44 pm

Запостил сюда. В описании "Спецификация Yeelight WiFi Light" есть метод
Метод: set_music
Использование: этот метод используется для запуска или остановки музыкального режима на устройстве.

Какое отношение он имеет к осветительным устройствам не понятно. Может это метод сгодится для шлюза при выводе сообщений от Алисы?
Ubuntu Server 16.04 LTS, OpenWRT 1-wire, SonOFF, MYSensors, MiHome, Yeelight, MiFlower
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение skysilver » Пт дек 01, 2017 2:51 pm

smart_g писал(а):Запостил сюда. В описании "Спецификация Yeelight WiFi Light" есть метод set_music
Использование: этот метод используется для запуска или остановки музыкального режима на устройстве.
Какое отношение он имеет к осветительным устройствам не понятно. Может это метод сгодится для шлюза при выводе сообщений от Алисы?
Этот метод переводит лампу в особый режим, когда лампа подключается к udp-серверу в локальной сети, который уже может слать лампе команды без ограничений. Т.о. образом реализуется к примеру режим цветомузыки в приложении Yeelight на смартфоне. К шлюзу этот метод не имеет никакого отношения.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
smart_g
Сообщения: 292
Зарегистрирован: Вт окт 17, 2017 11:29 am
Откуда: Украина, Киев
Благодарил (а): 15 раз
Поблагодарили: 33 раза

Re: miIO - протокол для Xiaomi (Mi Home) устройств

Сообщение smart_g » Пт дек 01, 2017 2:59 pm

Печально. Хотя для цветомузыки там вроде отдельный метод.
Ubuntu Server 16.04 LTS, OpenWRT 1-wire, SonOFF, MYSensors, MiHome, Yeelight, MiFlower
Ответить