Wednesday 3 October 2012

RabbitHub Plug-in for PubSubHubBub Released



Overview

RabbitHub is a RabbitMQ plugin-based implementation of PubSubHubBub (a simple web-hook-based pub/sub protocol) that provides an HTTP-based interface to RabbitMQ. It gives every AMQP exchange and queue hosted by the broker two URL’s: one to use for delivering messages to the exchange or queue, and one to use to subscribe to messages forwarded on by the exchange or queue. Subscriptions supply a callback URL to RabbitHub that is used to deliver messages via HTTP POST. While the initial aim of the plugin was support for PubSubHubBub, the plugin provides a generally useful, easy to use, and efficient means of interacting with RabbitMQ in a RESTful manner. When used in combination with other plugins such as those for STOMP, WebSockets, and MQTT, the result is an extremely powerful and flexible messaging solution. Messages may be published via one protocol and consumed by another (or indeed by multiple protocols when messages are published to fanout or topic exchanges).

RabbitHub was originally written by Tony Garnock-Jones (one of the original members of the RabbitMQ team) in 2009; however RabbitMQ has evolved considerably since this time, and it has been necessary to update the code in order for it to work with current RabbitMQ versions. The updated code and 
additional notes can be found at https://github.com/tonyg/rabbithub, and the binary distribution (which also happens to include the sources) can be found here.

The complete installation and user guide may be found here
If you would like pre-built kit, please send an email to brett.r.cameron AT gmail.com and johndapps AT gmail.com and we will be happy to oblige.

More on B&J's work may be found on their homepage.