MQ Telemetry Transport is a publish-subscribe pattern-based "lightweight" messaging protocol. The protocol is often used in the IoT (Internet of Things) world of connected devices. It is designed for built-in systems, mobile phones, and other memory and bandwidth sensitive applications.
CloudAMQP does recommend the AMQP protocol in favor of the MQTT protocol.
MQTT provides an asynchronous communications protocol; the sender and receiver of the message do not need to interact with the message queue, the topic, at the same time. Messages placed onto the topic are stored until the recipient retrieves them or the messages time out. MQTT is for good use by bandwidth-sensitive applications.
The MQTT plugin is available on dedicated plans and the new shared servers in AWS US-East-1, GCE Europe West, GCE US Central, and GCE Asia East.
The MQTT plugin needs to be enabled on dedicated plans. Activate the plugin from the
The port used for MQTT is 1883 (8883 for TLS wrapped MQTT). Use the same default username and
password as for AMQP. When signing in, add the vhost to the username. The vhost is the same as
the username for shared plans:
QoS 1 is supported (if you are setting QoS 2, it will downgrade to QoS 1).
Learn more about MQTT for RabbitMQ in the official documentation: RabbitMQ MQTT Plugin
Example when using mosquitto and TLS on shared instances:
//Subscribe mosquitto_sub -h hostname -d -t topic -u my_vhost:my_username -P my_password -c -i test1 -q 1 --cafile /usr/local/etc/openssl/cert.pem -p 8883 //Publish mosquitto_pub -h hostname -d -m message -t topic -u my_vhost:my_username -P password
If you have any questions, please feel free to contact email@example.com for further assistance.