[Модуль] MegaD (megad)

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

Модератор: immortal

Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 262 раза
Поблагодарили: 455 раз

Re: Модуль "MegaD"

Сообщение Chainik » Ср май 24, 2017 12:07 pm

Посмотрите пост ув.tsember на стр.56 от Вт фев 07, 2017 9:45 am (viewtopic.php?f=5&t=2263&start=550).
Если попробовать так же "модернизировать" внутренности модуля, то, наверное, все получится.

Ну и взгляните на мой пост на стр.59 от Вт мар 21, 2017 2:49 pm (viewtopic.php?f=5&t=2263&start=580).
Соответственно, в скрипте или методе указать, что если параметр "m" == 2, то "прикинуться шлангом" и ничего не делать.
Теоретически, должно работать.
За это сообщение автора Chainik поблагодарил:
Ivan_A (Ср май 24, 2017 1:06 pm)
Рейтинг: 1.16%
Ivan_A
Сообщения: 62
Зарегистрирован: Пн апр 06, 2015 10:57 am
Благодарил (а): 19 раз
Поблагодарили: 3 раза

Re: Модуль "MegaD"

Сообщение Ivan_A » Ср май 24, 2017 1:26 pm

Я правильно понимаю, что после добавления строчки $params['m']=$m; в файл megad.class.php переменная $m будет доступна прямо в методе, который я создаю и привязываю к входу меги? Или все-таки надо использовать $_GET['m']?
Ну и (только не бейте) где живет файл megad.class.php?

PS нашел, поправил. Сейчас буду экспериментировать
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 262 раза
Поблагодарили: 455 раз

Re: Модуль "MegaD"

Сообщение Chainik » Ср май 24, 2017 2:28 pm

Ivan_A писал(а):Я правильно понимаю, что после добавления строчки $params['m']=$m; в файл megad.class.php переменная $m будет доступна прямо в методе, который я создаю и привязываю к входу меги? Или все-таки надо использовать $_GET['m']?
Сам далек от программирования, так что наверняка не скажу. Конструкция $_GET['m'] должна работать, на счет $m - не знаю.
Попробуйте, потом всем нам расскажите, как оно на самом деле...
За это сообщение автора Chainik поблагодарил:
Ivan_A (Ср май 24, 2017 2:40 pm)
Рейтинг: 1.16%
Ivan_A
Сообщения: 62
Зарегистрирован: Пн апр 06, 2015 10:57 am
Благодарил (а): 19 раз
Поблагодарили: 3 раза

Re: Модуль "MegaD"

Сообщение Ivan_A » Ср май 24, 2017 2:37 pm

Вот так заработало
if ($_GET['m'] != "2") file_get_contents("http://192.168.2.201/sec/?cmd=7:2");
или так, тоже работает
if ($_GET['m'] != "2") return '7:2';
Спасибо!
Остальные извиняйте за ламерство )))
Alexiy2
Сообщения: 104
Зарегистрирован: Вт май 12, 2015 9:59 pm
Благодарил (а): 16 раз
Поблагодарили: 13 раз

Re: Модуль "MegaD"

Сообщение Alexiy2 » Ср май 31, 2017 10:27 pm

Уважаемый Сергей (sergejey)!!!
После последнего обновления модуля перестала считываться конфигурация MegaD. Не могли бы исправить сей недочёт?
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Модуль "MegaD"

Сообщение sergejey » Чт июн 01, 2017 10:49 am

Alexiy2 писал(а):Уважаемый Сергей (sergejey)!!!
После последнего обновления модуля перестала считываться конфигурация MegaD. Не могли бы исправить сей недочёт?
Так не менялось ничего с конфигурацией... само устройство с сервера доступно?

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Alexiy2
Сообщения: 104
Зарегистрирован: Вт май 12, 2015 9:59 pm
Благодарил (а): 16 раз
Поблагодарили: 13 раз

Re: Модуль "MegaD"

Сообщение Alexiy2 » Пт июн 02, 2017 3:19 pm

Устройство с сервера определяется, но конфигурация не читается!
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 262 раза
Поблагодарили: 455 раз

Re: Модуль "MegaD"

Сообщение Chainik » Сб июн 03, 2017 11:42 am

Вот у ув.CagoBHuK (пост на стр.54 от Вс янв 29, 2017 11:35 pm viewtopic.php?f=5&t=2263&start=535) конфигурация тоже не читалась, но "шаманство" помогло...
wildsm
Сообщения: 6
Зарегистрирован: Пт дек 25, 2015 12:28 am
Благодарил (а): 6 раз
Поблагодарили: 0

Re: Модуль "MegaD"

Сообщение wildsm » Сб июн 03, 2017 9:37 pm

