Chapter 3 Event Monitoring
Event | Description | Message |
|
|
|
ADU.end | The ADU has been terminated. The server | All of the data elements in the |
| passes an ADU.end message to all | ADU. |
| monitoring applications. |
|
|
|
|
ADU.transfer | The ADU has been transferred. | The new client and the |
|
| ADUID. (Note that ADUs are |
|
| not generally transferred. This |
|
| event is relatively rare.) |
|
|
|
ADU.watch | The ADU matches the monitoring criteria. | All of the data elements in the |
|
| ADU. |
|
|
|
|
| (Sheet 2 of 2) |
|
|
|
When a client first assigns monitoring criteria to the server:
All existing ADUs are checked to see if any match the specification. All subsequently created ADUs are checked for a match.
Any ADUs that do match the criteria are placed under watch and an ADU.Watch event
message is sent to the monitoring application.
Changes to ADUs under watch are reported to the application by an ADU.Change event.
Note: When a client has assigned to the ADU Server, it should monitor the event data stream for the data it wants, rather than invoking ADU.Get…() methods repeatedly.
As values are set in the ADU, the ADU Server sends Change events to assigned clients. The timing, order, and content of the Change events depend on the components setting the values, are is therefore variable.
Starting and Stopping Event Monitoring
The ADU Server methods ADU.Assign() and ADU.Monitor() let you set up monitoring conditions. The method ADU.Deassign() lets you revoke them.
By default, a client does not receive change events for the ADU changes that it itself initiates. This cuts down on needless event traffic. It does receive other sorts of events, as well as event messages for changes caused by other clients. If the change causes a .Watch or .Drop event, it is reported to the client. To receive change events for the client's own changes, prefix the Assign or Monitor expression with a plus symbol (+):
For example:
[ADU.Assign("+*")]
(The asterisk (*) in the example indicates that all ADUs in the local ADU Server should be monitored.)