From dfed23261ab497d8568b2e4f7d08d44e33a8012a Mon Sep 17 00:00:00 2001 From: Sabouflage Date: Tue, 30 Jan 2024 19:02:57 +0100 Subject: [PATCH 1/2] fix(mqtt): MQTTs LWT QoS config used also for TLS connections --- src/MqttSettings.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/MqttSettings.cpp b/src/MqttSettings.cpp index 09c883e..82d0540 100644 --- a/src/MqttSettings.cpp +++ b/src/MqttSettings.cpp @@ -125,7 +125,7 @@ void MqttSettingsClass::performConnect() } else { static_cast(_mqttClient)->setCredentials(config.Mqtt.Username, config.Mqtt.Password); } - static_cast(_mqttClient)->setWill(willTopic.c_str(), 2, config.Mqtt.Retain, config.Mqtt.Lwt.Value_Offline); + static_cast(_mqttClient)->setWill(willTopic.c_str(), config.Mqtt.Lwt.Qos, config.Mqtt.Retain, config.Mqtt.Lwt.Value_Offline); static_cast(_mqttClient)->setClientId(clientId.c_str()); static_cast(_mqttClient)->setCleanSession(config.Mqtt.CleanSession); static_cast(_mqttClient)->onConnect(std::bind(&MqttSettingsClass::onMqttConnect, this, _1)); @@ -223,4 +223,4 @@ void MqttSettingsClass::createMqttClientObject() } } -MqttSettingsClass MqttSettings; \ No newline at end of file +MqttSettingsClass MqttSettings; From 5d7512e026d524ad1b30d635ba7d346c6912fea8 Mon Sep 17 00:00:00 2001 From: Sabouflage Date: Tue, 30 Jan 2024 19:03:23 +0100 Subject: [PATCH 2/2] fix(mqtt): setting MQTT LWT online message for frontend --- src/WebApi_mqtt.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/WebApi_mqtt.cpp b/src/WebApi_mqtt.cpp index 2361c44..e4b1f03 100644 --- a/src/WebApi_mqtt.cpp +++ b/src/WebApi_mqtt.cpp @@ -79,7 +79,7 @@ void WebApiMqttClass::onMqttAdminGet(AsyncWebServerRequest* request) root["mqtt_client_cert"] = config.Mqtt.Tls.ClientCert; root["mqtt_client_key"] = config.Mqtt.Tls.ClientKey; root["mqtt_lwt_topic"] = config.Mqtt.Lwt.Topic; - root["mqtt_lwt_online"] = config.Mqtt.CleanSession; + root["mqtt_lwt_online"] = config.Mqtt.Lwt.Value_Online;; root["mqtt_lwt_offline"] = config.Mqtt.Lwt.Value_Offline; root["mqtt_lwt_qos"] = config.Mqtt.Lwt.Qos; root["mqtt_publish_interval"] = config.Mqtt.PublishInterval;