
Nuge
The biz of pushing to multiple notification clients from a single source. Nuge
presents a uniform interface for pushing out messages from a single source.
Supported services (some pending):
Installation
Add this line to your application's Gemfile:
gem 'nuge'
Usage
By default Nuge is a no-op. You'll need to configure any clients that you wish
to push with.
Grocer Client
require 'nuge/clients/grocer'
Nuge::Pusher.clients << Nuge::Clients::Grocer(certificate: '/path/to/cert.pem')
Urbanairship Client
require 'nuge/clients/urbanairship'
Nuge.configure do |config|
config.clients << Nuge::Clients::Urbanairship.new(
application_key: ENV['URBANAIRSHIP_APPLICATION_KEY'],
application_secret: ENV['URBANAIRSHIP_APPLICATION_SECRET'],
master_secret: ENV['URBANAIRSHIP_MASTER_SECRET']
)
end
You can then register devices:
pusher = Nuge.pusher
pusher.register(token)
pusher.register(token, provider: 'android')
Notification pushing can be configured with custom expanders and formatters:
Nuge.pusher.push(['1234abcd'], alert: 'hello!')
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request