[Модуль] Xiaomi miIO (xiaomimiio)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: [Модуль] Xiaomi miIO

Сообщение skysilver » Пт июн 29, 2018 5:05 pm

klejnov писал(а):
Пт июн 29, 2018 4:46 pm
А может на примере другого устройства?
Вот
СпойлерПоказать
miio.png
miio.png (25.78 КБ) 3623 просмотра
За это сообщение автора skysilver поблагодарил:
klejnov (Вт июл 03, 2018 6:45 am)
Рейтинг: 1.16%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
igrampe
Сообщения: 2
Зарегистрирован: Вс июн 17, 2018 3:02 am
Откуда: Пермь
Благодарил (а): 0
Поблагодарили: 0

Re: [Модуль] Xiaomi miIO

Сообщение igrampe » Вт июл 03, 2018 10:51 am

Планируется ли поддержка круглого контроллера кондиционера (lumi.acpartner.v2) или можно выбрать в качестве типа квадратный и все будет работать?
Также интересует возможность обучения с пульта и отправки ir команд, как в случае с шайбой.
Aven
Сообщения: 529
Зарегистрирован: Сб мар 12, 2016 6:33 pm
Откуда: Ухта, Россия
Благодарил (а): 3 раза
Поблагодарили: 154 раза

Re: [Модуль] Xiaomi miIO

Сообщение Aven » Вт июл 03, 2018 10:59 am

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

Re: [Модуль] Xiaomi miIO

Сообщение skysilver » Вт июл 03, 2018 11:22 am

igrampe писал(а):
Вт июл 03, 2018 10:51 am
Планируется ли поддержка круглого контроллера кондиционера (lumi.acpartner.v2)
Скорее нет, чем да, т.к. у меня нет такого шлюза.
igrampe писал(а):
Вт июл 03, 2018 10:51 am
или можно выбрать в качестве типа квадратный и все будет работать?
Я не знаю. Проверяйте, модуль это позволяет.
igrampe писал(а):
Вт июл 03, 2018 10:51 am
Также интересует возможность обучения с пульта и отправки ir команд, как в случае с шайбой.
Я не против добавить поддержку этого шлюза. Все условия для этого подробно расписаны в 1ом посте. ;)
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
igrampe
Сообщения: 2
Зарегистрирован: Вс июн 17, 2018 3:02 am
Откуда: Пермь
Благодарил (а): 0
Поблагодарили: 0

Re: [Модуль] Xiaomi miIO

Сообщение igrampe » Вт июл 03, 2018 12:35 pm

А для квадратного контроллера не планируете отправку IR команд добавить?
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: [Модуль] Xiaomi miIO

Сообщение skysilver » Вт июл 03, 2018 12:42 pm

igrampe писал(а):
Вт июл 03, 2018 12:35 pm
А для квадратного контроллера не планируете отправку IR команд добавить?
В ближайшей перспективе нет. Причина та же - у меня его (контроллера) нет. ))
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
antonpoll
Сообщения: 6
Зарегистрирован: Вс июл 15, 2018 11:12 pm
Благодарил (а): 10 раз
Поблагодарили: 0

Re: [Модуль] Xiaomi miIO

Сообщение antonpoll » Пт июл 20, 2018 8:25 am

directman66 писал(а):
Вс янв 28, 2018 11:28 am
Стучалка в телеграм по поводу статуса пылесоса сяоми. Может пригодится кому-то:
СпойлерПоказать

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

include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();


$luts=gg("MiVacuumCleaner.timestamp");
$diff=(gmdate('i',trim(time()-$luts)));

$pattern = "|\b[0]+([1-9][\d]*)|is"; 
$diff2= preg_replace($pattern, "\\1", $diff); 
$status .= "Информация о пылесосе  была обновлена  "  .$diff2 . " минут назад.";

if (gg('MiVacuumCleaner.online')=='1') {$status =$status." Пылесос на связи, "; }
else   {$status=$status." Связь с пылесосом отсутсвует,";}



if (gg("MiVacuumCleaner.state_text")=='Charging')  {$status =$status." заряжается, установлен на базе, "; }
if (gg("MiVacuumCleaner.state_text")=='Cleaning')  {$status =$status." производит уборку, "; }
if (gg("MiVacuumCleaner.state_text")=='Back to home')  {$status =$status." едет на базу, "; }
if (gg("MiVacuumCleaner.state_text")=='Sleeping')  {$status =$status." отдыхает от трудовых будней, "; }
if (gg("MiVacuumCleaner.state_text")=='Pause')  {$status =$status." установлен на паузу, "; }


//$status .= " температура двигателя ".round(gg("kia ceed.etemp"))." градусов, температура в салоне  ".round(gg("kia ceed.ctemp"))." градусов.";
$status .= " Заряд аккумуляторной батареи ".gg("MiVacuumCleaner.battery")." процентов. ";
if (gg("MiVacuumCleaner.battery")<10) {$status = $status." Внимание, аккумулятор сильно разряжен, рекомендуется зарядить как можно скорее!";}
$status .= " Последняя уборка заняла  ".round(gg("MiVacuumCleaner.clean_time")/60)." минут, ";
$status .= " убрано ".round(gg("MiVacuumCleaner.clean_area")/1000000,1)." метров. ";

if (gg("MiVacuumCleaner.error_text")=='No error')  {$status =$status." Ошибок не зафиксировано. "; }
if (gg("MiVacuumCleaner.error_text")=='Clean main brush')  {$status =$status." Необходимо очистить нижнюю щетку."; }
//////////////////////////////////
$resurs=1800;
$resursp=100-round((gg("MiVacuumCleaner.sensor_dirty_time")/60*100)/$resurs);
$resursh=round(($resurs-(gg("MiVacuumCleaner.sensor_dirty_time")/60))/60);
$status .= " Очистка боковых сенсоров необходима через $resursh часов.";
$resurs=18000;
$resursp=100-round((gg("MiVacuumCleaner.main_brush_work_time")/60*100)/$resurs);
$resursh=round(($resurs-((gg("MiVacuumCleaner.main_brush_work_time")/60)))/60);
if ($resursp<30) {$replacemain=1; }else{  $replacemain=0;}
$status .= " Ресурс нижней щетки ".$resursp." процентов ($resursh часов).";

$resurs=12000;
//$resurs=120;
$resursp=100-round((gg("MiVacuumCleaner.side_brush_work_time")/60*100)/$resurs);
$resursh=round(($resurs-((gg("MiVacuumCleaner.side_brush_work_time")/60)))/60);
if ($resursp<30){ $replaceside=1;} else  {$replaceside=0;}

$status .= " Ресурс боковой щетки ".$resursp." процентов ($resursh часов).";
$resurs=9000;
//$resurs=90;
$resursp=100-round((gg("MiVacuumCleaner.filter_work_time")/60*100)/$resurs);
$resursh=round(($resurs-((gg("MiVacuumCleaner.filter_work_time")/60)))/60);
if ($resursp<30) {$replacefilter=1;} else {$replacefilter=0;}
$status .= " Ресурс фильтра ".$resursp." процентов ($resursh часов).";


if (($replacefiler=='1')or
($replaceside=='1') or
($replacemian=='1'))
{$status .= " Необходимо преобрести расходники: ";
if ($replaceside==1) $status .= "боковую щетку "  ; 
if ($replacefiler==1) $status .= "фильтр ";
if ($replacemain==1) $status .= "главную щетку "  ;
 $status .= ".";
}





$telegram_module->sendMessageToAll($status);
СпойлерПоказать
telega.png
зыж не забываем про кнопку "Спасибо" )
Пытался разобраться в этом коде, и потух уже на 3 строке )))
$luts=gg("MiVacuumCleaner.timestamp");

Вообще не понял что за свойство такое timestamp??

В остальном разобрался, построил свои задачи на основе коде, спасибо
dksobol
Сообщения: 53
Зарегистрирован: Вт июл 24, 2018 12:01 pm
Благодарил (а): 6 раз
Поблагодарили: 1 раз

Re: [Модуль] Xiaomi miIO

Сообщение dksobol » Вт июл 24, 2018 12:06 pm

klejnov писал(а):
Пт июн 29, 2018 2:44 pm
skysilver писал(а):
Пт июн 29, 2018 1:59 pm
Нужно создать свой объект и нужные свойства у него. Затем этот объект и свойства привязать к метрикам в модуле.
А для отправки команд использовать setGlobal(). Все есть в этой теме.
Я новичок в этом деле. Буду благодарен за помощь. Было бы круто и понятно, если бы вы сделали скриншоты того как пылесос настроен у вас. Добавьте, пожалуйста, в эту тему скриншоты или в https://vk.com/klejnov

Заранее огромное спасибо!
Вот и я с датчиками разобрался всё сделал как хотел. А вот пылесос всё ни как.
Вроде там через API.AI надо добавлять и лепить что то. на 19 странице 3й пост там есть кусочек информации. Хотелось бы найти всё таки что и где и как создать. У меня еще и ИК шайба впереди.
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: [Модуль] Xiaomi miIO

Сообщение skysilver » Вт июл 24, 2018 1:13 pm

dksobol писал(а): Вот и я с датчиками разобрался всё сделал как хотел. А вот пылесос всё ни как.
Вроде там через API.AI надо добавлять и лепить что то. на 19 странице 3й пост там есть кусочек информации. Хотелось бы найти всё таки что и где и как создать. У меня еще и ИК шайба впереди.
3ий пост с 19 страницы - это для продвинутых. Оно не нужно на начальном этапе. И апи.аи тоже не причём.

Принцип работы точно такой же как и у других модулей.

Не могу понять, что непонятного в этом абзаце?
"Нужно создать свой объект и нужные свойства у него. Затем этот объект и свойства привязать к метрикам в модуле. А для отправки команд использовать setGlobal()."
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
dksobol
Сообщения: 53
Зарегистрирован: Вт июл 24, 2018 12:01 pm
Благодарил (а): 6 раз
Поблагодарили: 1 раз

Re: [Модуль] Xiaomi miIO

Сообщение dksobol » Вт июл 24, 2018 7:14 pm

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