Module: OneSignal

Defined in:
lib/onesignal.rb,
lib/onesignal/client.rb,
lib/onesignal/filter.rb,
lib/onesignal/sounds.rb,
lib/onesignal/segment.rb,
lib/onesignal/version.rb,
lib/onesignal/auto_map.rb,
lib/onesignal/commands.rb,
lib/onesignal/responses.rb,
lib/onesignal/attachments.rb,
lib/onesignal/notification.rb,
lib/onesignal/configuration.rb,
lib/onesignal/responses/player.rb,
lib/onesignal/commands/base_command.rb,
lib/onesignal/commands/fetch_player.rb,
lib/onesignal/notification/contents.rb,
lib/onesignal/notification/headings.rb,
lib/onesignal/commands/fetch_players.rb,
lib/onesignal/responses/notification.rb,
lib/onesignal/responses/base_response.rb,
lib/onesignal/commands/fetch_notification.rb,
lib/onesignal/commands/create_notification.rb

Defined Under Namespace

Modules: AutoMap, Commands, Responses Classes: Attachments, Client, Configuration, Filter, InvalidError, Notification, Segment, Sounds

Constant Summary collapse

VERSION =
'0.2.0'
API_VERSION =
'v1'

Class Method Summary collapse

Class Method Details

.configObject



40
41
42
# File 'lib/onesignal.rb', line 40

def config
  @config ||= Configuration.new
end

.configure {|config| ... } ⇒ Object Also known as: define

Yields:



12
13
14
# File 'lib/onesignal.rb', line 12

def configure
  yield config
end

.fetch_notification(notification_id) ⇒ Object



22
23
24
25
26
# File 'lib/onesignal.rb', line 22

def fetch_notification notification_id
  return unless OneSignal.config.active
  fetched = Commands::FetchNotification.call notification_id
  Responses::Notification.from_json fetched.body
end

.fetch_player(player_id) ⇒ Object



28
29
30
31
32
# File 'lib/onesignal.rb', line 28

def fetch_player player_id
  return unless OneSignal.config.active
  fetched = Commands::FetchPlayer.call player_id
  Responses::Player.from_json fetched.body
end

.fetch_playersObject



34
35
36
37
38
# File 'lib/onesignal.rb', line 34

def fetch_players
  return unless OneSignal.config.active
  fetched = Commands::FetchPlayers.call
  JSON.parse(fetched.body)['players'].map { |player| Responses::Player.from_json player }
end

.send_notification(notification) ⇒ Object



16
17
18
19
20
# File 'lib/onesignal.rb', line 16

def send_notification notification
  return unless OneSignal.config.active
  created = Commands::CreateNotification.call notification
  fetch_notification(JSON.parse(created.body)['id'])
end