Class: RubyPushNotifications::GCM::GCMPusher

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby-push-notifications/gcm/gcm_pusher.rb

Overview

This class is responsible for sending notifications to the GCM service.

Author:

  • Carlos Alonso

Instance Method Summary collapse

Constructor Details

#initialize(key, options = {}) ⇒ GCMPusher

Initializes the GCMPusher

Parameters:

  • key (String)
  • options (Hash) (defaults to: {})

    optional. Options for GCMPusher. Currently supports:

    • url [String]: URL of the GCM endpoint. Defaults to the official GCM URL.

    • open_timeout [Integer]: Number of seconds to wait for the connection to open. Defaults to 30.

    • read_timeout [Integer]: Number of seconds to wait for one block to be read. Defaults to 30.



18
19
20
21
# File 'lib/ruby-push-notifications/gcm/gcm_pusher.rb', line 18

def initialize(key, options = {})
  @key = key
  @options = options
end

Instance Method Details

#push(notifications) ⇒ Object

Actually pushes the given notifications. Assigns every notification an array with the result of each individual notification.

Parameters:

  • notifications (Array)

    . Array of GCMNotification to send.



28
29
30
31
32
# File 'lib/ruby-push-notifications/gcm/gcm_pusher.rb', line 28

def push(notifications)
  notifications.each do |notif|
    notif.results = GCMConnection.post notif.as_gcm_json, @key, @options
  end
end