Class: Rushover::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/rushover.rb

Constant Summary collapse

BASE_URL =
"https://api.pushover.net/1".freeze
MESSAGES_ENDPOINT =
"#{BASE_URL}/messages.json".freeze
VALIDATE_ENDPOINT =
"#{BASE_URL}/users/validate.json".freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(token) ⇒ Client

Returns a new instance of Client.



13
14
15
# File 'lib/rushover.rb', line 13

def initialize(token)
  @token = token
end

Instance Attribute Details

#tokenObject

Returns the value of attribute token.



11
12
13
# File 'lib/rushover.rb', line 11

def token
  @token
end

Instance Method Details

#notify(user_key, message, options = {}) ⇒ Object



17
18
19
20
21
# File 'lib/rushover.rb', line 17

def notify(user_key, message, options = {})
  data = { :token => token, :user => user_key, :message => message }
  data.merge!(options)
  post_json(MESSAGES_ENDPOINT, data)
end

#validate(user_key, device = nil) ⇒ Object



23
24
25
26
27
# File 'lib/rushover.rb', line 23

def validate(user_key, device = nil)
  data = { :token => token, :user => user_key }
  data[:device] = device if device
  post_json(VALIDATE_ENDPOINT, data)
end

#validate!(user_key, device = nil) ⇒ Object



29
30
31
# File 'lib/rushover.rb', line 29

def validate!(user_key, device = nil)
  validate(user_key, device).ok?
end