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

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

Модератор: immortal

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

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

Сообщение skysilver »

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
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

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

Сообщение fandaymon »

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
Откуда: Киров, Россия
Контактная информация:

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

Сообщение skysilver »

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
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

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

Сообщение fandaymon »

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

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

Сообщение skysilver »

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

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

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

Сообщение fandaymon »

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

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

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

По логике так должно быть быстрее, чем через прокладку...
Logrus
Сообщения: 2113
Зарегистрирован: Пт апр 07, 2017 12:20 pm

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

Сообщение Logrus »

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

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

Сообщение fandaymon »

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

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

Сообщение skysilver »

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

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

Сообщение Logrus »

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);
}
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Ответить