Showing
1 changed file
with
5 additions
and
4 deletions
@@ -117,18 +117,19 @@ class ReactState { | @@ -117,18 +117,19 @@ class ReactState { | ||
117 | ctx.tellSuccess(msg); | 117 | ctx.tellSuccess(msg); |
118 | } | 118 | } |
119 | 119 | ||
120 | - boolean matched; | 120 | + boolean matched = false; |
121 | if (triggers == null || triggers.isEmpty()) { | 121 | if (triggers == null || triggers.isEmpty()) { |
122 | matched = true; | 122 | matched = true; |
123 | } else { | 123 | } else { |
124 | - matched = false; | 124 | + boolean itemMatched = false; |
125 | for (TriggerDTO trigger : triggers) { | 125 | for (TriggerDTO trigger : triggers) { |
126 | TriggerState triggerState = getOrCreateTriggerState(trigger, deviceId); | 126 | TriggerState triggerState = getOrCreateTriggerState(trigger, deviceId); |
127 | if (triggerState == null) { | 127 | if (triggerState == null) { |
128 | continue; | 128 | continue; |
129 | } | 129 | } |
130 | - matched = triggerState.process(ctx, msg); | ||
131 | - if (matched) { | 130 | + itemMatched = triggerState.process(ctx, msg); |
131 | + if (itemMatched) { | ||
132 | + matched = true; | ||
132 | detail.append(triggerState.getAlarmDetails()); | 133 | detail.append(triggerState.getAlarmDetails()); |
133 | if (this.alarmAction != null) { | 134 | if (this.alarmAction != null) { |
134 | noticeMsg(ctx, msg, alarmAction, deviceId, triggerState.getAlarmDetails(), triggerState.getLatestValues().getTs()); | 135 | noticeMsg(ctx, msg, alarmAction, deviceId, triggerState.getAlarmDetails(), triggerState.getLatestValues().getTs()); |