A NetworkMessage with MessageType Status is a JSON object with the fields defined in Table 168.
Table 168 – JSON Status definition
Name |
Type |
Description |
MessageId |
String |
A globally unique identifier for the message. This value is mandatory. |
MessageType |
String |
This value shall be “ua-status”. This value is mandatory. |
PublisherId |
String |
The Publisher that sent the message. This value is mandatory. |
Timestamp |
UtcTime |
When the message was sent to the Middleware. Mandatory if IsCyclic=TRUE. The field is omitted if IsCyclic=FALSE. |
IsCyclic |
Boolean |
If TRUE the Publisher periodically updates the status. If FALSE the Middleware is responsible for detecting changes to the status. |
Status |
PubSubState |
The current state of the Publisher. This value is mandatory. |
NextReportTime |
UtcTime |
When the Publisher is expected to send the next update. Mandatory if IsCyclic=TRUE. The field is omitted if IsCyclic=FALSE. |
IsCyclic is set to FALSE if a PublisherId is used exclusively by a single application and the Message Oriented Middleware can detect when Publishers go offline. In these cases, the Publisher sends updates only when its state changes and the Message Oriented Middleware will send an update with PubSubState Error if the Publisher goes offline. The status message from the Message Oriented Middleware does not contain the Timestamp.
If IsCyclic is set to TRUE the Publisher only reports when it is Operational. The NextReportTime indicates when the Publisher is expected to send an update. If the Subscriber does not receive updates and the NextReportTime is a reasonable time in the past, the Subscriber assumes the PubSubState Error.