MQTT Engine Default Namespaces are used to provide support for Sparkplug compliant MQTT messages. Each namespace configuration represents a family of devices and/or data that MQTT Engine will support. A namespace defines the topics that each MQTT Engine client will subscribe on as well as indicates how the payload will be handled.
The default namespaces are provided out of the box and can be simple enabled or disabled.
Name | Namespace Type | Topic Subscriptions |
---|---|---|
Elecsys | Elecsys | tags/#, RBE/#, JPG/#, sys/# and cmd/# |
Sparkplug A | SparkplugA | spAv1.0/# |
Sparkplug B | SparkplugB | spBv1.0/# |
Xirgo | Xirgo | +/LSD/# |
The Sparkplug Specification fully defines the payload definition and components and uses Google Protocol Buffers, referred to as Google Protobufs, as the data payload encoding method.
Below are examples of the payloads by message type:
Message Type | Topic Example | Payload Example |
---|---|---|
NBIRTH | spBv1.0/Facility1/NBIRTH/PLC1 | {"timestamp":1644444653413,"metrics":[{"name":"Sine0","timestamp":1644444653413,"dataType":"Int32","metaData":{"contentType":"","size":0,"seq":0,"fileName":"","fileType":"","md5":"","description":""},"properties":{"Quality":{"type":"Int32","value":192}},"value":-49},{"name":"Node Control/Next Server","timestamp":1644444653414,"dataType":"Boolean","value":false},{"name":"Sine 1","timestamp":1644444653413,"dataType":"Int32","metaData":{"contentType":"","size":0,"seq":0,"fileName":"","fileType":"","md5":"","description":""},"properties":{"Quality":{"type":"Int32","value":192}},"value":318},{"name":"Node Info/Transmission Version","timestamp":1644444653414,"dataType":"String","value":"4.0.10 (b2022020721)"},{"name":"bdSeq","timestamp":1644444653413,"dataType":"Int64","value":14},{"name":"Node Control/Rebirth","timestamp":1644444653414,"dataType":"Boolean","value":false}],"seq":0} |
NDEATH | spBv1.0/Facility1/NDEATH/PLC1 | {"timestamp":1644444569832,"metrics":[{"name":"bdSeq","timestamp":1644444569832,"dataType":"Int64","value":13}],"seq":0} |
NDATA | spBv1.0/Facility1/NDATA/PLC1 | {"timestamp":1644444657313,"metrics":[{"name":"Sine0","timestamp":1644444655728,"dataType":"Int32","value":-48},{"name":"Sine 1","timestamp":1644444655728,"dataType":"Int32","value":319}],"seq":1} {"timestamp":1644444661355,"metrics":[{"name":"Sine0","timestamp":1644444659744,"dataType":"Int32","value":-47}],"seq":3} |
STATUS | spBv1.0/STATE/primary_host_id | { "online" : true, "timestamp" : 1668114759262} { "online" : false, "timestamp" : 1668114759262} |
STATUS (Legacy) | STATE/primary_host_id | ONLINE OFFLINE |
See MQTT Engine Custom Namespaces for managing support for generic, non Sparkplug compliant MQTT messages with string based payloads. |