Supports Expression Language: true (will be evaluated using variable registry only)Client ID | | | MQTT client ID to use. If not set, a UUID will be generated. Supports Expression Language: true (will be evaluated using variable registry only) |
Username | | | Username to use when connecting to the broker Supports Expression Language: true (will be evaluated using variable registry only) |
Password | | | Password to use when connecting to the broker Sensitive Property: true |
SSL Context Service | | Controller Service API: SSLContextService Implementations: StandardSSLContextService StandardRestrictedSSLContextService | 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 | | | 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 - At most once
- 1 - At least once
- 2 - Exactly once
| 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 keepalive processing in the client. |
Group ID | | | MQTT consumer group ID to use. If group ID not set, client will connect as individual consumer. |
Topic Filter | | | The MQTT topic filter to designate the topics to subscribe to. Supports Expression Language: true (will be evaluated using variable registry only) |
Quality of Service (QoS) | 0 | - 0 - At most once
- 1 - At least once
- 2 - Exactly once
| 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 regardless of how frequently the processor is scheduled to run. If the 'Run Schedule' is significantly behind the rate at which the messages are arriving to this processor, then a back up can occur in the internal queue of this processor. This property specifies the maximum number of messages this processor will hold in memory at one time in the internal queue. This data would be lost in case of a NiFi restart. |
Record Reader | | Controller Service API: RecordReaderFactory Implementations: JsonPathReader AvroReader XMLReader WindowsEventLogReader ReaderLookup Syslog5424Reader GrokReader ScriptedReader CSVReader SyslogReader ParquetReader JsonTreeReader CEFReader | The Record Reader to use for received messages |
Record Writer | | Controller Service API: RecordSetWriterFactory Implementations: AvroRecordSetWriter ScriptedRecordSetWriter JsonRecordSetWriter ParquetRecordSetWriter RecordSetWriterLookup FreeFormTextRecordSetWriter XMLRecordSetWriter CSVRecordSetWriter | The Record Writer to use in order to serialize the data before writing it to a FlowFile |
Add attributes as fields | true | | If using the Records reader/writer and if setting this property to true, default fields are going to be added in each record: _topic, _qos, _isDuplicate, _isRetained. |
Message Demarcator | | | With this property, you have an option to output FlowFiles which contains multiple messages. This property allows you to provide a string (interpreted as UTF-8) to use for demarcating apart multiple messages. This is an optional property ; if not provided, and if not defining a Reader/Writer, each message received will result in a single FlowFile which. To enter special character such as 'new line' use CTRL+Enter or Shift+Enter depending on the OS. Supports Expression Language: true (will be evaluated using variable registry only) |
Relationships:
Name | Description |
---|
parse.failure | If a message cannot be parsed using the configured Record Reader, the contents of the message will be routed to this Relationship as its own individual FlowFile. |
Message | The MQTT message output |
Reads Attributes:
None specified.Writes Attributes:
Name | Description |
---|
record.count | The number of records received |
mqtt.broker | MQTT broker that was the message source |
mqtt.topic | MQTT topic on which message was received |
mqtt.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.Restricted:
This component is not restricted.Input requirement:
This component does not allow an incoming relationship.System Resource Considerations:
Resource | Description |
---|
MEMORY | The 'Max Queue Size' specifies the maximum number of messages that can be hold in memory by NiFi by a single instance of this processor. A high value for this property could represent a lot of data being stored in memory. |
See Also:
PublishMQTT