diff --git a/src/Services/EventActionService.cpp b/src/Services/EventActionService.cpp index 668189a5585076759f936cd3f524c45614670f82..2eb47acdcb08b4e9e6a5e2afe5bb0641d545ab96 100644 --- a/src/Services/EventActionService.cpp +++ b/src/Services/EventActionService.cpp @@ -182,11 +182,13 @@ void EventActionService::executeAction(uint16_t eventID) { // Custom function if (eventActionFunctionStatus) { if (eventActionDefinitionMap.find(eventID) != eventActionDefinitionMap.end()) { - if (eventActionDefinitionMap[eventID].enabled) { - MessageParser messageParser; - Message message = messageParser.parseRequestTC( - eventActionDefinitionMap[eventID].request); - messageParser.execute(message); + auto range = eventActionDefinitionMap.equal_range(eventID); + for (auto& element = range.first; element != range.second; ++element){ + if (element->second.enabled == true){ + MessageParser messageParser; + Message message = messageParser.parseRequestTC(element->second.request); + messageParser.execute(message); + } } } }