About amq-protocol.

amq-protocol is an AMQP 0.9.1 serialization library for Ruby. It is not an AMQP client: amq-protocol only handles serialization and deserialization. If you want to write your own AMQP client, this gem can help you with that.

How does amq-protocol relate to amqp gem, amq-client and libraries like bunny?

See this page about AMQP gems family

Installation

If you use Bundler and want to use the very latest version, add this to your Gemfile:


gem 'amq-protocol', :git => 'https://github.com/ruby-amqp/amq-protocol.git'

Development

Inspection

If you need to see what AMQP methods are encoded, just regenerate the protocol file using ./tasks.rb generate --development and then set $DEBUG to true for which parts of code you want to see the debug statements.

Nightly Builds

You can always find nightly builds at gems.101ideas.cz.

You can install them thusly:


wget http://gems.101ideas.cz/amq-protocol-nightly.gem
gem install amq-protocol-nightly.gem

Contributing

If you want to change some code, don’t edit lib/amq/protocol/client.rb — that file is generated from protocol.rb.pytemplate which is a template file used by codegen.py. You can re-generate by running

nake ./tasks.rb generate
Please note that nake gem only runs on Ruby 1.9.2.

Links