[Модуль] MegaD (megad)
Модератор: immortal
-
- Сообщения: 29
- Зарегистрирован: Вт июл 10, 2018 11:21 am
- Благодарил (а): 40 раз
- Поблагодарили: 1 раз
Re: [Модуль] MegaD (megad)
Подтверждаю, такие же проблемы как у ILGAS и likex2000. И далеко не с последнего обновления. По этой причине у меня все настроено через контроллер и я таким образом решаю ситуацию такой работы модуля MegaD МДМ. Получается, что в модуле, при установленном методе switch при получении внешней команды от кнопки меги и после ответа на нее, не корректно отрабатывается смена статуса и через короткое время все возвращается к состоянию установленному из интерфейса МДМ. Из интерфейса все работает отлично. Получается некое рассогласование в работе метода switch и свойством status.
Re: [Модуль] MegaD (megad)
Посмотрел обмен между сервером и мегой Wiresharkом - ответ от сервера на срабатывание кнопки в мегу приходит кривой. Если добавить в megad.php ob_flush(); в предпоследнюю строку или закомментить последний flush(); , то все работает, я в php не силен, пусть знающие люди поправят. Система - win2008r2, мега 328, на линуксе не проверял.
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: [Модуль] MegaD (megad)
А не могли бы показать что именно сервер выдаёт?Dmitry M писал(а): ↑Чт дек 12, 2019 11:44 amПосмотрел обмен между сервером и мегой Wiresharkом - ответ от сервера на срабатывание кнопки в мегу приходит кривой. Если добавить в megad.php ob_flush(); в предпоследнюю строку или закомментить последний flush(); , то все работает, я в php не силен, пусть знающие люди поправят. Система - win2008r2, мега 328, на линуксе не проверял.
Я убрал flush -- возможно, на каких-то конфигурациях эта конструкция выдавала ошибку. Попробуйте пожалуйста сейчас.
Если у кого-то ещё не работает, то включите пожалуйста лог MegaD -- там будет обмен показан между контроллером и сервером. В частности, реакция сервера на запросы от контроллера. Для надёжности можно попробовать этот запрос продублировать в браузере и посмотреть, что сервер выдаст, потому что ошибки или предупреждения в лог не попадут.
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Re: [Модуль] MegaD (megad)
5й пакет приходит какой-то странный, в нем начало ответа сервера, а в 6ом, который уже HTTP, приходит последний кусок ответа.sergejey писал(а): ↑Чт дек 12, 2019 12:00 pmА не могли бы показать что именно сервер выдаёт?
Я убрал flush -- возможно, на каких-то конфигурациях эта конструкция выдавала ошибку. Попробуйте пожалуйста сейчас.
Если у кого-то ещё не работает, то включите пожалуйста лог MegaD -- там будет обмен показан между контроллером и сервером. В частности, реакция сервера на запросы от контроллера. Для надёжности можно попробовать этот запрос продублировать в браузере и посмотреть, что сервер выдаст, потому что ошибки или предупреждения в лог не попадут.
Обмен меги и сервера после обновления модуляПоказать
Обмен меги и сервера до обновленияПоказать
-
- Сообщения: 29
- Зарегистрирован: Вт июл 10, 2018 11:21 am
- Благодарил (а): 40 раз
- Поблагодарили: 1 раз
Re: [Модуль] MegaD (megad)
На Raspberry, базовый образ 3.41, насколько я могу судить, после обновления работает без изменений, как я описывал в предыдущем посте. Вот видео: https://drive.google.com/open?id=1ZCseF ... pTk6hQ6Oa8sergejey писал(а): ↑Чт дек 12, 2019 12:00 pmЯ убрал flush -- возможно, на каких-то конфигурациях эта конструкция выдавала ошибку. Попробуйте пожалуйста сейчас.
Если у кого-то ещё не работает, то включите пожалуйста лог MegaD -- там будет обмен показан между контроллером и сервером. В частности, реакция сервера на запросы от контроллера. Для надёжности можно попробовать этот запрос продублировать в браузере и посмотреть, что сервер выдаст, потому что ошибки или предупреждения в лог не попадут.
Конфиг Меги:
Конфиг модуля:
Лог: Порт 6 кнопка, порт 11 реле.
Код: Выделить всё
21:32:40 0.77989000 Command response: Done
21:32:40 0.76918400 Sending command: http://192.168.1.15/sec/?cmd=11:1
21:32:40 0.29971000 Command response: Done
21:32:40 0.28925100 Sending command: http://192.168.1.15/sec/?cmd=11:0
21:32:40 0.22463500 Result:
21:32:40 0.12927200 Request: /megad.php?pt=6&click=1&cnt=38&mdid=aDLkt (192.168.1.15)
21:32:38 0.00624700 Request: /megad.php?pt=6&click=1&cnt=37&mdid=aDLkt (192.168.1.15)
21:32:38 0.26068100 Sending command: http://192.168.1.15/sec/?cmd=11:1
21:32:38 0.09696400 Result:
21:32:38 0.27088400 Command response: Done
21:32:30 0.99035800 Command response: Done
21:32:30 0.97863900 Sending command: http://192.168.1.15/sec/?cmd=11:0
21:32:30 0.88728000 Result:
21:32:30 0.77497400 Request: /megad.php?pt=6&click=1&cnt=36&mdid=aDLkt (192.168.1.15)
21:32:28 0.20077300 Command response: Done
21:32:28 0.18974700 Sending command: http://192.168.1.15/sec/?cmd=11:0
21:32:18 0.15526700 Command response: Done
21:32:18 0.14234700 Sending command: http://192.168.1.15/sec/?cmd=11:1
21:32:17 0.69820600 Result:
21:32:17 0.59579800 Request: /megad.php?pt=6&click=1&cnt=35&mdid=aDLkt (192.168.1.15)
21:32:15 0.12757200 Command response: Done
21:32:15 0.11700900 Sending command: http://192.168.1.15/sec/?cmd=11:0
21:32:05 0.76820200 Command response: Done
21:32:05 0.75793800 Sending command: http://192.168.1.15/sec/?cmd=11:1
21:32:05 0.58695000 Result:
21:32:05 0.47098400 Request: /megad.php?pt=6&click=1&cnt=34&mdid=aDLkt (192.168.1.15)
В Вашем случае, ответная команда, по моему, вообще не приходит, только информация, что сервер доступен.Dmitry M писал(а): ↑Чт дек 12, 2019 1:59 pm5й пакет приходит какой-то странный, в нем начало ответа сервера, а в 6ом, который уже HTTP, приходит последний кусок ответа.вот так это выглядит, когда все окОбмен меги и сервера после обновления модуляПоказатьnew1.jpgОбмен меги и сервера до обновленияПоказатьold1.jpg
-
- Сообщения: 1462
- Зарегистрирован: Вс янв 10, 2016 11:05 am
- Благодарил (а): 260 раз
- Поблагодарили: 454 раза
Re: [Модуль] MegaD (megad)
Попробуйте вместа ТИПа "IN" выставить ТИП "counter". Изменится что-нибудь в лучшую сторону? У меня при типе "IN" вообще ничего не работало (хотя я давно не обновлял модуль).
Ну и заодно, что написано в методе "switch"?
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: [Модуль] MegaD (megad)
Судя по логу получается так -- MegaD присылает событие, сервер вызывает метод Switch, вызов этого метода отправляет команду на Мегу для включения и через 10 секунд сервер снова отправляет команду на мегу, только уже для выключения. Последнее значит, что изменился статус связанного свойства на сервере, но вопрос кем. Я тут рекомендовал бы ещё посмотреть историю изменений связанного свойства -- там есть поле Source, из которого можно понять причину обновления. Т.е. надо найти что через 10 секунд выставляет свойство в ноль.semkyskov писал(а): ↑Чт дек 12, 2019 3:45 pmКод: Выделить всё
21:32:40 0.77989000 Command response: Done 21:32:40 0.76918400 Sending command: http://192.168.1.15/sec/?cmd=11:1 21:32:40 0.29971000 Command response: Done 21:32:40 0.28925100 Sending command: http://192.168.1.15/sec/?cmd=11:0 21:32:40 0.22463500 Result: 21:32:40 0.12927200 Request: /megad.php?pt=6&click=1&cnt=38&mdid=aDLkt (192.168.1.15) 21:32:38 0.00624700 Request: /megad.php?pt=6&click=1&cnt=37&mdid=aDLkt (192.168.1.15) 21:32:38 0.26068100 Sending command: http://192.168.1.15/sec/?cmd=11:1 21:32:38 0.09696400 Result: 21:32:38 0.27088400 Command response: Done 21:32:30 0.99035800 Command response: Done 21:32:30 0.97863900 Sending command: http://192.168.1.15/sec/?cmd=11:0 21:32:30 0.88728000 Result: 21:32:30 0.77497400 Request: /megad.php?pt=6&click=1&cnt=36&mdid=aDLkt (192.168.1.15) 21:32:28 0.20077300 Command response: Done 21:32:28 0.18974700 Sending command: http://192.168.1.15/sec/?cmd=11:0 21:32:18 0.15526700 Command response: Done 21:32:18 0.14234700 Sending command: http://192.168.1.15/sec/?cmd=11:1 21:32:17 0.69820600 Result: 21:32:17 0.59579800 Request: /megad.php?pt=6&click=1&cnt=35&mdid=aDLkt (192.168.1.15) 21:32:15 0.12757200 Command response: Done 21:32:15 0.11700900 Sending command: http://192.168.1.15/sec/?cmd=11:0 21:32:05 0.76820200 Command response: Done 21:32:05 0.75793800 Sending command: http://192.168.1.15/sec/?cmd=11:1 21:32:05 0.58695000 Result: 21:32:05 0.47098400 Request: /megad.php?pt=6&click=1&cnt=34&mdid=aDLkt (192.168.1.15)
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 1462
- Зарегистрирован: Вс янв 10, 2016 11:05 am
- Благодарил (а): 260 раз
- Поблагодарили: 454 раза
Re: [Модуль] MegaD (megad)
sergejey, посмотрите на предыдущей странице likex2000 выкладывал историю изменения свойства status. Вот там написано, что свойство меняетsergejey писал(а): ↑Чт дек 12, 2019 4:54 pm...
Последнее значит, что изменился статус связанного свойства на сервере, но вопрос кем. Я тут рекомендовал бы ещё посмотреть историю изменений связанного свойства -- там есть поле Source, из которого можно понять причину обновления. Т.е. надо найти что через 10 секунд выставляет свойство в ноль.
/ajax/megad.html?op=processCycle
-
- Сообщения: 29
- Зарегистрирован: Вт июл 10, 2018 11:21 am
- Благодарил (а): 40 раз
- Поблагодарили: 1 раз
Re: [Модуль] MegaD (megad)
Chainik, Вы правы, это /ajax/megad.html?op=processCycle.sergejey писал(а): ↑Чт дек 12, 2019 4:54 pmСудя по логу получается так -- MegaD присылает событие, сервер вызывает метод Switch, вызов этого метода отправляет команду на Мегу для включения и через 10 секунд сервер снова отправляет команду на мегу, только уже для выключения. Последнее значит, что изменился статус связанного свойства на сервере, но вопрос кем. Я тут рекомендовал бы ещё посмотреть историю изменений связанного свойства -- там есть поле Source, из которого можно понять причину обновления. Т.е. надо найти что через 10 секунд выставляет свойство в ноль.
История свойства к логу из прошлого поста: Кстати, я уже сталкивался с вмешательством этой "конструкции" в работу ПУ с импульсным счетчиком, вызывающей ложные срабатывания. От чего показания счетчика со временем начинают превышать реальные:
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: [Модуль] MegaD (megad)
Конструкция /ajax/megad.html?op=processCycle используется для периодического опроса, т.е. выходит так, что периодический опрос статуса портов мегад возвращает разные значения? А не могли бы вы ещё на лог изменений значения статуса наложить лог взаимодействия с megad за тот же период? Возможно мы тогда увидим, почему после включения мы через 10 секунд получаем запрос на выключение. Ну или если это однозначно воспроизводится и есть возможность предоставить доступ к системе, то я мог бы подключиться и посмотреть прямо у вас.
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги