rushover 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/README.md +2 -2
  2. data/lib/rushover.rb +14 -15
  3. data/lib/rushover/version.rb +1 -1
  4. metadata +14 -14
data/README.md CHANGED
@@ -27,8 +27,8 @@ resp = client.notify(user_key, "some message", :priority => 1, :title => "a titl
27
27
  resp.ok? # => true
28
28
 
29
29
  # Validate that a user exists
30
- client.validate!(existing_user) # => true
31
- client.validate!(existing_user, existing_device) # => true
30
+ client.validate!(existing_user_key) # => true
31
+ client.validate!(existing_user_key, existing_device) # => true
32
32
 
33
33
  # Also provides a User class for convenience. Just keeps the user key
34
34
  # around if you want to deal with a User object
@@ -4,8 +4,9 @@ require "json"
4
4
 
5
5
  module Rushover
6
6
  class Client
7
- MESSAGES_ENDPOINT = "https://api.pushover.net/1/messages.json".freeze
8
- VALIDATE_ENDPOINT = "https://api.pushover.net/1/users/validate.json".freeze
7
+ BASE_URL = "https://api.pushover.net/1".freeze
8
+ MESSAGES_ENDPOINT = "#{BASE_URL}/messages.json".freeze
9
+ VALIDATE_ENDPOINT = "#{BASE_URL}/users/validate.json".freeze
9
10
 
10
11
  attr_accessor :token
11
12
 
@@ -16,32 +17,30 @@ module Rushover
16
17
  def notify(user_key, message, options = {})
17
18
  data = { :token => token, :user => user_key, :message => message }
18
19
  data.merge!(options)
19
-
20
- raw_response = begin
21
- RestClient.post MESSAGES_ENDPOINT, data.to_json, :content_type => "application/json"
22
- rescue RestClient::Exception => e
23
- e.response
24
- end
25
-
26
- Response.new JSON.parse(raw_response)
20
+ post_json(MESSAGES_ENDPOINT, data)
27
21
  end
28
22
 
29
23
  def validate(user_key, device = nil)
30
24
  data = { :token => token, :user => user_key }
31
25
  data[:device] = device if device
26
+ post_json(VALIDATE_ENDPOINT, data)
27
+ end
32
28
 
29
+ def validate!(user_key, device = nil)
30
+ validate(user_key, device).ok?
31
+ end
32
+
33
+ private
34
+
35
+ def post_json(url, data)
33
36
  raw_response = begin
34
- RestClient.post VALIDATE_ENDPOINT, data.to_json, :content_type => "application/json"
37
+ RestClient.post url, data.to_json, :content_type => "application/json"
35
38
  rescue RestClient::Exception => e
36
39
  e.response
37
40
  end
38
41
 
39
42
  Response.new JSON.parse(raw_response)
40
43
  end
41
-
42
- def validate!(user_key, device = nil)
43
- validate(user_key, device).ok?
44
- end
45
44
  end
46
45
 
47
46
  class User
@@ -1,3 +1,3 @@
1
1
  module Rushover
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rushover
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-30 00:00:00.000000000 Z
12
+ date: 2012-08-31 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
16
- requirement: &2160289600 !ruby/object:Gem::Requirement
16
+ requirement: &2152653380 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2160289600
24
+ version_requirements: *2152653380
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rest-client
27
- requirement: &2160289180 !ruby/object:Gem::Requirement
27
+ requirement: &2152652960 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2160289180
35
+ version_requirements: *2152652960
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &2160288760 !ruby/object:Gem::Requirement
38
+ requirement: &2152652540 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2160288760
46
+ version_requirements: *2152652540
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: contest
49
- requirement: &2160288340 !ruby/object:Gem::Requirement
49
+ requirement: &2152652120 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *2160288340
57
+ version_requirements: *2152652120
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: fakeweb
60
- requirement: &2160287920 !ruby/object:Gem::Requirement
60
+ requirement: &2152651700 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *2160287920
68
+ version_requirements: *2152651700
69
69
  description: A simple ruby Pushover client
70
70
  email:
71
71
  - xternal1+github@gmail.com
@@ -99,7 +99,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
99
99
  version: '0'
100
100
  segments:
101
101
  - 0
102
- hash: -2596201424903665728
102
+ hash: 3834884263461647781
103
103
  required_rubygems_version: !ruby/object:Gem::Requirement
104
104
  none: false
105
105
  requirements:
@@ -108,7 +108,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
108
108
  version: '0'
109
109
  segments:
110
110
  - 0
111
- hash: -2596201424903665728
111
+ hash: 3834884263461647781
112
112
  requirements: []
113
113
  rubyforge_project:
114
114
  rubygems_version: 1.8.15