From dc65ca444cbbb73002d271f883e5051be6a5d53d Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Mon, 12 Dec 2022 13:19:11 -0600 Subject: [PATCH] mqttdpms: Enable automatic reconnect Apparently, *paho-mqtt* does not enable automatic reconnect by default. --- src/mqttdpms.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mqttdpms.rs b/src/mqttdpms.rs index 30620ae..27023ed 100644 --- a/src/mqttdpms.rs +++ b/src/mqttdpms.rs @@ -1,3 +1,5 @@ +use std::time::Duration; + use futures::stream::StreamExt; use log::{debug, error, info, warn}; use paho_mqtt as mqtt; @@ -83,6 +85,10 @@ impl MqttDpms { let mut client = mqtt::AsyncClient::new(client_opts)?; let mut conn_opts = mqtt::ConnectOptionsBuilder::new(); conn_opts.will_message(self.will_message()); + conn_opts.automatic_reconnect( + Duration::from_millis(500), + Duration::from_secs(30), + ); if self.config.mqtt.tls { let ssl_opts = mqtt::SslOptionsBuilder::new() .trust_store(&self.config.mqtt.ca_file)?