Страница 53 из 97

Re: [Модуль] MQTT (mqtt)

Добавлено: Ср июн 26, 2019 9:15 pm
Stor
fandaymon писал(а): Ср июн 26, 2019 4:38 pm ...
Возможно в этом дело - скорее всего функция callAPI недавно появилась и что-то там отрабатывает не так... Можно попробовать закоментить
...
Да, проблема именно в этой функции. Тоже закоментировал и все заработало.

Нужно чтобы Сергей поправил, иначе многие наткнутся на этот баг при обновлении!!!

Re: [Модуль] MQTT (mqtt)

Добавлено: Чт июн 27, 2019 10:59 pm
Stor
Кстати, заметил, что также перестали отрабатывать методы объектов, к которым привязано устройство MQTT. То есть значения из топика в свойство объекта записывает, но метод объекта не вызывает. У меня в методах было округление показания температуры и влажности.
Причем если дернуть метод через ссылку test (например, http://192.168.1.160:80/objects/?object ... humChanged&) на странице настройки метода, то он отработает нормально.
Кто-нибудь с таким сталкивался? Из-за чего это может быть?

Re: [Модуль] MQTT (mqtt)

Добавлено: Пт июн 28, 2019 8:09 am
directman66
fandaymon писал(а): Ср июн 26, 2019 4:38 pm
Makcum писал(а): Ср июн 26, 2019 4:33 pm fandaymon, спасибо за попытку помочь.
Посмотрел по коду цикла - там есть такой if

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

    if (function_exists('callAPI')) {
        callAPI('/api/module/mqtt','GET',array('topic'=>$topic,'msg'=>$msg));
    } else {
        global $mqtt;
        $mqtt->processMessage($topic, $msg);
    }
Возможно в этом дело - скорее всего функция callAPI недавно появилась и что-то там отрабатывает не так... Можно попробовать закоментить вызов этой функции и перезапустить цикл MQTT

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

  //  if (function_exists('callAPI')) {
        //callAPI('/api/module/mqtt','GET',array('topic'=>$topic,'msg'=>$msg));
    //} else {
        global $mqtt;
        $mqtt->processMessage($topic, $msg);
    //}

Зачем? Эта функция передает входящие параметры телу модуля. Закоментив ее не будут приходить входящие сообщения.

Re: [Модуль] MQTT (mqtt)

Добавлено: Пт июн 28, 2019 8:38 am
nick7zmail
Не надо комментить. Попробуйте поправить
/api/module/mqtt на /api.php/module/mqtt
у меня сработало в похожем случае.

Re: [Модуль] MQTT (mqtt)

Добавлено: Пт июн 28, 2019 12:50 pm
fandaymon
directman66 писал(а): Пт июн 28, 2019 8:09 am
Зачем? Эта функция передает входящие параметры телу модуля. Закоментив ее не будут приходить входящие сообщения.
Затем что старый способ передавать сообщения модулю это $mqtt->processMessage($topic, $msg);

Re: [Модуль] MQTT (mqtt)

Добавлено: Пт июн 28, 2019 12:52 pm
directman66
fandaymon писал(а): Пт июн 28, 2019 12:50 pm
directman66 писал(а): Пт июн 28, 2019 8:09 am
Зачем? Эта функция передает входящие параметры телу модуля. Закоментив ее не будут приходить входящие сообщения.
Затем что старый способ передавать сообщения модулю это $mqtt->processMessage($topic, $msg);
Это способ теперь заменен на api

Re: [Модуль] MQTT (mqtt)

Добавлено: Пт июн 28, 2019 12:57 pm
fandaymon
directman66 писал(а): Пт июн 28, 2019 12:52 pm
fandaymon писал(а): Пт июн 28, 2019 12:50 pm
directman66 писал(а): Пт июн 28, 2019 8:09 am
Зачем? Эта функция передает входящие параметры телу модуля. Закоментив ее не будут приходить входящие сообщения.
Затем что старый способ передавать сообщения модулю это $mqtt->processMessage($topic, $msg);
Это способ теперь заменен на api
Я догадался 8-) Но если новый не работает, то никогда не помешает попробовать вернуться к старому - мало ли, модуль, например, обновлен, а остальная система нет...

Re: [Модуль] MQTT (mqtt)

Добавлено: Пт июн 28, 2019 10:51 pm
Stor
nick7zmail писал(а): Пт июн 28, 2019 8:38 am Не надо комментить. Попробуйте поправить
/api/module/mqtt на /api.php/module/mqtt
у меня сработало в похожем случае.
Проверил. Раскомментировал и заменил /api/module/mqtt на /api.php/module/mqtt - не помогло. После перезагрузки модуля, данные снова перестали попадать в MQTT.

Пока вернул вариант с закомментированными строками.

Re: [Модуль] MQTT (mqtt)

Добавлено: Пт июн 28, 2019 11:36 pm
Makcum
Stor писал(а): Пт июн 28, 2019 10:51 pm
nick7zmail писал(а): Пт июн 28, 2019 8:38 am Не надо комментить. Попробуйте поправить
/api/module/mqtt на /api.php/module/mqtt
у меня сработало в похожем случае.
Проверил. Раскомментировал и заменил /api/module/mqtt на /api.php/module/mqtt - не помогло. После перезагрузки модуля, данные снова перестали попадать в MQTT.

Пока вернул вариант с закомментированными строками.
Аналогично.
Stor, а у Вас работают привязанные методы к объекту? У меня например свойства объекта заполняются данными из MQTT, но методы не отрабатывают (Объект Switch, событие switch) (это при условии, что новый метод закомментирован и оставлен только старый).

Re: [Модуль] MQTT (mqtt)

Добавлено: Пт июн 28, 2019 11:43 pm
Stor
Makcum писал(а): Пт июн 28, 2019 11:36 pm
Stor, а у Вас работают привязанные методы к объекту? У меня например свойства объекта заполняются данными из MQTT, но методы не отрабатывают (Объект Switch, событие switch) (это при условии, что новый метод закомментирован и оставлен только старый).
Нет, не работают. Об этом я написал ещё вчера (27 июня). У меня не отрабатывают методы округления данных температуры и влажности. Причем не отрабатывают методы ни родителя, ни его объектов. Срабатывает только прямой вызов метода через http ,вызов.