diff --git a/src/MqttTask.h b/src/MqttTask.h index f42e26c..b201ace 100644 --- a/src/MqttTask.h +++ b/src/MqttTask.h @@ -196,6 +196,11 @@ protected: this->client->stop(); this->client->setId(networkSettings.hostname); this->client->setUsernamePassword(settings.mqtt.user, settings.mqtt.password); + + this->client->beginWill(this->haHelper->getDeviceTopic(F("status")).c_str(), 7, true, 1); + this->client->print(F("offline")); + this->client->endWill(); + this->client->connect(settings.mqtt.server, settings.mqtt.port); this->lastReconnectTime = millis(); this->yield();