prevent unsuccessful mqtt connections, dev7

This commit is contained in:
MichaelDvP
2026-08-17 11:37:19 +02:00
parent 822096b635
commit d397a14b41
2 changed files with 4 additions and 5 deletions
+3 -4
View File
@@ -351,6 +351,7 @@ void Mqtt::reset_mqtt() {
if (mqttClient_->connected()) {
mqttClient_->disconnect(true); // force a disconnect
}
load_settings(); // reload MQTT settings
}
// load the settings from service
@@ -502,8 +503,8 @@ void Mqtt::on_disconnect(espMqttClientTypes::DisconnectReason reason) {
// MQTT on_connect - when an MQTT connect is established
void Mqtt::on_connect() {
if (connecting_) {
return; // prevent duplicated connections
if (connecting_ || !connected()) {
return; // prevent duplicated connections and unsuccessful tries
}
LOG_INFO("MQTT connected");
@@ -511,8 +512,6 @@ void Mqtt::on_connect() {
connecting_ = true;
queuecount_ = mqttClient_->queueSize();
load_settings(); // reload MQTT settings - in case they have changes
if (ha_enabled_) {
queue_unsubscribe_message(discovery_prefix_ + "/+/" + Mqtt::basename() + "/#");
EMSESP::reset_mqtt_ha(); // re-create all HA devices if there are any