Module: Urbanairship::ClassMethods

Included in:
Urbanairship, Client
Defined in:
lib/urbanairship.rb

Constant Summary collapse

VERSION =
3

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#application_keyObject

Returns the value of attribute application_key.



17
18
19
# File 'lib/urbanairship.rb', line 17

def application_key
  @application_key
end

#application_secretObject

Returns the value of attribute application_secret.



17
18
19
# File 'lib/urbanairship.rb', line 17

def application_secret
  @application_secret
end

#loggerObject

Returns the value of attribute logger.



17
18
19
# File 'lib/urbanairship.rb', line 17

def logger
  @logger
end

#master_secretObject

Returns the value of attribute master_secret.



17
18
19
# File 'lib/urbanairship.rb', line 17

def master_secret
  @master_secret
end

#providerObject

Returns the value of attribute provider.



17
18
19
# File 'lib/urbanairship.rb', line 17

def provider
  @provider
end

#request_timeout=(value) ⇒ Object

Sets the attribute request_timeout

Parameters:

  • value

    the value to set the attribute request_timeout to.



17
18
19
# File 'lib/urbanairship.rb', line 17

def request_timeout=(value)
  @request_timeout = value
end

Instance Method Details

#add_tag(tag) ⇒ Object



69
70
71
# File 'lib/urbanairship.rb', line 69

def add_tag(tag)
  do_request(:put, "/api/tags/#{tag}", :authenticate_with => :master_secret, :content_type => 'text/plain')
end

#create_schedule(schedule) ⇒ Object

Schedules API



38
39
40
# File 'lib/urbanairship.rb', line 38

def create_schedule(schedule)
  do_request(:post, "/api/schedules/", :body => JSON.dump(schedule), :authenticate_with => :master_secret)
end

#create_segment(segment) ⇒ Object



111
112
113
# File 'lib/urbanairship.rb', line 111

def create_segment(segment)
  do_request(:post, "/api/segments", :body => JSON.dump(segment), :authenticate_with => :master_secret)
end

#delete_schedule(id) ⇒ Object



54
55
56
# File 'lib/urbanairship.rb', line 54

def delete_schedule(id)
  do_request(:delete, "/api/schedules/#{id}", :authenticate_with => :master_secret)
end

#delete_segment(id) ⇒ Object



123
124
125
# File 'lib/urbanairship.rb', line 123

def delete_segment(id)
  do_request(:delete, "/api/segments/#{id}", :authenticate_with => :master_secret)
end

#device_info(device_token, options = {}) ⇒ Object



32
33
34
35
# File 'lib/urbanairship.rb', line 32

def device_info(device_token, options = {})
  path = device_tokens_end_point(options[:provider] || @provider)
  do_request(:get, "/api/#{path}/#{device_token}", :authenticate_with => :application_secret)
end

#device_tokensObject



94
95
96
# File 'lib/urbanairship.rb', line 94

def device_tokens
  do_request(:get, "/api/device_tokens/", :authenticate_with => :master_secret)
end

#device_tokens_countObject



98
99
100
# File 'lib/urbanairship.rb', line 98

def device_tokens_count
  do_request(:get, "/api/device_tokens/count/", :authenticate_with => :master_secret)
end

#feedback(time) ⇒ Object



102
103
104
# File 'lib/urbanairship.rb', line 102

def feedback(time)
  do_request(:get, "/api/device_tokens/feedback/?since=#{format_time(time)}", :authenticate_with => :master_secret)
end

#push(options = {}) ⇒ Object

Push API



59
60
61
62
# File 'lib/urbanairship.rb', line 59

def push(options = {})
  body = JSON.dump(parse_push_options(options.dup))
  do_request(:post, "/api/push/", :body => body, :authenticate_with => :master_secret)
end

#register_device(device_token, options = {}) ⇒ Object



20
21
22
23
24
25
# File 'lib/urbanairship.rb', line 20

def register_device(device_token, options = {})
  body = JSON.dump(parse_register_options(options))

  path = device_tokens_end_point(options[:provider] || @provider)
  do_request(:put, "/api/#{path}/#{device_token}", :body => body, :authenticate_with => :application_secret)
end

#remove_tag(tag) ⇒ Object



73
74
75
# File 'lib/urbanairship.rb', line 73

def remove_tag(tag)
  do_request(:delete, "/api/tags/#{tag}", :authenticate_with => :master_secret)
end

#schedule(id) ⇒ Object



46
47
48
# File 'lib/urbanairship.rb', line 46

def schedule(id)
  do_request(:get, "/api/schedules/#{id}", :authenticate_with => :master_secret)
end

#schedulesObject



42
43
44
# File 'lib/urbanairship.rb', line 42

def schedules
  quest(:get, "/api/schedules/", :authenticate_with => :master_secret)
end

#segment(id) ⇒ Object



115
116
117
# File 'lib/urbanairship.rb', line 115

def segment(id)
  do_request(:get, "/api/segments/#{id}", :authenticate_with => :master_secret)
end

#segmentsObject

Segments API



107
108
109
# File 'lib/urbanairship.rb', line 107

def segments
  do_request(:get, "/api/segments", :authenticate_with => :master_secret)
end

#tag_device(params) ⇒ Object



77
78
79
80
81
# File 'lib/urbanairship.rb', line 77

def tag_device(params)
  provider_field = device_tokens_end_point(params[:provider] || @provider).to_sym
  body = JSON.dump({provider_field => {:add => [params[:device_token]]}})
  do_request(:post, "/api/tags/#{params[:tag]}", :body => body, :authenticate_with => :master_secret)
end

#tagsObject

Tags API



65
66
67
# File 'lib/urbanairship.rb', line 65

def tags
  do_request(:get, "/api/tags/", :authenticate_with => :master_secret)
end

#tags_for_device(device_token) ⇒ Object

Device Tokens API



90
91
92
# File 'lib/urbanairship.rb', line 90

def tags_for_device(device_token)
  do_request(:get, "/api/device_tokens/#{device_token}/tags/", :authenticate_with => :master_secret)
end

#unregister_device(device_token, options = {}) ⇒ Object



27
28
29
30
# File 'lib/urbanairship.rb', line 27

def unregister_device(device_token, options = {})
  path = device_tokens_end_point(options[:provider] || @provider)
  do_request(:delete, "/api/#{path}/#{device_token}", :authenticate_with => :application_secret)
end

#untag_device(params) ⇒ Object



83
84
85
86
87
# File 'lib/urbanairship.rb', line 83

def untag_device(params)
  provider_field = device_tokens_end_point(params[:provider] || @provider).to_sym
  body = JSON.dump({provider_field => {:remove => [params[:device_token]]}})
  do_request(:post, "/api/tags/#{params[:tag]}", :body => body, :authenticate_with => :master_secret)
end

#update_schedule(id, schedule) ⇒ Object



50
51
52
# File 'lib/urbanairship.rb', line 50

def update_schedule(id, schedule)
  do_request(:put, "/api/schedules/#{id}", :body => JSON.dump(schedule), :authenticate_with => :master_secret)
end

#update_segment(id, segment) ⇒ Object



119
120
121
# File 'lib/urbanairship.rb', line 119

def update_segment(id, segment)
  do_request(:put, "/api/segments/#{id}", :body => JSON.dump(segment), :authenticate_with => :master_secret)
end