Skip to content

aryrabelo/ducksboard

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 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"
widget.save

Leaderboard

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

Completion

widget = Ducksboard::Timeline.new(1237)
widget.current = 200
widget.min = 0
widget.max = 5000
widget.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")

About

ducksboard ruby gem

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%