Module: Adafruit
- Defined in:
- lib/adafruit/io/mqtt.rb,
lib/adafruit/io.rb,
lib/adafruit/io/client.rb,
lib/adafruit/io/version.rb,
lib/adafruit/io/arguments.rb,
lib/adafruit/io/client/data.rb,
lib/adafruit/io/client/user.rb,
lib/adafruit/io/client/feeds.rb,
lib/adafruit/io/configurable.rb,
lib/adafruit/io/client/blocks.rb,
lib/adafruit/io/client/groups.rb,
lib/adafruit/io/client/tokens.rb,
lib/adafruit/io/client/triggers.rb,
lib/adafruit/io/request_handler.rb,
lib/adafruit/io/client/activities.rb,
lib/adafruit/io/client/dashboards.rb,
lib/adafruit/io/client/permissions.rb
Overview
Adafruit::IO::MQTT provides a simple Adafruit IO aware wrapper around the Ruby MQTT library at github.com/njh/ruby-mqtt.
Our primary goal is to provide basic MQTT access to feeds.
For example, publishing to a feed is as simple as:
mqtt = Adafruit::IO::MQTT.new user, key
mqtt.publish('feed-key', 1)
And subscribing to a feed is just as easy:
mqtt = Adafruit::IO::MQTT.new user, key
mqtt.subscribe('feed-key')
mqtt.get do |topic, value|
puts "GOT VALUE FROM #{topic}: #{value}"
end
If you need to access different MQTT endpoints or data formats (JSON, CSV) you can use the MQTT library directly:
mqtt = Adafruit::IO::MQTT.new user, key
mqtt.client.get("#{user}/groups/group-key/json") do |topic, |
payload = JSON.parse()
# etc...
end
Documentation for Ruby MQTT is available at www.rubydoc.info/gems/mqtt/MQTT/Client
Defined Under Namespace
Modules: IO