public
Description: Another synchronous Ruby AMQP client
Homepage: http://wiki.github.com/celldee/bunny
Clone URL: git://github.com/celldee/bunny.git
bunny /
name age message
file .gitignore Mon Sep 07 04:15:53 -0700 2009 Reverse previous change to .gitignore [celldee]
file LICENSE Mon Apr 20 04:40:30 -0700 2009 Amend README and add LICENSE [celldee]
file README.rdoc Sun Dec 13 12:48:05 -0800 2009 Amend the README.rdoc [celldee]
file Rakefile Fri Jun 26 00:35:44 -0700 2009 Modifications to accommodate AMQP 0-9-1 [celldee]
file bunny.gemspec Mon Oct 05 07:43:21 -0700 2009 Release v0.6.0 [celldee]
directory examples/ Sun Sep 13 17:38:24 -0700 2009 Add Subscription classes and improve Queue#pop/... [celldee]
directory ext/ Sun Dec 13 12:42:28 -0800 2009 Changes to make Bunny comply with the DFSG (Deb... [celldee]
directory lib/ Sun Dec 13 12:42:28 -0800 2009 Changes to make Bunny comply with the DFSG (Deb... [celldee]
directory spec/ Mon Sep 21 01:25:04 -0700 2009 Change Client#returned_message to handle messag... [celldee]
README.rdoc

Bunny: A synchronous Ruby AMQP client

GitHub repo: github.com/celldee/bunny

Rubyforge: rubyforge.org/projects/bunny-amqp

Twitter: twitter.com/bunny_amqp

Google Group: groups.google.com/group/bunny-amqp

Blog: bunnyamqp.wordpress.com

DESCRIPTION:

Bunny is an AMQP (Advanced Message Queuing Protocol) client, written in Ruby, that is intended to allow you to interact with AMQP-compliant message brokers/servers such as RabbitMQ in a synchronous fashion.

It is based on a great deal of useful code from amqp by Aman Gupta and Carrot by Amos Elliston.

You can use Bunny to -

  • Create and delete exchanges
  • Create and delete queues
  • Publish and consume messages

Bunny is known to work with RabbitMQ versions 1.5.4 and above with version 0-8 of the AMQP specification.

INSTALL:

Rubyforge: gem install bunny

Gemcutter: gem install bunny

GitHub: Current gem is not available.

QUICK START:

   require 'bunny'

   b = Bunny.new(:logging => true)

   # start a communication session with the amqp server
   b.start

   # declare a queue
   q = b.queue('test1')

   # publish a message to the queue
   q.publish('Hello everybody!')

   # get message from the queue
   msg = q.pop[:payload]

   puts 'This is the message: ' + msg + "\n\n"

   # close the connection
   b.stop

EVEN QUICKER START

   require 'bunny'

   # Create a direct queue named 'my_testq'
   Bunny.run { |c| c.queue('my_testq') }

OTHER:

Please see the examples directory for additional usage information.