From 87d49be7b3a27fc67eef891cf4832ffe17e0a06f Mon Sep 17 00:00:00 2001 From: MichaelDvP Date: Fri, 16 Oct 2020 11:49:15 +0200 Subject: [PATCH] setting of mqtt-format without reboot --- lib/framework/MqttSettingsService.cpp | 4 ++++ src/mqtt.cpp | 4 ++++ src/mqtt.h | 1 + 3 files changed, 9 insertions(+) diff --git a/lib/framework/MqttSettingsService.cpp b/lib/framework/MqttSettingsService.cpp index ef9d6b277..359e14b0a 100644 --- a/lib/framework/MqttSettingsService.cpp +++ b/lib/framework/MqttSettingsService.cpp @@ -222,6 +222,10 @@ StateUpdateResult MqttSettings::update(JsonObject & root, MqttSettings & setting emsesp::EMSESP::mqtt_.set_qos(newSettings.mqtt_qos); } + if (newSettings.mqtt_format != settings.mqtt_format) { + emsesp::EMSESP::mqtt_.set_format(newSettings.mqtt_format); + } + if (newSettings.mqtt_retain != settings.mqtt_retain) { emsesp::EMSESP::mqtt_.set_retain(newSettings.mqtt_retain); } diff --git a/src/mqtt.cpp b/src/mqtt.cpp index 1468a30c9..63f487c66 100644 --- a/src/mqtt.cpp +++ b/src/mqtt.cpp @@ -454,6 +454,10 @@ void Mqtt::set_retain(bool mqtt_retain) { mqtt_retain_ = mqtt_retain; } +void Mqtt::set_format(uint8_t mqtt_format) { + mqtt_format_ = mqtt_format; +} + // MQTT onConnect - when a connect is established void Mqtt::on_connect() { // send info topic appended with the version information as JSON diff --git a/src/mqtt.h b/src/mqtt.h index d5d180dda..c82479c7d 100644 --- a/src/mqtt.h +++ b/src/mqtt.h @@ -75,6 +75,7 @@ class Mqtt { void set_publish_time_sensor(uint16_t publish_time); void set_qos(uint8_t mqtt_qos); void set_retain(bool mqtt_retain); + void set_format(uint8_t mqtt_format); bool get_publish_onchange(uint8_t device_type); enum Operation { PUBLISH, SUBSCRIBE };