Browse Source

HASS - MQTT Retained Messages

In #104 durch @KG3RK3N vorgeschlagen und von mir smoke-getestet. Scheint den gewünschten Erfolg zu bringen.
pull/108/head
fila612 3 years ago
parent
commit
193802aae4
  1. 2
      tools/esp8266/app.cpp
  2. 6
      tools/esp8266/mqtt.h

2
tools/esp8266/app.cpp

@ -930,7 +930,7 @@ void app::sendMqttDiscoveryConfig(void) {
} }
serializeJson(doc, buffer); serializeJson(doc, buffer);
mMqtt.sendMsg2(discoveryTopic, buffer); mMqtt.sendMsg2(discoveryTopic, buffer, true);
doc.clear(); doc.clear();
yield(); yield();

6
tools/esp8266/mqtt.h

@ -39,15 +39,15 @@ class mqtt {
//DPRINTLN(DBG_VERBOSE, F("mqtt.h:sendMsg")); //DPRINTLN(DBG_VERBOSE, F("mqtt.h:sendMsg"));
char top[64]; char top[64];
snprintf(top, 64, "%s/%s", mTopic, topic); snprintf(top, 64, "%s/%s", mTopic, topic);
sendMsg2(top, msg); sendMsg2(top, msg, false);
} }
void sendMsg2(const char *topic, const char *msg) { void sendMsg2(const char *topic, const char *msg, boolean retained) {
if(mAddressSet) { if(mAddressSet) {
if(!mClient->connected()) if(!mClient->connected())
reconnect(); reconnect();
if(mClient->connected()) if(mClient->connected())
mClient->publish(topic, msg); mClient->publish(topic, msg, retained);
} }
} }

Loading…
Cancel
Save