Помогите решить проблему с регулярными тормозами MegaD (либо алисы).
При нажатии кнопки включения света мега обращается к серверу, но по какой-то причине отрабатывает и ответ сервера и свою внутреннюю команду. Такое ощущение, что кто-то засыпает и не успевает правильно отреагировать. При этом и сервер и мега отлично видны с компа, т.е. сеть работает.
В X-Ray примерно в это время лезут ошибки:
СпойлерПоказать
20:40:46 0.04637800 Geturl to http://10.0.1.201/sec/?cmd=8:0 (source sendCommand) finished with error:
Operation timed out after 60001 milliseconds with 0 bytes received
{"url":"http:\/\/10.0.1.201\/sec\/?cmd=8:0","content_type":null,"http_code":0,"header_size":0,"request_size":156,"filetime":-1,"ssl_verify_result":0,"redirect_count":0,"total_time":59.061548,"namelookup_time":0.000198,"connect_time":0.001593,"pretransfer_time":0.00192,"size_upload":0,"size_download":0,"speed_download":0,"speed_upload":0,"download_content_length":-1,"upload_content_length":-1,"starttransfer_time":0,"redirect_time":0,"redirect_url":"","primary_ip":"10.0.1.201","certinfo":[],"primary_port":80,"local_ip":"10.0.1.200","local_port":59671}
20:40:45 0.88261200 Error executing job hallway_light (1569798): (/var/www/lib/common.class.php)
20:40:45 0.87989300 Geturl to http://127.0.0.1:80/objects/?job=1569798 (source runScheduledJobs) finished with error:
Operation timed out after 60001 milliseconds with 0 bytes received
{"url":"http:\/\/127.0.0.1:80\/objects\/?job=1569798","content_type":null,"http_code":0,"header_size":0,"request_size":163,"filetime":-1,"ssl_verify_result":0,"redirect_count":0,"total_time":59.061838,"namelookup_time":0.0002,"connect_time":0.000707,"pretransfer_time":0.001232,"size_upload":0,"size_download":0,"speed_download":0,"speed_upload":0,"download_content_length":-1,"upload_content_length":-1,"starttransfer_time":0,"redirect_time":0,"redirect_url":"","primary_ip":"127.0.0.1","certinfo":[],"primary_port":80,"local_ip":"127.0.0.1","local_port":43540}
20:36:32 0.43947600 Geturl to http://10.0.1.201/sec/?tget=1 (source require) finished with error:
Operation timed out after 60001 milliseconds with 0 bytes received
{"url":"http:\/\/10.0.1.201\/sec\/?tget=1","content_type":null,"http_code":0,"header_size":0,"request_size":155,"filetime":-1,"ssl_verify_result":0,"redirect_count":0,"total_time":59.059283,"namelookup_time":0.000104,"connect_time":0.001372,"pretransfer_time":0.001518,"size_upload":0,"size_download":0,"speed_download":0,"speed_upload":0,"download_content_length":-1,"upload_content_length":-1,"starttransfer_time":0,"redirect_time":0,"redirect_url":"","primary_ip":"10.0.1.201","certinfo":[],"primary_port":80,"local_ip":"10.0.1.200","local_port":59600}
20:33:03 0.17973500 Geturl to http://10.0.1.201/sec/?tget=1 (source require) finished with error:
Operation timed out after 60001 milliseconds with 0 bytes received
{"url":"http:\/\/10.0.1.201\/sec\/?tget=1","content_type":null,"http_code":0,"header_size":0,"request_size":155,"filetime":-1,"ssl_verify_result":0,"redirect_count":0,"total_time":59.061577,"namelookup_time":0.000106,"connect_time":0.00146,"pretransfer_time":0.001607,"size_upload":0,"size_download":0,"speed_download":0,"speed_upload":0,"download_content_length":-1,"upload_content_length":-1,"starttransfer_time":0,"redirect_time":0,"redirect_url":"","primary_ip":"10.0.1.201","certinfo":[],"primary_port":80,"local_ip":"10.0.1.200","local_port":59501}
Думал малинка тормозит, поменял на апельсину. Поначалу стало лучше, никаких тормозов. Как только набросал все объекты и скрипты опять ошибки полезли. При этом на кнопки сейчас вешаю только включение реле на меге и постановку в шедулер вызова еще одного метода.
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 262 раза
Поблагодарили: 455 раз

Re: Модуль "MegaD"

Сообщение Chainik » Вс июн 04, 2017 2:20 am

wildsm, в настройках модуля MegaD галку «Skip default action» проверьте. Возможно отрабатывает и действие по умолчанию и команду с сервера. Еще я сталкивался с ситуацией, когда в методе отрабатывется и сам метод и общеклассовый метод ("лечил" простановкой радиоточки в положение "никогда".)
Если я правильно понял, сервер посылает команду с помощью Geturl. Тут была целая ветка по поводу тормозов с этой командой (viewtopic.php?f=4&t=3836). Может попробовать заменить на

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

file_get_contents("http://10.0.1.201/sec/?cmd=8:0");
Ответить