Посылает ли Mosquitto Broker сообщение об отключении при завершении работы? - PullRequest
0 голосов
/ 25 апреля 2020

Я использую брокер MQTT, настроенный на хост-компьютере с серверной ОС Windows 2012, и несколько встроенных устройств подписаны на брокер для получения команд.

Я хотел понять, отправляет ли брокер MQTT какое-либо сообщение об отключении всем своим подписанным клиентам, когда служба посредника на хост-компьютере останавливается по любой причине, например, при перезагрузке или завершении работы хост-компьютера. Причина, по которой я задаю этот вопрос, ниже.

На моем устройстве весь код (включая клиентскую библиотеку mqtt) перестает выполняться, когда устройство переходит в спящий режим, и выполнение не возобновляется до тех пор, пока устройство не проснется (при получении пакета данных по каналу WiFi или несколькими другими устройствами). действия).

Теперь, когда я перезагружаю хост-компьютер, я наблюдаю, что мои устройства выходят из спящего режима и пытаются повторно подключиться к брокеру, пока не вернется брокер MQTT. Я думаю, что устройства просыпаются только потому, что они получают некоторые данные по каналу WiFi, потому что я не предпринимаю никаких других действий, которые могли бы разбудить устройство.

Поэтому мне интересно, что это за пакет данных WiFi, который пробуждает устройство и вызывает его переподключение. Возможно, это команда отключения, отправленная брокером на устройство?

1 Ответ

0 голосов
/ 25 апреля 2020

Нет, брокер не будет отправлять сообщения о завершении работы. MQTT Disconnect Message отправляется только от клиента к брокеру в соответствии со спецификацией c.

. Я предлагаю вам установить некоторое программное обеспечение для мониторинга сети (например, Wireshark), чтобы отследить, что такое сетевая активность. случается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...