Skip to content

jhsu/ducksboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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")