Description:

Subscribes to a topic and receives messages from an MQTT broker

Tags:

subscribe, MQTT, IOT, consume, listen

Properties:

In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property is considered “sensitive”.

Name Default Value Allowable Values Description
Broker URI The URI to use to connect to the MQTT broker (e.g. tcp://localhost:1883). The 'tcp' and 'ssl' schemes are supported. In order to use 'ssl', the SSL Context Service property must be set.
Client ID MQTT client ID to use
User Name Username to use when connecting to the broker
Password Password to use when connecting to the broker
SSL Context Service Controller Service API: </br> SSLContextService </br> Implementation: </br> StandardSSLContextService </br> The SSL Context Service used to provide client certificate information for TLS/SSL connections.
Last Will Topic The topic to send the client's Last Will to. If the Last Will topic and message are not set then a Last Will will not be sent.
Last Will Message The message to send as the client's Last Will. If the Last Will topic and message are not set then a Last Will will not be sent.
Last Will Retain * true
* false
Whether to retain the client's Last Will. If the Last Will topic and message are not set then a Last Will will not be sent.
Last Will QoS Level * 0 -
* 1 -
* 2 -
QoS level to be used when publishing the Last Will Message
Session state true * Clean Session
* Resume Session
Whether to start afresh or resume previous flows. See the allowable value descriptions for more details.
MQTT Specification Version 0 * AUTO
* v3.1.1
* v3.1.0
The MQTT specification version when connecting with the broker. See the allowable value descriptions for more details.
Connection Timeout (seconds) 30 Maximum time interval the client will wait for the network connection to the MQTT server to be established. The default timeout is 30 seconds. A value of 0 disables timeout processing meaning the client will wait until the network connection is made successfully or fails.
Keep Alive Interval (seconds) 60 Defines the maximum time interval between messages sent or received. It enables the client to detect if the server is no longer available, without having to wait for the TCP/IP timeout. The client will ensure that at least one message travels across the network within each keep alive period. In the absence of a data-related message during the time period, the client sends a very small "ping" message, which the server will acknowledge. A value of 0 disables keep alive processing in the client.
Topic Filter The MQTT topic filter to designate the topics to subscribe to.
Quality of Service(QoS) 0 0 -
1 -
2 -
The Quality of Service(QoS) to receive the message with. Accepts values '0', '1' or '2'; '0' for 'at most once', '1' for 'at least once', '2' for 'exactly once'.
Max Queue Size The MQTT messages are always being sent to subscribers on a topic. If the 'Run Schedule' is significantly behind the rate at which the messages are arriving to this processor then a back up can occur. This property specifies the maximum number of messages this processor will hold in memory at one time.

Relationships:

Name Description
Message The MQTT message output

Reads Attributes:

None specified.

Writes Attributes:

Name Description
mqtt.broker MQTT broker that was the message source
mqtt.topic MQTT topic on which message was received
nmqtt.qos The quality of service for this message.
mqtt.isDuplicate Whether or not this message might be a duplicate of one which has already been received.
mqtt.isRetained Whether or not this message was from a current publisher, or was "retained" by the server as the last message published on the topic.

State management:

This component does not store state.