[Модуль] Xiaomi Home (xiaomihome)

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

Модератор: immortal

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

Re: Модуль поддержки Xiaomi Smart Home

Сообщение skysilver » Вт авг 21, 2018 2:31 pm

fandaymon писал(а):
Вт авг 21, 2018 2:22 pm
Давно хотел спросить компетентных товарищей - а почему то что принимается циклом потом отправляется в Мажордомо каким-то странным путём - через $url = BASE_URL . '/ajax/xiaomihome.html?op=process'; ?
Типа элемент асинхронности - чтобы не тормозить (не ждать результата выполнения) цикл всей последующей обработкой поступившего сообщения (парсинг, запись в метрику в БД, запись в связанное свойство, вызов связанного метода).
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
fandaymon
Сообщения: 1554
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: Модуль поддержки Xiaomi Smart Home

Сообщение fandaymon » Вт авг 21, 2018 2:45 pm

skysilver писал(а):
Вт авг 21, 2018 2:31 pm
fandaymon писал(а):
Вт авг 21, 2018 2:22 pm
Давно хотел спросить компетентных товарищей - а почему то что принимается циклом потом отправляется в Мажордомо каким-то странным путём - через $url = BASE_URL . '/ajax/xiaomihome.html?op=process'; ?
Типа элемент асинхронности - чтобы не тормозить (не ждать результата выполнения) цикл всей последующей обработкой поступившего сообщения (парсинг, запись в метрику в БД, запись в связанное свойство, вызов связанного метода).

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

Re: Модуль поддержки Xiaomi Smart Home

Сообщение skysilver » Вт авг 21, 2018 3:09 pm

fandaymon писал(а):
Вт авг 21, 2018 2:45 pm
А что мешает вызвать через тот же самый getURLBackground() phpшный скрипт? Вроде получится та же самая асинхронность. Или я что-то не правильно понимаю?
Эмм... Дак и сейчас как раз через него (getURLBackground). Только не отдельный php-файл дергается, а метод класса модуля через url и передачу параметром ему.
Или я не так понял тебя?
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
fandaymon
Сообщения: 1554
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: Модуль поддержки Xiaomi Smart Home

Сообщение fandaymon » Вт авг 21, 2018 3:35 pm

skysilver писал(а):
Вт авг 21, 2018 3:09 pm
fandaymon писал(а):
Вт авг 21, 2018 2:45 pm
А что мешает вызвать через тот же самый getURLBackground() phpшный скрипт? Вроде получится та же самая асинхронность. Или я что-то не правильно понимаю?
Эмм... Дак и сейчас как раз через него (getURLBackground). Только не отдельный php-файл дергается, а метод класса модуля через url и передачу параметром ему.
Или я не так понял тебя?
Ну там ещё промежуточный аякс ипользуется... Мне стало интересно почему не напрямую. Из соображений унификации, секьюрности или ещё каких-то...
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: Модуль поддержки Xiaomi Smart Home

Сообщение skysilver » Вт авг 21, 2018 3:56 pm

fandaymon писал(а):
Вт авг 21, 2018 3:35 pm
Мне стало интересно почему не напрямую.
А как напрямую? Может, есть пример?

Если "напрямую" будет быстрее и менее затратно по загрузке, то я бы взял себе на вооружение такой подход на будущее. ;)
За это сообщение автора skysilver поблагодарил:
Logrus (Вт авг 21, 2018 5:01 pm)
Рейтинг: 1.16%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
fandaymon
Сообщения: 1554
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: Модуль поддержки Xiaomi Smart Home

Сообщение fandaymon » Вт авг 21, 2018 4:23 pm

skysilver писал(а):
Вт авг 21, 2018 3:56 pm
fandaymon писал(а):
Вт авг 21, 2018 3:35 pm
Мне стало интересно почему не напрямую.
А как напрямую? Может, есть пример?

Если "напрямую" будет быстрее и менее затратно по загрузке, то я бы взял себе на вооружение такой подход на будущее. ;)

Напрямую - открывать /modules/xiaomihome/getmessage.php&command=dsddsdfs
Где getmessage.php это php скрипт, который заберёт посылку от хаба и запишет её в базу

По логике так должно быть быстрее, чем через прокладку...
За это сообщение автора fandaymon поблагодарил:
Logrus (Вт авг 21, 2018 5:01 pm)
Рейтинг: 1.16%
Logrus
Сообщения: 2084
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Модуль поддержки Xiaomi Smart Home

Сообщение Logrus » Вт авг 21, 2018 5:05 pm

за тему полезную! fandaymon столкнулся с тормозами и производительностью?
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
fandaymon
Сообщения: 1554
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: Модуль поддержки Xiaomi Smart Home

Сообщение fandaymon » Вт авг 21, 2018 5:09 pm

Logrus писал(а):
Вт авг 21, 2018 5:05 pm
за тему полезную! fandaymon столкнулся с тормозами и производительностью?
Ага - что-то слишком большая задержка получается если нажать на ксяомную кнопку и зажечь лампочку ксяомной вайфайной розетокой. Правда эксперементы показывают, что задержка скорее не на входе, а на выходе, или при взаимодействии двух модулей, но тема такой работы с МДМ меня тоже заинтересовала.
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: Модуль поддержки Xiaomi Smart Home

Сообщение skysilver » Вт авг 21, 2018 5:18 pm

fandaymon писал(а):
Вт авг 21, 2018 5:09 pm
Ага - что-то слишком большая задержка получается если нажать на ксяомную кнопку и зажечь лампочку ксяомной вайфайной розетокой. Правда эксперементы показывают, что задержка скорее не на входе, а на выходе, или при взаимодействии двух модулей, но тема такой работы с МДМ меня тоже заинтересовала.
Если будут наработки, делись и рассказывай. Допилим и добавим.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Logrus
Сообщения: 2084
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Модуль поддержки Xiaomi Smart Home

Сообщение Logrus » Вт авг 21, 2018 8:08 pm

fandaymon писал(а):
Вт авг 21, 2018 5:09 pm
Logrus писал(а):
Вт авг 21, 2018 5:05 pm
за тему полезную! fandaymon столкнулся с тормозами и производительностью?
Ага - что-то слишком большая задержка получается если нажать на ксяомную кнопку и зажечь лампочку ксяомной вайфайной розетокой. Правда эксперементы показывают, что задержка скорее не на входе, а на выходе, или при взаимодействии двух модулей, но тема такой работы с МДМ меня тоже заинтересовала.
сяоми дд, включает розетку броадлинк, все через ПУ (но "лишнее" убрано) мгновенно

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

$control = gg('Bedroom.ClimateControl');
$automatic = gg('Check.ventBedroom');

if ($automatic && $control == 1) {
 cm('Relay04.turnOn');
 setTimeOut('Relay04_vent', "cm('Relay04.turnOff');", 120);
}
За это сообщение автора Logrus поблагодарил:
Samir77 (Ср июл 10, 2019 4:14 pm)
Рейтинг: 1.16%
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Ответить