Есть ли способ обеспечить доставку сообщения брокеру в MQTT с Paho MQTT за Python? - PullRequest
0 голосов
/ 09 января 2020

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

1 Ответ

0 голосов
/ 09 января 2020

В методе publi sh вы можете установить QoS 1 или 2. QoS level 1 гарантирует, что сообщение будет доставлено получателю как минимум один раз. Отправитель сохраняет сообщение до тех пор, пока не получит пакет PUBACK от получателя, который подтверждает получение сообщения. Сообщение может быть отправлено или доставлено несколько раз. QoS 2 - самый высокий уровень обслуживания в MQTT. Этот уровень гарантирует, что каждое сообщение будет получено только один раз предполагаемыми получателями. QoS 2 - самый безопасный и самый медленный уровень качества обслуживания. Гарантия обеспечивается как минимум двумя потоками запросов / ответов (четырехэтапное рукопожатие) между отправителем и получателем. Отправитель и получатель используют идентификатор пакета исходного сообщения PUBLI SH для координации доставки сообщения.

...