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

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

Модератор: immortal

newz20
Сообщения: 172
Зарегистрирован: Пт апр 06, 2018 9:40 am
Благодарил (а): 93 раза
Поблагодарили: 93 раза

Re: Предложения по доработке модуля MQTT

Сообщение newz20 » Чт апр 19, 2018 9:27 pm

nick7zmail писал(а):
Чт апр 19, 2018 7:57 pm
http://php.net/manual/ru/function.json-decode.php
Спасибо за ссылку, я ее видел и немного разобрался. Я не могу понять где обработать полученное значение. Я создал класс testmqtt1 и создал свойство testmqtt2 и в нем объект testmqtt3 туда и привязана из модуля mqtt строка {
"name": "Switch1",
"service_name": "Switch 1",
"service": "Switch",
"characteristic": "On",
"value": false
}

Пишу сценарий mqtt
$json = '%testmqtt3.testmqtt2%';

var_dump(json_decode($json));
var_dump(json_decode($json, true));

создаю метод и привязываю выполнение сценария в методе

И откровенно уже запутался.
Может есть у кого возможность разжевать ?
За это сообщение автора newz20 поблагодарил:
Samir77 (Пт апр 24, 2020 10:56 am)
Рейтинг: 1.16%
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: Предложения по доработке модуля MQTT

Сообщение skysilver » Чт апр 19, 2018 9:37 pm

newz20 писал(а):
Чт апр 19, 2018 9:27 pm
$json = '%testmqtt3.testmqtt2%';
Это ты где так научился?
За это сообщение автора skysilver поблагодарил:
Samir77 (Пт апр 24, 2020 10:56 am)
Рейтинг: 1.16%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Предложения по доработке модуля MQTT

Сообщение nick7zmail » Чт апр 19, 2018 9:48 pm

1) Делаете класс (лучше новый)
2) В нем метод (mqtt_recieved к примеру)
3) В свойствах mqtt_prop, связываете с mqtt_recieved
4) В объектах - создаёте объект (mqtt_obj к примеру)
5) В объекте заходите в методы, нажимаете кнопку настроить, и там уже пишите ваш код

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

$json = gg('mqtt_obj.mqtt_prop');
$json_arr=json_decode($json);
6) Связываете mqtt со свойством, при обновлении свойства будет выполняться метод. в json_arr будет расшифрованныё json.

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

$json_arr['name']='Switch1';
$json_arr['service_name']='Switch 1';
//и так далее...можете раскидать по свойствам
foreach ($json_arr as $k=>$v) {
sg("mqtt_obj.$k", $v);
}
//этот цикл раскидает всё по свойствам
За это сообщение автора nick7zmail поблагодарили (всего 2):
newz20 (Чт апр 19, 2018 10:46 pm) • Denis_k (Пн апр 23, 2018 6:01 pm)
Рейтинг: 2.33%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
rzag
Сообщения: 32
Зарегистрирован: Вт июн 27, 2017 7:01 pm
Благодарил (а): 6 раз
Поблагодарили: 4 раза

Re: Предложения по доработке модуля MQTT

Сообщение rzag » Вт апр 24, 2018 9:46 pm

Уважаемые, как все-таки решить проблему с постоянным реконнектом ?

вот часть лога москитто:

1524595242: Client majordomo has exceeded timeout, disconnecting.
1524595242: Socket error on client majordomo, disconnecting.
1524595242: New connection from 192.168.1.40 on port 1883.
1524595242: Client majordomo disconnected.
1524595242: New client connected from 192.168.1.40 as majordomo (c0, k10).
1524595287: Client majordomo has exceeded timeout, disconnecting.
1524595287: Socket error on client majordomo, disconnecting.
1524595287: New connection from 192.168.1.40 on port 1883.
1524595287: Client majordomo disconnected.
1524595287: New client connected from 192.168.1.40 as majordomo (c0, k10).
1524595302: Client majordomo has exceeded timeout, disconnecting.
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Предложения по доработке модуля MQTT

Сообщение nick7zmail » Вт апр 24, 2018 9:59 pm

Хз...у меня не наблюдалось такого.

Отправлено с моего Xperia XZ1 Compact через Tapatalk

За это сообщение автора nick7zmail поблагодарил:
TurburatoR (Сб сен 22, 2018 6:42 pm)
Рейтинг: 1.16%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
rzag
Сообщения: 32
Зарегистрирован: Вт июн 27, 2017 7:01 pm
Благодарил (а): 6 раз
Поблагодарили: 4 раза

Re: Предложения по доработке модуля MQTT

Сообщение rzag » Вт апр 24, 2018 10:32 pm

Интересно то , что у других устройств, подключенных к брокеру, а их десятка три, реконнекта нету.
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Предложения по доработке модуля MQTT

Сообщение nick7zmail » Ср апр 25, 2018 2:49 pm

А после перезагрузки сохраняется такое поведение системы?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
rzag
Сообщения: 32
Зарегистрирован: Вт июн 27, 2017 7:01 pm
Благодарил (а): 6 раз
Поблагодарили: 4 раза

Re: Предложения по доработке модуля MQTT

Сообщение rzag » Ср апр 25, 2018 6:22 pm

Да, тоже самое
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Предложения по доработке модуля MQTT

Сообщение nick7zmail » Ср апр 25, 2018 6:55 pm

А адрес логин пароль верные? (ну вдруг)
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
rzag
Сообщения: 32
Зарегистрирован: Вт июн 27, 2017 7:01 pm
Благодарил (а): 6 раз
Поблагодарили: 4 раза

Re: Предложения по доработке модуля MQTT

Сообщение rzag » Ср апр 25, 2018 7:17 pm

Так МД работает, по mqtt все бегает, но случаются затыки. Я так понимаю связанные с частым реконнектом МД с брокером.
Ответить