Each JSON formatted messages which may be received from the Cloud Injector Modules include a Topic and Payload.
The Topic contains the following key/value pairs:
- namespace
- edgeNodeDescriptor
- The combination of the Group ID and Edge Node ID which provides a unique identifier for the Edge Node
- groupId
- edgeNodeId
- deviceId
- type
- Message type including:
- NBIRTH
- DBIRTH
- DDATA
- NDEATH
- DDEATH
Note |
---|
The deviceId is only included for the device level message types of DBIRTH, DDATA and DDEATH |
![](/download/attachments/103179617/image%20%2828%29.png?version=1&modificationDate=1656536177007&api=v2)
NBIRTHThe Edge Node BIRTH message will contain the following:a Topic and Payload:
- Topic
- Namespace
- Edge Node Descriptor
- Group ID
- Edge Node ID
- Message Type
- Payload
- The Sparkplug elements: Namespace, Group ID, Edge Node ID. They will be grouped under "topic" along with Edge Node Descriptor and Message Type
- A "timestamp"
- for when the payload was constructed
- Metrics - array containing
"bdSeq" - Birth/Death sequence number to track the
"" Tag Agent- Edge client
- Any Edge Node tags defined in the Edge Node folder
(in our example we have none).A
Code Block |
---|
title | Edge Node Birth message |
---|
|
{
"topic": {
"namespace": "spBv1.0",
"edgeNodeDescriptor": "G1/E1",
"groupId": "G1",
"edgeNodeId": "E1"
"type": "NBIRTH"
},
"payload": {
"timestamp": 1638223073190,
"metrics": [
{
"name": "bdSeq",
"timestamp": 1638223073187,
"dataType": "Int64",
"value": 05
}
],
"seq": 0
}
} |
DBIRTHThe Device BIRTH message will contain the following:
- The Sparkplug elements: Namespace, Group ID, Edge Node ID, Device ID. They will be grouped under "topic" along with Message Type
- A "timestamp" for when the payload was constructed
- Any Device tags defined in the Device folder
- A message sequence number
Code Block |
---|
title | Device BIRTH message |
---|
|
{
"topic": {
"namespace": "spBv1.0",
"edgeNodeDescriptor": "G1/E1",
"groupId": "G1",
"edgeNodeId": "E1",
"deviceId": "D1",
"type": "DBIRTH"
},
"payload": {
"timestamp": 1638223073192,
"metrics": [
{
"name": "T1",
"timestamp": 1638223073192,
"dataType": "Int32",
"metaData": {},
"properties": {
"Quality": {
"type": "Int32",
"value": 192
}
},
"value": 12
}
],
"seq": 1
}
} |
DDATAThe Device DDATA message will contain the following:
- The Sparkplug elements: Namespace, Group ID, Edge Node ID, Device ID. They will be grouped under "topic" along with Message Type
- A "timestamp" for when the payload was constructed
- Any Device tags defined in the "Device folder that have changed
- A message sequence number
Code Block |
---|
|
{
"topic": {
"namespace": "spBv1.0",
"edgeNodeDescriptor": "G1/E1",
"groupId": "G1",
"edgeNodeId": "E1",
"deviceId": "D1"
"type": "DDATA"
},
"payload": {
"timestamp": 1638223663812,
"metrics": [
{
"name": "T1",
"timestamp": 1638223662800,
"dataType": "INT32",
"value": 100
}
],
"seq": 2
}
} |
NDEATH
DDEATH
Understanding and decoding Ignition QualityCodes
...