Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
ducksboard ruby gem
Ruby
branch: master

This branch is 3 commits ahead, 12 commits behind jhsu:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
.gitignore
Gemfile
LICENSE
README.mdown
ducksboard.gemspec

README.mdown

Ducksboard API Ruby wrapper

Configuration

API Key can be set in the environment

export DUCKSBOARD_API_KEY='YOURKEY'

or in an initializer

Ducksboard.api_key = 'YOURKEY'

Box

widget = Ducksboard::Box.new(1234) # Widget numeric id
widget.value = 10
widget.save

Counter

widget = Ducksboard::Counter.new(1234)
widget.value = 10
widget.save

Image

widget = Ducksboard::Image.new(1235)
widget.source = "https://dashboard.ducksboard.com/static/accounts/img/logo_small.png"
# or
widget.source = "~/Pictures/logo.png"
widget.caption = "Ducksboard logo!"
widget.timestamp = 1310649204
widget.save

Gauge

widget = Ducksboard::Gauge.new(1235)
widget.value = 0.93
widget.save

Graph

# remember that the graph widgets need atleast 2 points before it displays anything
widget = Ducksboard::Graph.new(1236)
widget.timestamp = Time.now.to_i
widget.value = 198
widget.save

Pin

widget = Ducksboard::Pin.new(1234)
widget.value = 10
widget.save

Timeline

widget = Ducksboard::Timeline.new(1237)
widget.title = "A Title"
widget.image = "http://url.to.io/some_image.gif"
# or
widget.image = :edited
# any of the following as a string or symbol: orange, red, green, created, edited or deleted
widget.content = "text content"
widget.link = "http://google.com"

Leaderboard

widget1 = Ducksboard::Leaderboard.new(56803)
widget1.linha = [{"name" => 'Titulo 1', "values" => [12,13,14]}, 
                 {"name" => 'Titulo 2', "values" => [12,13,142]},
                 ]
widget1.save

Pull API

# You can use the HTTP Pull API to retrieve historical data from any widget.
# It will be returned in a map as per the API (http://dev.ducksboard.com/apidoc/pull-api-http)

widget = Ducksboard::Gauge.new(1235)
data = widget.since(300)['data']
# or
data = widget.last_values(15)
# or
data = widget.timespan(:daily, "Europe/London")
Something went wrong with that request. Please try again.