IRFSDash

IRFSDash is a handy little Ruby library that lets you, a noble application developer, easily push content to the IRFS office dashboard. It does simple checking to make sure your stuff complies with the API requirements.

Installation

Add this line to your application's Gemfile:

gem 'irfsdash'

And then execute:

$ bundle

Or install it yourself as:

$ gem install irfsdash

Requirements

You cannot run IRFSDash without an AMQP server and a statsd/graphite server. There is a production server, which is the default, but this is only accessible within the IRFS gateway.

You can set the AMQP/Statsd hosts as follows:

# must be called BEFORE any other methods, ie in an initializer
IRFSDash.statsd_host(hostname)
IRFSDash.amqp_host(hostname)

Usage

In an initializer:

IRFSDash.setup(source: 'My Application')
# you can add color: and icon: to add default colors/icons to your stuff

Publish to the activity feed:

IRFSDash.activity(content: 'Hello, world!', type: 'string')
IRFSDash.activity(content: 4, label: 'clips in the last hour', type: 'number')

Publish a project update:

IRFSDash.project(project: 'Snippets', happy: false)
IRFSDash.project(project: 'Snippets', happy: false, label: 'Build failing')

Publish to the tickers:

IRFSDash.ticker(content: 'This will scroll across the screen', ticker_type: 'main')
IRFSDash.ticker(content: 'This will scroll across the screen below that', ticker_type: 'small')

Publish a widget:

IRFSDash.widget(content: '<strong>Hello</strong> world')
IRFSDash.widget(url: 'http://some-url')

Increment/decrement a counter:

IRFSDash.increment("clips-made")
IRFSDash.decrement("clips-made")

Record the time taken for an event (time in milliseconds):

IRFSDash.timing("clip-creation", 500)

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request