MQTT

MQTT

Scheme: mqtt

MQTT endpoint

Name Kind Type Required Deprecated Default Value Enum Values Description
name path java.lang.String true false A logical name to use which is not the topic name.
host parameter java.net.URI false tcp://127.0.0.1:1883 The URI of the MQTT broker to connect too - this component also supports SSL - e.g. ssl://127.0.0.1:8883
localAddress parameter java.net.URI false The local InetAddress and port to use
sslContext parameter javax.net.ssl.SSLContext false To configure security using SSLContext configuration
dispatchQueue parameter org.fusesource.hawtdispatch.DispatchQueue false A HawtDispatch dispatch queue is used to synchronize access to the connection. If an explicit queue is not configured via the setDispatchQueue method, then a new queue will be created for the connection. Setting an explicit queue might be handy if you want multiple connection to share the same queue for synchronization.
blockingExecutor parameter java.util.concurrent.Executor false SSL connections perform blocking operations against internal thread pool unless you call the setBlockingExecutor method to configure that executor they will use instead.
maxReadRate parameter int false Sets the maximum bytes per second that this transport will receive data at. This setting throttles reads so that the rate is not exceeded. Defaults to 0 which disables throttling.
maxWriteRate parameter int false Sets the maximum bytes per second that this transport will send data at. This setting throttles writes so that the rate is not exceeded. Defaults to 0 which disables throttling.
trafficClass parameter int false 8 Sets traffic class or type-of-service octet in the IP header for packets sent from the transport. Defaults to 8 which means the traffic should be optimized for throughput.
receiveBufferSize parameter int false 65536 Sets the size of the internal socket receive buffer. Defaults to 65536 (64k)
sendBufferSize parameter int false 65536 Sets the size of the internal socket send buffer. Defaults to 65536 (64k)
reconnectDelay parameter long false 10 How long to wait in ms before the first reconnect attempt. Defaults to 10.
reconnectDelayMax parameter long false 30000 The maximum amount of time in ms to wait between reconnect attempts. Defaults to 30,000.
reconnectBackOffMultiplier parameter double false 2.0 The Exponential backoff be used between reconnect attempts. Set to 1 to disable exponential backoff. Defaults to 2.
reconnectAttemptsMax parameter long false -1 The maximum number of reconnect attempts before an error is reported back to the client after a server connection had previously been established. Set to -1 to use unlimited attempts. Defaults to -1.
connectAttemptsMax parameter long false -1 The maximum number of reconnect attempts before an error is reported back to the client on the first attempt by the client to connect to a server. Set to -1 to use unlimited attempts. Defaults to -1.
clientId parameter java.lang.String false Use to set the client Id of the session. This is what an MQTT server uses to identify a session where setCleanSession(false); is being used. The id must be 23 characters or less. Defaults to auto generated id (based on your socket address, port and timestamp).
cleanSession parameter boolean false Set to false if you want the MQTT server to persist topic subscriptions and ack positions across client sessions. Defaults to true.
keepAlive parameter short false Configures the Keep Alive timer in seconds. Defines the maximum time interval between messages received from a client. It enables the server to detect that the network connection to a client has dropped, without having to wait for the long TCP/IP timeout.
willTopic parameter java.lang.String false If set the server will publish the client's Will message to the specified topics if the client has an unexpected disconnection.
willMessage parameter java.lang.String false The Will message to send. Defaults to a zero length message.
willQos parameter org.fusesource.mqtt.client.QoS false AT_MOST_ONCE AT_MOST_ONCE
AT_LEAST_ONCE
EXACTLY_ONCE
Sets the quality of service to use for the Will message. Defaults to AT_MOST_ONCE.
willRetain parameter org.fusesource.mqtt.client.QoS false AT_MOST_ONCE
AT_LEAST_ONCE
EXACTLY_ONCE
Set to true if you want the Will to be published with the retain option.
version parameter java.lang.String false 3.1 Set to 3.1.1 to use MQTT version 3.1.1. Otherwise defaults to the 3.1 protocol version.
mqttTopicPropertyName parameter java.lang.String false MQTTTopicPropertyName These a properties that are looked for in an Exchange - to publish to
mqttRetainPropertyName parameter java.lang.String false MQTTRetain The property name to look for on an Exchange for an individual published message. If this is set (expects a Boolean value) - then the retain property will be set on the message sent to the MQTT message broker.
mqttQosPropertyName parameter java.lang.String false MQTTQos The property name to look for on an Exchange for an individual published message. If this is set (one of AtMostOnce, AtLeastOnce or ExactlyOnce ) - then that QoS will be set on the message sent to the MQTT message broker.
subscribeTopicName parameter java.lang.String true These are set on the Endpoint - together with properties inherited from MQTT
subscribeTopicNames parameter java.lang.String false A comma-delimited list of Topics to subscribe to for messages. Note that each item of this list can contain MQTT wildcards (+ and/or #), in order to subscribe to topics matching a certain pattern within a hierarchy. For example, + is a wildcard for all topics at a level within the hierarchy, so if a broker has topics topics/one and topics/two, then topics/+ can be used to subscribe to both. A caveat to consider here is that if the broker adds topics/three, the route would also begin to receive messages from that topic.
publishTopicName parameter java.lang.String false camel/mqtt/test The default Topic to publish messages on
connectWaitInSeconds parameter int false 10 Delay in seconds the Component will wait for a connection to be established to the MQTT broker
disconnectWaitInSeconds parameter int false 5 The number of seconds the Component will wait for a valid disconnect on stop() from the MQTT broker
sendWaitInSeconds parameter int false 5 The maximum time the Component will wait for a receipt from the MQTT broker to acknowledge a published message before throwing an exception
byDefaultRetain parameter boolean false The default retain policy to be used on messages sent to the MQTT broker
qualityOfService parameter java.lang.String false AT_LEAST_ONCE AT_MOST_ONCE
AT_LEAST_ONCE
EXACTLY_ONCE
Quality of service level to use for topics.
exchangePattern parameter org.apache.camel.ExchangePattern false InOnly InOnly
RobustInOnly
InOut
InOptionalOut
OutOnly
RobustOutOnly
OutIn
OutOptionalIn
Sets the default exchange pattern when creating an exchange
synchronous parameter boolean false false Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported).

mqtt consumer