receiveFromMqtt

Source processor that consumes messages from an MQTT broker.

Processor creates an async MQTT client to receive messages. Messages will not be acknowledged to the broker until they have been successfully persisted in the source processor. All messages are delivered as byte strings with a Quality of Service (QoS) level of 1, which means a guarantee of "at least once" delivery.

Properties

Name Summary

topic()

Adds a topic name to a list of topics that the client will subscribe to. At least one topic is required. MQTT also supports wildcard notation to subscribe to multiple topics. For example: main/topic/# or main/topic/+/sublevel. See the MQTT specs for more info.

mqttBrokerUrl

URL to the MQTT broker. Typically, MQTT supports TCP and SSL protocols. For example: tcp://localhost:port or ssl://localhost:port. Required.

authenticationConfigKey

Key from the server configuration used to look up the credentials needed to connect to the MQTT broker. Optional and uses no authentication by default.

durableSubscription

Whether the client and server should remember state across restarts and reconnects. Optional and defaults to true, meaning the server will treat a subscription as durable and resend any non-ACKed messages after reconnection.

maxInFlight

Maximum amount of unconfirmed MQTT messages. Optional and defaults to 10.

connectionTimeoutMillis

Connection timeout value. Optional.

receiveTimeoutMillis

Socket timeout value. Optional.

name

Optional, descriptive name for the processor.

id

Required identifier of the processor, unique across all processors within the flow. Must be between 3 and 30 characters long; contain only lower and uppercase alphabetical characters (a-z and A-Z), numbers, dashes ("-"), and underscores ("_"); and start with an alphabetical character. In other words, it adheres to the regex pattern [a-zA-Z][a-zA-Z0-9_-]{2,29}.

exchangeProperties

Optional set of custom properties in a simple jdk-format, that are added to the message exchange properties before processing the incoming payload. Any existing properties with the same name will be replaced by properties defined here.

retainPayloadOnFailure

Whether the incoming payload is available for error processing on failure. Defaults to false.

Sub-builders

Name Summary

externalSystemDetails

Strategy for describing the external system integration. Optional.

messageLoggingStrategy

Strategy for describing how a processor’s message is logged on the server.

payloadArchivingStrategy

Strategy for archiving payloads.

inboundTransformationStrategy

Strategy that customizes the conversion of an incoming payload by a processor (e.g., string to object). Should be used when the processor’s default conversion logic cannot be used.

Details

Authentication

The authenticationConfigKey property supports secrets of type UserNameAndPassword. See the Secret Types documentation for formatting details.