This page contains information about the MQTT TagProvider. It provides access to standard MQTT data, as well automatically parsing data using the SparkplugB specification. MQTT TagProvider allow you to dynamically connect to MQTT brokers at runtime. This allows the integration and visualization of data and other components of your application without the need to create local Tags.
On this page:
Configuration
To set up MQTTspB as an External Tags source, navigate to Unified Namespaces → External TagProviders and select the MQTT Message Queuing Telemetry Transport.
Field | Description |
---|---|
Provider | Specifies the system the TagProvider will interface with. In this case, it interfaces with the MQTT Message Queuing Telemetry Transport. |
Access Mode | Determines permissions for interacting with tags. Read allows data reading. Write permits data writing. ReadWrite enables both reading and writing. |
Name | User-defined name for the TagProvider instance. Identifies the specific configuration in the system. |
Description | Explains the TagProvider's purpose or the systems it interfaces with. Provides context for its usage. |
ProtocolOptions | Defines specific communication settings for the connection to the device. |
Connection | Defines connection settings for the MQTT broker, including broker URL, port, client ID, username, password, and security options. |
The Test button verifies the connection settings to ensure successful communication with the specified broker.
Field | Description |
---|---|
BrokerURL | Specifies the URL of the MQTT broker. |
Port | Sets the port number used for communication with the MQTT broker. |
ClientID | Unique identifier for the client connecting to the MQTT broker. |
UserName | Specifies the username for authentication with the MQTT broker. |
Password | Specifies the password for authentication with the MQTT broker. |
X509Certificate | Specifies the X.509 certificate for secure communication with the MQTT broker. |
X509Certificate Password | Specifies the password for the X.509 certificate. |
Network Security | Specifies the security protocol used (e.g., None, SSL, TLS). Determines the encryption level for the connection. Network security options include: None: No encryption or protocols are applied. This option is suitable for secure or isolated networks but risky in public settings. TLS 1.0: An early TLS version that enhances SSL 3.0 security. However, it is now outdated and vulnerable to attacks like POODLE and BEAST. It is generally discouraged. TLS 1.1: An improvement over TLS 1.0, addressing initialization vector issues. However, it remains outdated and susceptible to attacks, with limited support for new standards. TLS 1.2: Offers significant security upgrades, supporting modern cryptographic algorithms like AEAD ciphers. It ensures data confidentiality and integrity. TLS 1.2 is the recommended secure protocol for network communications until TLS 1.3 sees wider adoption. |
WebSocket | Enables WebSocket protocol for communication with the MQTT broker. |
Collector ID | Specifies the collector ID for identifying the data source. |
QoS | Defines the Quality of Service level for message delivery. Options include: AtMostOnce: Ensures that each message is delivered at least once to the receiver. This level may result in duplicate messages but guarantees that no message is lost. AtLeastOnce: Guarantees that a message is delivered at most once, meaning it might not be delivered at all. This level is suitable for scenarios where occasional message loss is acceptable but duplicate messages are not. ExactlyOnce: Ensures that each message is delivered exactly once. This is the highest level of service, preventing both message loss and duplication, but it incurs the highest overhead. |
KeepAlive (sec.) | Sets the keep-alive interval in seconds for maintaining the connection to the MQTT broker. |
Report Out Of Range By Exception | Enables reporting only when data goes out of the expected range, reducing network traffic. |
ConnectionString | Displays the full connection string used to connect to the MQTT broker. Provides a summary of all connection parameters. |
Configuration
To configure this Protocol as a ExternalTags, go to Unified Namespace → External TagProviders and create a new provider for MQTT - Message Queuing Telemetry Transport - Collector.
The configuration includes:
Access Mode: Defines the mode of access for the MQTT connection. The options are Read, Write and ReadWrite.
For the broker configuration:
BrokerURL: The URL or IP address of the MQTT broker. Default is
localhost
.Port: The port number on which the MQTT broker is running. The default is 1883 for no encryption and 8883 for SSL/TLS security.
ClientID: A unique identifier for the MQTT client connecting to the broker (if required).
Username: Username credential for authenticating with the MQTT broker (if required).
Password: Password credential for authenticating with the MQTT broker (if required).
X509Certificate: If using certificate-based authentication, this is where the path of the X.509 certificate is specified.
CertificatePassword: The password to unlock the provided X.509 certificate (if it's password-protected).
On Assets Tree page, you can see the external tags imported from MQTT .
In this section: