RoboMQ has rich library of examples code in multiple programming languages supporting AMQP, MQTT and STOMP protocols. The SDK includes example code for multiple Messaging Integration Patterns (MEPs). All examples have implemented automatic reconnecting, which is crucial in real production.

Supported protocols

You can send and receive messages using RoboMQ platform from a choice of AMQP AMQP, MQTT and STOMP protocols.

Each of the protocols can be used for variety of messaging integration patterns. MQTT and STOMP, being relatively light weight protocol, are ideal for small footprint devices. AMQP could be the protocol of choice for more capable applications and enterprise systems.

AMQP use cases

Following use cases using AMQP protocols are documented with code on the RoboMQ GitHub.

  1. One-to-one or direct messaging : point to point message transportation

  2. Broadcast : sending messages to all subscribed consumers

  3. Key based routing : routing messages to consumer based on key based subscription

  4. Filter based routing (Topic) : routing messages based on complex filter rules applied to routing keys

  5. Request and reply : two way request reply communication

MQTT use cases

MQTT (Message Queues for Telemetry Transport) is lighter weight protocol for device specific use cases supporting pub-sub messaging pattern. MQTT code examples are on RoboMQ GitHub

STOMP use cases

STOMP (Simple Text Oriented Messaging Protocol) is a HTTP like simple protocol and can be used for variety of use cases with very little programming. STOMP code examples are on RoboMQ GitHub

Other use cases

WebSTOMP

WebSTOMP is a simple bridge exposing the STOMP protocol over emulated HTML5 WebSockets, which makes it possible to use RoboMQ from web browsers. WebSTOMP code examples are on RoboMQ GitHub

SSL SSL

RoboMQ has obtained certificate from certificate authority and supports SSL connection for all available protocols. SSL code examples are on RoboMQ GitHub

Supported programming languages

RoboMQ supports majority of the programming languages. For most programming languages, the client side libraries exists for AMPQ, MQTT and STOMP protocols. The SDK on GitHub contains examples in Python, Node.js, PHP, Java, C and C++. We continue to add examples in additional languages.