Надежность MQTT от производителя к брокеру

#mqtt #mosquitto #qos

#mqtt #mosquitto #qos

Вопрос:

Я хочу смоделировать сценарий гарантированной доставки, когда соединение ненадежно (с использованием утилит mosquitto_pub и mosquitto_sub). Соединение может быть ненадежным как на стороне производителя, так и на стороне абонента.

Предположим:

 [Producer] --(1)--> [Broker] --(2)--> [Subscriber]
  

На стороне подписчика (сегмент № 2 выше) я могу получить надежную доставку, используя QoS> 0 и отключив чистый сеанс. Брокер сохраняет все сообщения, если абонент отключается, и доставляет их при следующем повторном подключении.

 mosquitto_sub -h <brokerIP> -t testtopic -i testsubid -c -q 1

  

Вопрос: Как я могу добиться того же в сегменте № 1 (от производителя к брокеру)?

Я хочу, чтобы производитель продолжал «публиковать» сообщения, пока сеть недоступна, и хотел, чтобы они доставлялись брокеру после восстановления сети. Есть ли способ сделать это «из коробки» с помощью библиотеки mqtt (хранение сообщений на стороне производителя)? В случае, если это поможет, моя окончательная реализация будет на paho / python.

Заранее спасибо.

Комментарии:

1. Что вы пробовали с библиотекой Python Paho? Клиент должен ставить сообщения в очередь, когда брокер отключен (см. Документы

2. Спасибо. Я скоро попробую. Между тем, есть ли способ сделать это с помощью утилит командной строки (mosquitto_pub / sub)?