connection error
This commit is contained in:
+1
-9
@@ -27,11 +27,9 @@ async fn main() {
|
|||||||
task::spawn(async move {
|
task::spawn(async move {
|
||||||
publish(client.clone(), &weather).await;
|
publish(client.clone(), &weather).await;
|
||||||
});
|
});
|
||||||
println!("{}", 100);
|
|
||||||
|
|
||||||
let poll_result = time::timeout(MQTT_TIMEOUT, async {
|
let poll_result = time::timeout(MQTT_TIMEOUT, async {
|
||||||
let mut count = 0;
|
let mut count = 0;
|
||||||
let mut err_count = 0;
|
|
||||||
loop {
|
loop {
|
||||||
let event = eventloop.poll().await;
|
let event = eventloop.poll().await;
|
||||||
match &event {
|
match &event {
|
||||||
@@ -43,12 +41,7 @@ async fn main() {
|
|||||||
}
|
}
|
||||||
Err(e) => {
|
Err(e) => {
|
||||||
println!("MQTT Error = {e:?}");
|
println!("MQTT Error = {e:?}");
|
||||||
err_count += 1;
|
break;
|
||||||
if err_count >= 5 {
|
|
||||||
eprintln!("Exiting MQTT loop after 5 consecutive errors.");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
time::sleep(Duration::from_millis(200)).await;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -222,7 +215,6 @@ fn create_conn() -> (AsyncClient, EventLoop) {
|
|||||||
let mqtt_user = env::var("MQTT_USER").unwrap_or_default();
|
let mqtt_user = env::var("MQTT_USER").unwrap_or_default();
|
||||||
let mqtt_password = env::var("MQTT_PASSWORD").unwrap_or_default();
|
let mqtt_password = env::var("MQTT_PASSWORD").unwrap_or_default();
|
||||||
|
|
||||||
println!("MQTT Broker: {}", mqtt_broker);
|
|
||||||
let mut mqttoptions = MqttOptions::new(mqtt_client, mqtt_broker, 1883);
|
let mut mqttoptions = MqttOptions::new(mqtt_client, mqtt_broker, 1883);
|
||||||
mqttoptions
|
mqttoptions
|
||||||
.set_keep_alive(Duration::from_secs(5))
|
.set_keep_alive(Duration::from_secs(5))
|
||||||
|
|||||||
Reference in New Issue
Block a user