[event] Store event types in flash memory (#11767)

This commit is contained in:
J. Nick Koston
2025-11-07 15:46:16 -06:00
committed by GitHub
parent 79d1a558af
commit c77bb3b269
9 changed files with 67 additions and 26 deletions

View File

@@ -1628,7 +1628,8 @@ void WebServer::handle_event_request(AsyncWebServerRequest *request, const UrlMa
}
static std::string get_event_type(event::Event *event) {
return (event && event->last_event_type) ? *event->last_event_type : "";
const char *last_type = event ? event->get_last_event_type() : nullptr;
return last_type ? last_type : "";
}
std::string WebServer::event_state_json_generator(WebServer *web_server, void *source) {
@@ -1649,7 +1650,7 @@ std::string WebServer::event_json(event::Event *obj, const std::string &event_ty
}
if (start_config == DETAIL_ALL) {
JsonArray event_types = root["event_types"].to<JsonArray>();
for (auto const &event_type : obj->get_event_types()) {
for (const char *event_type : obj->get_event_types()) {
event_types.add(event_type);
}
root["device_class"] = obj->get_device_class_ref();