|
@@ -58,6 +58,11 @@ void publishCurrentThermostatValues(bool force = false)
|
|
sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "modeName");
|
|
sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "modeName");
|
|
mqttclient.publish(tmp_topic_out, currentModeName, confMqtt.mqtt_outRetain);
|
|
mqttclient.publish(tmp_topic_out, currentModeName, confMqtt.mqtt_outRetain);
|
|
|
|
|
|
|
|
+
|
|
|
|
+ sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "modeHA");
|
|
|
|
+ if(heatingMode == 0) mqttclient.publish(tmp_topic_out, "off", confMqtt.mqtt_outRetain);
|
|
|
|
+ else if(heatingMode == 1) mqttclient.publish(tmp_topic_out, "heat", confMqtt.mqtt_outRetain);
|
|
|
|
+
|
|
if (confBas.saveToMqttRetained && heatingMode != heatingMode_lastPublished)
|
|
if (confBas.saveToMqttRetained && heatingMode != heatingMode_lastPublished)
|
|
{
|
|
{
|
|
// MQTT retained save setMode
|
|
// MQTT retained save setMode
|
|
@@ -84,9 +89,11 @@ void publishCurrentThermostatValues(bool force = false)
|
|
|
|
|
|
sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "presetHA");
|
|
sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "presetHA");
|
|
if (preset == 0)
|
|
if (preset == 0)
|
|
- mqttclient.publish(tmp_topic_out, "none", confMqtt.mqtt_outRetain);
|
|
|
|
- else
|
|
|
|
- mqttclient.publish(tmp_topic_out, currentPresetName, confMqtt.mqtt_outRetain);
|
|
|
|
|
|
+ mqttclient.publish(tmp_topic_out, "norm", confMqtt.mqtt_outRetain);
|
|
|
|
+ else if (preset == 1)
|
|
|
|
+ mqttclient.publish(tmp_topic_out, "red1", confMqtt.mqtt_outRetain);
|
|
|
|
+ else if (preset == 2)
|
|
|
|
+ mqttclient.publish(tmp_topic_out, "red2", confMqtt.mqtt_outRetain);
|
|
|
|
|
|
if (confBas.saveToMqttRetained && preset != preset_lastPublished)
|
|
if (confBas.saveToMqttRetained && preset != preset_lastPublished)
|
|
{
|
|
{
|
|
@@ -311,6 +318,9 @@ void publishDeleteRetainedOutMessages()
|
|
sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "modeName");
|
|
sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "modeName");
|
|
mqttclient.publish(tmp_topic_out, "", true);
|
|
mqttclient.publish(tmp_topic_out, "", true);
|
|
|
|
|
|
|
|
+ sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "modeHA");
|
|
|
|
+ mqttclient.publish(tmp_topic_out, "", true);
|
|
|
|
+
|
|
sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "preset");
|
|
sprintf(tmp_topic_out, "%s/%s", confMqtt.mqtt_topic_out, "preset");
|
|
mqttclient.publish(tmp_topic_out, "", true);
|
|
mqttclient.publish(tmp_topic_out, "", true);
|
|
|
|
|