From 3d37f84a4b124871308f110b4bd59aa57551e388 Mon Sep 17 00:00:00 2001 From: fvanroie <15969459+fvanroie@users.noreply.github.com> Date: Mon, 18 Oct 2021 15:42:36 +0200 Subject: [PATCH] Fix compile errors with HASP_USE_HA --- src/mqtt/hasp_mqtt_pubsubclient.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/mqtt/hasp_mqtt_pubsubclient.cpp b/src/mqtt/hasp_mqtt_pubsubclient.cpp index 69f3759d..dba3f1c1 100644 --- a/src/mqtt/hasp_mqtt_pubsubclient.cpp +++ b/src/mqtt/hasp_mqtt_pubsubclient.cpp @@ -171,7 +171,7 @@ static void mqtt_message_cb(char* topic, byte* payload, unsigned int length) } else if(topic == strstr_P(topic, PSTR("homeassistant/status"))) { // HA discovery topic if(mqttHAautodiscover && !strcasecmp_P((char*)payload, PSTR("online"))) { mqtt_ha_register_auto_discovery(); // auto-discovery first - dispatch_current_state(); // send the data + dispatch_current_state(TAG_MQTT); // send the data } return; #endif @@ -314,8 +314,13 @@ void mqttStart() /* Home Assistant auto-configuration */ #ifdef HASP_USE_HA - if(mqttHAautodiscover) mqttSubscribeTo(F("hass/status"), mqttClientId); - if(mqttHAautodiscover) mqttSubscribeTo(F("homeassistant/status"), mqttClientId); + if(mqttHAautodiscover) { + char topic[64]; + snprintf_P(topic, sizeof(topic), PSTR("hass/status")); + mqttSubscribeTo(topic); + snprintf_P(topic, sizeof(topic), PSTR("homeassistant/status")); + mqttSubscribeTo(topic); + } #endif // Force any subscribed clients to toggle offline/online when we first connect to