majordomo не обновляет данные от mqtt

Проблемы/вопросы, связанные с запуском под различными платформами и конфигурациями.

Модератор: immortal

Ответить
Аватара пользователя
Konstantin 2
Сообщения: 27
Зарегистрирован: Ср авг 23, 2017 4:46 pm
Откуда: Новосибирск(Краснообск)
Благодарил (а): 1 раз
Поблагодарили: 0

majordomo не обновляет данные от mqtt

Сообщение Konstantin 2 » Вс авг 18, 2019 8:28 am

Подскажите плиз где копать ... настроил по примеру работу mqtt в majordomo все сначала работало замечательно отображались на графике температура и влажность и освещенность ... через дня 4 попробовал опять запустить все ... в majordomo состояния датчиков не меняются ошибок вроди никаких не видно в x-ray подскажите где еще смотреть.

В кратце о системе которую я собираю ... ядро это banana-pi m3 (8 ядер 1.8ГГц 2Гбайт оперативы) к ней через сеть LAN подключается 5 ардуино ... 4 это комплекты из датчиков и кнопок для включения реле ... 5-я это сам узел реле на ардуино мега ...
покачто у меня собрана одна ардуина с датчиками и кнопкой и ардуина с реле ... так вот кнопка отрабатывает нормально те mosquito пашет стабильно те реле включается и отключается через mqtt

а вот с мажородомо не все окей ... он вродибы подключается но данные в графике и странице статуса не обновляются.
Аватара пользователя
Konstantin 2
Сообщения: 27
Зарегистрирован: Ср авг 23, 2017 4:46 pm
Откуда: Новосибирск(Краснообск)
Благодарил (а): 1 раз
Поблагодарили: 0

Re: majordomo не обновляет данные от mqtt

Сообщение Konstantin 2 » Вс авг 18, 2019 8:34 am

Также еще одна проблемка проявляется происходит отключение тредов ... они рестартуют через некоторое время но почему завершаются не понятно ... причем при выключении тредов до их перезапуска отображается темная сцена на главной и там кнопки и закладки какието устаревшие которы я удалял из темы ...
Аватара пользователя
Konstantin 2
Сообщения: 27
Зарегистрирован: Ср авг 23, 2017 4:46 pm
Откуда: Новосибирск(Краснообск)
Благодарил (а): 1 раз
Поблагодарили: 0

Re: majordomo не обновляет данные от mqtt

Сообщение Konstantin 2 » Вт авг 20, 2019 5:03 pm

Нашел в инете такое предложение весь сырбор из-за вот этой функции:
function procmsg($topic, $msg) {
//$url = BASE_URL . '/ajax/mqtt.html?op=process&topic='.urlencode($topic)."&msg=".urlencode($msg);
//getURLBackground($url);
if (!isset($topic) || !isset($msg)) return false;
echo date("Y-m-d H:i:s") . " Topic:{$topic} $msg\n";
if (function_exists('callAPI')) {
callAPI('/api/module/mqtt','GET',array('topic'=>$topic,'msg'=>$msg));
} else {
global $mqtt;
$mqtt->processMessage($topic, $msg);
}
}

Если закоментить кусок кода где вызывается "callAPI" те чтобы всегда вызывался
global $mqtt;
$mqtt->processMessage($topic, $msg);
то сообщения приходят но тамже было написано мнение что в вызове callAPI чтото еще выполняется поэтому такой подход неправильный.
Ответить