Paho
The Eclipse Paho project provides a set of clients for the MQTT v3 protocol (C/C++, Java, JavaScript, Python, Go and .NET) which implement more advanced features, like asynchronous pub/sub or QoS 2.
Unfortunately, there isn't an implementation specific for Ruby and the only Ruby gem that implements a similar client is Nicholas Humfrey's ruby-mqtt, which does not offer QoS 2.
The aim of this project is to provide a Ruby interface for the Paho implementations (the Java client for JRuby and the C/C++ client for MRI/Rubinius).
This project is not associated in any way with the Eclipse Paho project
Installation
Currently the only supported platform is JRuby
You may get the latest version from Rubygems:
$ gem install paho
You can also add it to your application's Gemfile:
gem 'paho'
... and then execute bundle
to install.
Usage
Before going any further, it's important to mention that the Java library does
not offer a synchronous client (the regular client actually implements
MqttAsyncClient
).
processor = Paho::Processor::Base.new
Paho::Proxy.subscribe(processor)
Development
After checking out the repo, run bin/setup
to install dependencies. Then, run
bin/console
for an interactive prompt that will allow you to experiment.
Contributing
- Fork it ( https://github.com/andreimaxim/paho/fork )
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request