Решено! Почему так медленно обрабатывается кнопка?

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Аватара пользователя
woow
Сообщения: 821
Зарегистрирован: Пн июл 04, 2016 8:46 am
Откуда: Mazeikiai
Благодарил (а): 125 раз
Поблагодарили: 46 раз

Решено! Почему так медленно обрабатывается кнопка?

Сообщение woow » Пт май 26, 2017 8:53 am

Что тормозит и где искать проблему?
Приводом ворот управляет ESP8266, сам скетч не мудрёный, нет там особых наворотов которые вызывали бы такое явление, тем более что если посылаешь команду по MQTTLens всё отрабатывается практически мгновенно.
В МЖД для этого создана всего единственная кнопка с методом:

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

$ this -> setProperty ("gatestatus",1);
и как бы всё, по mqtt на esp отсылается "1" .
Как уже писал если эта "1" отсылается из MQTTLens отрабатывается мгновенно, а через МЖД около 10 секунд и смотришь тупо на эту кнопку пока появится "ОК". И это очень неудобно потому что не знаешь послал команды или нет, почему ничего не происходит и не знающий пользователь может нажать несколько раз, а это очень не желательно поскольку каждый отсылаемый импульс на блок управления имеет разный статус (открыть-стоп-закрыть-стоп).
Последний раз редактировалось woow Пн май 29, 2017 12:26 am, всего редактировалось 1 раз.
Raspberry Pi 3B+
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Почему так медленно обрабатывается кнопка?

Сообщение nick7zmail » Пт май 26, 2017 10:11 am

Для начала попробуйте прямую адресацию объекта, и вместо кавычек апострафы

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

sg('Имя_объекта.gatestatus',1);
Через MQTTLens отправляете с того же устройства, с которого тормозит в МД?
И тут есть ещё момент...когда отправляете из MQTTLens запрос идет примерно так
клиент(MQTTLens)->роутер->брокер->роутер->esp
В случае с МД
клиент(браузер)->javascript->роутер->ядроМД->базаМД->ядроМД->брокер->роутер->esp
При этом часть, выделенная красным общается не по MQTT, а по js/php. Задержка будет 100% больше....но не 10 секунд...обычно это максимум - секунда....а если у вас дольше - нужно искать задержки в этой цепочке.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Почему так медленно обрабатывается кнопка?

Сообщение olehs » Пт май 26, 2017 10:25 am

woow, у Вас на gatestatus навешан какой-то метод при изменении?
Аватара пользователя
woow
Сообщения: 821
Зарегистрирован: Пн июл 04, 2016 8:46 am
Откуда: Mazeikiai
Благодарил (а): 125 раз
Поблагодарили: 46 раз

Re: Почему так медленно обрабатывается кнопка?

Сообщение woow » Пт май 26, 2017 10:55 am

olehs писал(а):woow, у Вас на gatestatus навешан какой-то метод при изменении?
а как иначе?
если кнопка, то выбирается объект- потом метод, другого выбора нет.
Raspberry Pi 3B+
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Почему так медленно обрабатывается кнопка?

Сообщение olehs » Пт май 26, 2017 11:10 am

хммм... не совсем понял..
я имел в виду функцию "Запускать метод при изменении"
Аватара пользователя
woow
Сообщения: 821
Зарегистрирован: Пн июл 04, 2016 8:46 am
Откуда: Mazeikiai
Благодарил (а): 125 раз
Поблагодарили: 46 раз

Re: Почему так медленно обрабатывается кнопка?

Сообщение woow » Пт май 26, 2017 11:17 am

nick7zmail писал(а):Для начала попробуйте прямую адресацию объекта, и вместо кавычек апострафы

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

sg('Имя_объекта.gatestatus',1);
а тут не понял это куда? в место метода? (сори не хватает знаний)
nick7zmail писал(а): Через MQTTLens отправляете с того же устройства, с которого тормозит в МД?
нет из другого компьютера, а сервер на Raspberry.
Я всю эту цепочку раньше использовал с Broadlink, для той же цели, изменит только то что с Broadlink перешёл в mqtt раздел.
С раздела Broadlink всё стёр, но свойства и метод оставил те же, может быть в этом причина, может быть где то остались какие- то логи и связи.
С Broadlink по той же схеме тормозов не было (принимал команду мгновенно), ели только сам Broadlink долго свои монады отрабатывал (жёлтый лед долго около 10сек. светился).
Raspberry Pi 3B+
Аватара пользователя
woow
Сообщения: 821
Зарегистрирован: Пн июл 04, 2016 8:46 am
Откуда: Mazeikiai
Благодарил (а): 125 раз
Поблагодарили: 46 раз

Re: Почему так медленно обрабатывается кнопка?

Сообщение woow » Пт май 26, 2017 12:06 pm

olehs писал(а):хммм... не совсем понял..
я имел в виду функцию "Запускать метод при изменении"
Кнопка не физическая, а с панели МЖД нужна при помощи кнопки послать 1.
Raspberry Pi 3B+
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Почему так медленно обрабатывается кнопка?

Сообщение olehs » Пт май 26, 2017 12:34 pm

Я не о том. Вот тут у этого свойства что-то настроено? Если да, то покажите текст метода, который там настроен
Безымянный.png
Безымянный.png (20.28 КБ) 5232 просмотра
Аватара пользователя
woow
Сообщения: 821
Зарегистрирован: Пн июл 04, 2016 8:46 am
Откуда: Mazeikiai
Благодарил (а): 125 раз
Поблагодарили: 46 раз

Re: Почему так медленно обрабатывается кнопка?

Сообщение woow » Пт май 26, 2017 12:57 pm

[quote="olehs"]Я не о том. Вот тут у этого свойства что-то настроено? Если да, то покажите текст метода, который там настроен
нет тут у меня ничего
я писал про меню управления-....-тип (выбираю кнопка)- Связанный объект (выбираю ворота)-следующий выбор Метод: вот тут и прописал метод и его привязал к выше указанному объекту.
Может быть тут и есть ошибка, тогда я сути не понял от чего будет меняться свойство и какой метод написать кнопке
Raspberry Pi 3B+
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Почему так медленно обрабатывается кнопка?

Сообщение nick7zmail » Пт май 26, 2017 12:59 pm

Виноват или нет бродлинк - проверить просто))создайте пустой объект в чистом классе, и привяжите к mqtt...

А вписывать код - вмето того, где у вас написанно setProperty



Отправлено с моего Xperia Z через Tapatalk
За это сообщение автора nick7zmail поблагодарил:
woow (Пт май 26, 2017 1:23 pm)
Рейтинг: 1.16%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Ответить