twilio_contactable 0.7.2 → 0.7.3

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.7.2
1
+ 0.7.3
data/lib/controller.rb CHANGED
@@ -4,7 +4,8 @@ module TwilioContactable
4
4
  def self.included(controller)
5
5
  controller.instance_eval do
6
6
  # the developer should specify which model(s) will be sought
7
- # when the app receives incoming requests
7
+ # when the app receives incoming requests.
8
+ # See the 'Controller' part of the README for details
8
9
  protected
9
10
  def twilio_contactable(*klasses)
10
11
  @@contactable_classes = klasses
@@ -55,6 +56,7 @@ module TwilioContactable
55
56
  def receive_voice_confirmation
56
57
  @contactable = params[:contactable_type].constantize.find(params[:contactable_id])
57
58
  @contactable.voice_confirm_with(params['Digits'])
59
+ render :xml => ''
58
60
  end
59
61
 
60
62
  protected
data/lib/gateway.rb CHANGED
@@ -53,7 +53,7 @@ module TwilioContactable
53
53
 
54
54
  def deliver_sms(message, to, from = nil)
55
55
  deliver :sms,
56
- 'Message' => message,
56
+ 'Body' => message,
57
57
  'To' => to,
58
58
  'From' => from
59
59
  end
@@ -85,17 +85,11 @@ module TwilioContactable
85
85
  'Calls'
86
86
  end
87
87
 
88
- response = post service, data
89
-
90
- Net::HTTPCreated == response.code_type ?
91
- TwilioContactable::Gateway::Success :
92
- TwilioContactable::Gateway::Error
88
+ post service, data
93
89
  end
94
90
 
95
91
  def post(service, data = {})
96
92
  url = "/#{API_VERSION}/Accounts/#{TwilioContactable.configuration.client_id}/#{service}"
97
- puts "putting data: #{data.inspect}"
98
- puts "to url: #{url}"
99
93
  account.request url,
100
94
  "POST",
101
95
  data
@@ -93,5 +93,22 @@ class TwilioContactableControllerTest < ActionController::TestCase
93
93
  }, @response.body
94
94
  end
95
95
  end
96
+ context "receiving digits from Twilio" do
97
+ setup {
98
+ @digits = '12345'
99
+ @user = User.create! :phone_number => '206 555 6666',
100
+ :voice_confirmation_code => @digits
101
+ @receive_params = {"contactable_type"=>"User", "contactable_id"=>@user.id, "Digits"=>@digits, "FromState"=>"WA", "Direction"=>"outbound-api", "CalledState"=>"WA", "ToState"=>"WA", "AccountSid"=>"ABCDEFG", "CallerCountry"=>"US", "CallerZip"=>"98077", "Caller"=>"{number}", "FromCity"=>"WOODINVILLE", "From"=>"{number}", "action"=>"receive_voice_confirmation", "CallerCity"=>"WOODINVILLE", "FromCountry"=>"US", "FromZip"=>"98077", "To"=>"+12069305710", "ToCity"=>"SEATTLE", "CallStatus"=>"in-progress", "controller"=>"twilio_contactable", "ToZip"=>"98188", "CalledZip"=>"98188", "CallerState"=>"WA", "CalledCity"=>"SEATTLE", "Called"=>"+12069305710", "CalledCountry"=>"US", "CallSid"=>"ABCD", "ToCountry"=>"US", "ApiVersion"=>"2010-04-01"}
102
+ get :receive_voice_confirmation, @receive_params
103
+ }
104
+ should_respond_with :success
105
+ should_respond_with_content_type :xml
106
+ should "set the user to confirmed via voice" do
107
+ assert @user.reload.voice_confirmed?
108
+ end
109
+ should "not change the user's sms confirmation setting" do
110
+ assert !@user.sms_confirmed?
111
+ end
112
+ end
96
113
  end
97
114
  end
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{twilio_contactable}
8
- s.version = "0.7.2"
8
+ s.version = "0.7.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jack Danger Canty"]
@@ -37,7 +37,7 @@ Gem::Specification.new do |s|
37
37
  s.homepage = %q{http://github.com/JackDanger/twilio_contactable}
38
38
  s.rdoc_options = ["--charset=UTF-8"]
39
39
  s.require_paths = ["lib"]
40
- s.rubygems_version = %q{1.3.7}
40
+ s.rubygems_version = %q{1.3.6}
41
41
  s.summary = %q{Help authorize the users of your Rails apps to confirm and use their phone numbers}
42
42
  s.test_files = [
43
43
  "test/test_helper.rb",
@@ -50,7 +50,7 @@ Gem::Specification.new do |s|
50
50
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
51
51
  s.specification_version = 3
52
52
 
53
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
53
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
54
54
  s.add_runtime_dependency(%q<twiliolib>, [">= 2.0.5"])
55
55
  s.add_development_dependency(%q<shoulda>, [">= 0"])
56
56
  s.add_development_dependency(%q<mocha>, [">= 0"])
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 7
8
- - 2
9
- version: 0.7.2
8
+ - 3
9
+ version: 0.7.3
10
10
  platform: ruby
11
11
  authors:
12
12
  - Jack Danger Canty
@@ -21,7 +21,6 @@ dependencies:
21
21
  name: twiliolib
22
22
  prerelease: false
23
23
  requirement: &id001 !ruby/object:Gem::Requirement
24
- none: false
25
24
  requirements:
26
25
  - - ">="
27
26
  - !ruby/object:Gem::Version
@@ -36,7 +35,6 @@ dependencies:
36
35
  name: shoulda
37
36
  prerelease: false
38
37
  requirement: &id002 !ruby/object:Gem::Requirement
39
- none: false
40
38
  requirements:
41
39
  - - ">="
42
40
  - !ruby/object:Gem::Version
@@ -49,7 +47,6 @@ dependencies:
49
47
  name: mocha
50
48
  prerelease: false
51
49
  requirement: &id003 !ruby/object:Gem::Requirement
52
- none: false
53
50
  requirements:
54
51
  - - ">="
55
52
  - !ruby/object:Gem::Version
@@ -94,7 +91,6 @@ rdoc_options:
94
91
  require_paths:
95
92
  - lib
96
93
  required_ruby_version: !ruby/object:Gem::Requirement
97
- none: false
98
94
  requirements:
99
95
  - - ">="
100
96
  - !ruby/object:Gem::Version
@@ -102,7 +98,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
102
98
  - 0
103
99
  version: "0"
104
100
  required_rubygems_version: !ruby/object:Gem::Requirement
105
- none: false
106
101
  requirements:
107
102
  - - ">="
108
103
  - !ruby/object:Gem::Version
@@ -112,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
112
107
  requirements: []
113
108
 
114
109
  rubyforge_project:
115
- rubygems_version: 1.3.7
110
+ rubygems_version: 1.3.6
116
111
  signing_key:
117
112
  specification_version: 3
118
113
  summary: Help authorize the users of your Rails apps to confirm and use their phone numbers