This article describes the aspects and parts of the Rapid Toolkit for Sparkplug data model that are used when developing consumers (Sparkplug host applications).
The Sparkplug consumer object is represented by the EasySparkplugConsumer Class. It is a Sparkplug communication object that allows simple access to data from Sparkplug edge nodes. With this object, your code can subscribe to Sparkplug metrics, and/or publish commands.
The main members that constitute the functionality of the EasySparkplugConsumer Class are actually implementations of IEasySparkplugConsumer Interface. There also many other methods and method overloads, which simply build upon the core interface methods, and they are implemented as extension methods on the interface. Also, at many places, arguments and properties are used that accept one of the IEasySparkplugConsumer Interface instead of a concrete component (EasySparkplugConsumer Class).
Sparkplug consumer descriptors are Sparplug descriptors (see Common Data Model For Sparkplug) used with the Sparkplug consumer.
The Sparkplug edge node descriptor is commonly used to specify the edge node for subscription or publication. It is represented by the SparkplugEdgeNodeDescriptor Class which has two principal properties: The GroupId Property, which contains the Sparkplug group ID of the edge node, and the EdgeNodeId Property, which contains the Sparkplug edge node ID. Each of these properties can contain a specific ID string, or a filter such as "#" ("#" denotes "any ID").
The Sparkplug device descriptor is commonly used to describe the device (in a Sparkplug edge node) for subscription or publication. It is represented by the SparkplugDeviceDescriptor Class, and in addition to the properties of its base SparkplugEdgeNodeDescriptor Class, it has one additional principal property: The DeviceId Property, which contains the Sparkplug device ID of the device. This property can contain a specific ID string, or a filter such as "#" ("#" denotes "any ID").
Sparkplug is a trademark of Eclipse Foundation, Inc. "MQTT" is a trademark of the OASIS Open standards consortium. Other related terms are trademarks of their respective owners. Any use of these terms on this site is for descriptive purposes only and does not imply any sponsorship, endorsement or affiliation.