class Localytics::Push

Attributes

app_id[RW]

Public Class Methods

push(messages, target_type, app_id, campaing_key = nil, api_key=nil, api_secret=nil, headers={}) click to toggle source

Generic method to send push notifications thru Localytics. Mandatory parameters:

  • :messages an array containing the push messages to send.

  • :target_type targeted resource. Available values are:

    :customer_id
    :broadcast
    :profile
    :audience_id
    

Optional attributes are:

  • :api_key

  • :api_secret

  • :headers

More information on how messages can be built can be found on docs.localytics.com/#Dev/getting-started-trans-push.html

# File lib/localytics/push.rb, line 25
def self.push(messages, target_type, app_id, campaing_key = nil, api_key=nil, api_secret=nil, headers={})
  Localytics.request(
      api_base(app_id),
      :post,
      '',
      api_key,
      api_secret,
      {
          messages: messages,
          target_type: target_type,
          campaign_key: campaing_key,
          request_id: SecureRandom.uuid
      },
      headers
  )
end
push_to_all_customers(messages, app_id, campaing_key = nil, api_key=nil, api_secret=nil) click to toggle source

For :messages options please check the :push method

# File lib/localytics/push.rb, line 48
def self.push_to_all_customers(messages, app_id, campaing_key = nil, api_key=nil, api_secret=nil)
  push messages, 'broadcast', app_id, campaing_key, api_key, api_secret
end
push_to_audiences(messages, app_id, campaing_key = nil, api_key=nil, api_secret=nil) click to toggle source
# File lib/localytics/push.rb, line 57
def self.push_to_audiences(messages, app_id, campaing_key = nil, api_key=nil, api_secret=nil)
  push messages, 'audience_id', app_id, campaing_key, api_key, api_secret
end
push_to_customers(messages, app_id, campaing_key = nil, api_key=nil, api_secret=nil) click to toggle source

For :messages options please check the :push method

# File lib/localytics/push.rb, line 43
def self.push_to_customers(messages, app_id, campaing_key = nil, api_key=nil, api_secret=nil)
  push messages, 'customer_id', app_id, campaing_key, api_key, api_secret
end
push_to_profiles(messages, app_id, campaing_key = nil, api_key=nil, api_secret=nil) click to toggle source

For :messages options please check the :push method

# File lib/localytics/push.rb, line 53
def self.push_to_profiles(messages, app_id, campaing_key = nil, api_key=nil, api_secret=nil)
  push messages, 'profile', app_id, campaing_key, api_key, api_secret
end

Private Class Methods

api_base(app_id) click to toggle source
# File lib/localytics/push.rb, line 63
def self.api_base app_id
  unless app_id ||= self.app_id
    raise Error.new('No APP id provided')
  end

  "https://messaging.localytics.com/v2/push/#{app_id}"
end