bobble 0.0.6 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/bobble/checker.rb +16 -6
- data/lib/bobble/notifier/google_voice.rb +1 -1
- metadata +6 -6
data/lib/bobble/checker.rb
CHANGED
@@ -17,11 +17,15 @@ module Bobble
|
|
17
17
|
:success_header => nil,
|
18
18
|
# Response body must match the specified body.
|
19
19
|
# Can be a regex.
|
20
|
-
:success_body => nil
|
20
|
+
:success_body => nil,
|
21
|
+
# Specific HTTP request headers may be sent
|
22
|
+
# along with the URL to be checked.
|
23
|
+
# Must be a hash { "key1" => "val1", "key2 => "val2" }
|
24
|
+
:request_headers => nil
|
21
25
|
}.update(options)
|
22
26
|
|
23
27
|
begin
|
24
|
-
response = http_request(url)
|
28
|
+
response = http_request(url, options)
|
25
29
|
assert_success(response, options)
|
26
30
|
puts "Successful!: #{url}"
|
27
31
|
rescue Exception => e
|
@@ -32,23 +36,29 @@ module Bobble
|
|
32
36
|
end
|
33
37
|
end
|
34
38
|
|
35
|
-
def http_request(url)
|
39
|
+
def http_request(url, options)
|
36
40
|
uri = URI.parse(url)
|
37
41
|
http = Net::HTTP.new(uri.host, uri.port)
|
38
42
|
request = Net::HTTP::Get.new(uri.request_uri)
|
43
|
+
|
44
|
+
if options[:request_headers]
|
45
|
+
options[:request_headers].each do |k,v|
|
46
|
+
request.add_field(k,v)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
39
50
|
return http.request(request)
|
40
51
|
end
|
41
52
|
|
42
53
|
# raises an exception if not successful
|
43
54
|
def assert_success(response, options)
|
44
|
-
if response.code.to_i >= 500
|
45
|
-
raise Exception.new("Response status code error: #{response.code}")
|
46
|
-
end
|
47
55
|
|
48
56
|
if options[:success_status]
|
49
57
|
unless response.code.to_i == options[:success_status].to_i
|
50
58
|
raise Exception.new("Response status code error. Is: #{response.code} Expected: #{options[:success_status]}")
|
51
59
|
end
|
60
|
+
elsif response.code.to_i >= 500
|
61
|
+
raise Exception.new("Response status code error: #{response.code}")
|
52
62
|
end
|
53
63
|
|
54
64
|
if options[:success_header]
|
@@ -58,7 +58,7 @@ module Bobble
|
|
58
58
|
newres = getit('https://www.google.com/voice',header)
|
59
59
|
|
60
60
|
if newres
|
61
|
-
rnrse = newres.match(/'_rnr_se': '([^']+)'/)[1]
|
61
|
+
rnrse = CGI.escape(newres.match(/'_rnr_se': '([^']+)'/)[1])
|
62
62
|
numbers.each do |num|
|
63
63
|
data = "_rnr_se=#{rnrse}&phoneNumber=#{num.strip}&text=#{message}&id="
|
64
64
|
finalres = postit('https://www.google.com/voice/sms/send/',data,header)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bobble
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
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-07-
|
12
|
+
date: 2012-07-08 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: twilio-ruby
|
16
|
-
requirement: &
|
16
|
+
requirement: &70277308961840 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 3.6.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70277308961840
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: pony
|
27
|
-
requirement: &
|
27
|
+
requirement: &70277308961140 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
version: '1.4'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70277308961140
|
36
36
|
description: For pinging your web services (any URL) & freely or cheaply getting email/SMS
|
37
37
|
notifications when they're down.
|
38
38
|
email: ahfarmer@gmail.com
|