mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2026-01-27 17:19:08 +03:00
publish mqtt emsesp on-change messages on connect
This commit is contained in:
@@ -105,10 +105,6 @@ StateUpdateResult WebScheduler::update(JsonObject root, WebScheduler & webSchedu
|
||||
CommandFlag::ADMIN_ONLY);
|
||||
}
|
||||
}
|
||||
|
||||
EMSESP::webSchedulerService.ha_reset();
|
||||
EMSESP::webSchedulerService.publish();
|
||||
|
||||
return StateUpdateResult::CHANGED;
|
||||
}
|
||||
|
||||
@@ -217,17 +213,17 @@ void WebSchedulerService::publish_single(const char * name, const bool state) {
|
||||
|
||||
// publish to Mqtt
|
||||
void WebSchedulerService::publish(const bool force) {
|
||||
if (force) {
|
||||
ha_configdone_ = false;
|
||||
}
|
||||
|
||||
if (!Mqtt::enabled() || scheduleItems_->empty()) {
|
||||
if (!Mqtt::connected() || scheduleItems_->empty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (Mqtt::publish_single() && force) {
|
||||
for (const ScheduleItem & scheduleItem : *scheduleItems_) {
|
||||
publish_single(scheduleItem.name, scheduleItem.active);
|
||||
if (force) {
|
||||
if (Mqtt::publish_single()) {
|
||||
for (const ScheduleItem & scheduleItem : *scheduleItems_) {
|
||||
publish_single(scheduleItem.name, scheduleItem.active);
|
||||
}
|
||||
return;
|
||||
} else if (!EMSESP::mqtt_.get_publish_onchange(0)) {
|
||||
return; // wait for first time periode
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user