MQTT

MQTT

Scheme: mqtt
Syntax: mqtt:name
Description: Component for communicating with MQTT M2M message brokers using FuseSource MQTT Client.
Deprecated:false
Async:true
Maven: org.apache.camel/camel-mqtt/2.18.1.redhat-000040

Component for communicating with MQTT M2M message brokers using FuseSource MQTT Client.

Name Kind Group Required Default Type Enum Description
name path common true java.lang.String A logical name to use which is not the topic name.
blockingExecutor parameter common java.util.concurrent.Executor SSL connections perform blocking operations against internal thread pool unless you call the setBlockingExecutor method to configure that executor they will use instead.
byDefaultRetain parameter common boolean The default retain policy to be used on messages sent to the MQTT broker
cleanSession parameter common boolean Set to false if you want the MQTT server to persist topic subscriptions and ack positions across client sessions. Defaults to true.
clientId parameter common java.lang.String 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).
connectAttemptsMax parameter common -1 long 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.
connectWaitInSeconds parameter common 10 int Delay in seconds the Component will wait for a connection to be established to the MQTT broker
disconnectWaitInSeconds parameter common 5 int The number of seconds the Component will wait for a valid disconnect on stop() from the MQTT broker
dispatchQueue parameter common org.fusesource.hawtdispatch.DispatchQueue 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.
host parameter common tcp://127.0.0.1:1883 java.net.URI The URI of the MQTT broker to connect too - this component also supports SSL - e.g. ssl://127.0.0.1:8883
keepAlive parameter common short 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.
localAddress parameter common java.net.URI The local InetAddress and port to use
maxReadRate parameter common int 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 common int 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.
mqttQosPropertyName parameter common MQTTQos java.lang.String 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.
mqttRetainPropertyName parameter common MQTTRetain java.lang.String 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.
mqttTopicPropertyName parameter common MQTTTopicPropertyName java.lang.String These a properties that are looked for in an Exchange - to publish to
publishTopicName parameter common camel/mqtt/test java.lang.String The default Topic to publish messages on
qualityOfService parameter common AtLeastOnce java.lang.String AtMostOnce
AtLeastOne
ExactlyOnce
Quality of service level to use for topics.
receiveBufferSize parameter common 65536 int Sets the size of the internal socket receive buffer. Defaults to 65536 (64k)
reconnectAttemptsMax parameter common -1 long 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.
reconnectBackOffMultiplier parameter common 2.0 double The Exponential backoff be used between reconnect attempts. Set to 1 to disable exponential backoff. Defaults to 2.
reconnectDelay parameter common 10 long How long to wait in ms before the first reconnect attempt. Defaults to 10.
reconnectDelayMax parameter common 30000 long The maximum amount of time in ms to wait between reconnect attempts. Defaults to 30,000.
sendBufferSize parameter common 65536 int Sets the size of the internal socket send buffer. Defaults to 65536 (64k)
sendWaitInSeconds parameter common 5 int The maximum time the Component will wait for a receipt from the MQTT broker to acknowledge a published message before throwing an exception
sslContext parameter common javax.net.ssl.SSLContext To configure security using SSLContext configuration
subscribeTopicName parameter common java.lang.String These are set on the Endpoint - together with properties inherited from MQTT
subscribeTopicNames parameter common java.lang.String 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.
trafficClass parameter common 8 int 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.
version parameter common 3.1 java.lang.String Set to 3.1.1 to use MQTT version 3.1.1. Otherwise defaults to the 3.1 protocol version.
willMessage parameter common java.lang.String The Will message to send. Defaults to a zero length message.
willQos parameter common AtMostOnce org.fusesource.mqtt.client.QoS AtMostOnce
AtLeastOne
ExactlyOnce
Sets the quality of service to use for the Will message. Defaults to AT_MOST_ONCE.
willRetain parameter common org.fusesource.mqtt.client.QoS AT_MOST_ONCE
AT_LEAST_ONCE
EXACTLY_ONCE
Set to true if you want the Will to be published with the retain option.
willTopic parameter common java.lang.String If set the server will publish the client's Will message to the specified topics if the client has an unexpected disconnection.
bridgeErrorHandler parameter consumer boolean Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN/ERROR level and ignored.
exceptionHandler parameter consumer (advanced) org.apache.camel.spi.ExceptionHandler To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this options is not in use. By default the consumer will deal with exceptions, that will be logged at WARN/ERROR level and ignored.
exchangePattern parameter consumer (advanced) org.apache.camel.ExchangePattern InOnly
RobustInOnly
InOut
InOptionalOut
OutOnly
RobustOutOnly
OutIn
OutOptionalIn
Sets the exchange pattern when the consumer creates an exchange.
synchronous parameter advanced false boolean Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported).

mqtt consumer