This example adds additional fields to the model illustrated in B.1.2. This example does not use acknowledge or confirm – it assumes that the alarm is automatically acknowledged (and does not support confirm). It does add OutOfServiceState and SuppressedState.
Figure B.3 shows an Alarm as it becomes active, is suppressed or is placed out of service and then inactive. Table B.3 lists the values of the state Variables. All Events are coming from the same Condition instance and therefore have the same ConditionId. The Client subscription includes an event filter that excludes suppressed or out of service conditions (i.e. SuppressedState = True or OutOfServiceState = True). The events shown in green are delivered to the Client. The Retain column indicates the global value of the Retain flag. The “Retain sent” column indicates the overridden value sent in a notification if SupportsFilteredRetain is True. If SupportsFilteredRetain is False the value from the Retain column is sent.
Figure B.3 – SuppressedState and OutOfServiceState example
Table B.3 – Example of a Condition that is Suppressed / OutOfService
EventId |
Active |
Suppressed State |
OutOf Service State |
Retain |
Retain sent |
Event Deliver with Filter |
Description |
-*) |
False |
False |
False |
False |
False |
- |
Initial state of Condition. |
1 |
True |
False |
False |
True |
True |
Yes |
Alarm goes active. |
2 |
True |
False |
True |
True |
False |
Yes |
Placed OutOfService |
3 |
True |
True |
True |
True |
False |
No |
Alarm Suppressed; No event since OutOfService |
4 |
False |
True |
True |
False |
False |
No |
Alarm goes inactive; No event since OutOfService |
5 |
False |
False |
True |
False |
False |
No |
Alarm not Suppressed; No event since not active |
6 |
True |
False |
True |
True |
False |
No |
Alarm goes active; No event since OutOfService |
7 |
True |
False |
False |
True |
True |
Yes |
Alarm no longer OutOfService; Event generated |
8 |
False |
False |
False |
False |
False |
Yes |
Alarm goes inactive |
9 |
False |
True |
False |
False |
False |
No |
Alarm Suppressed; No event since not active |
10 |
True |
True |
False |
True |
False |
No |
Alarm goes active; No event since Suppressed |
11 |
False |
True |
False |
False |
False |
No |
Alarm goes inactive; No event since Suppressed |
12 |
False |
False |
False |
False |
False |
No |
Alarm no longer Suppressed |
13 |
False |
False |
True |
False |
False |
No |
Placed OutOfService |
14 |
True |
False |
True |
True |
False |
No |
Alarm goes active; No event since OutOfService |
15 |
False |
False |
True |
False |
False |
No |
Alarm goes inactive; No event since OutOfService |
16 |
False |
False |
False |
False |
False |
No |
Alarm no longer OutOfService |
This behaviour occurs when the implementation supports SupportsFilteredRetain flag subscription.