twilio_resource 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/twilio_resource.rb +1 -0
- data/lib/twilio_resource/account.rb +5 -0
- data/lib/twilio_resource/base.rb +1 -1
- data/lib/twilio_resource/call.rb +21 -10
- data/lib/twilio_resource/outgoing_caller_id.rb +3 -0
- data/test/account_test.rb +1 -1
- data/test/call_test.rb +4 -2
- data/test/local_incoming_phone_number_test.rb +8 -3
- data/test/outgoing_caller_id_test.rb +29 -0
- data/test/toll_free_incoming_phone_number_test.rb +1 -1
- data/test/twilio_mock.rb +408 -216
- metadata +33 -50
data/lib/twilio_resource.rb
CHANGED
@@ -12,6 +12,7 @@ module TwilioResource
|
|
12
12
|
autoload :IncomingPhoneNumber, 'twilio_resource/incoming_phone_number'
|
13
13
|
autoload :LocalIncomingPhoneNumber, 'twilio_resource/local_incoming_phone_number'
|
14
14
|
autoload :TollFreeIncomingPhoneNumber, 'twilio_resource/toll_free_incoming_phone_number'
|
15
|
+
autoload :OutgoingCallerId, 'twilio_resource/outgoing_caller_id'
|
15
16
|
|
16
17
|
class << self
|
17
18
|
attr_accessor :logger
|
data/lib/twilio_resource/base.rb
CHANGED
data/lib/twilio_resource/call.rb
CHANGED
@@ -5,16 +5,27 @@
|
|
5
5
|
class TwilioResource::Call < TwilioResource::Base
|
6
6
|
belongs_to :account
|
7
7
|
|
8
|
-
NOT_DIALED =
|
9
|
-
IN_PROGRESS =
|
10
|
-
COMPLETE =
|
8
|
+
NOT_DIALED = "queued"
|
9
|
+
IN_PROGRESS = "in-progress"
|
10
|
+
COMPLETE = "completed"
|
11
|
+
RINGING = "ringing"
|
12
|
+
FAILED = "failed"
|
13
|
+
BUSY = "busy"
|
14
|
+
NO_ANSWER = "no-answer"
|
11
15
|
|
12
|
-
#
|
13
|
-
|
14
|
-
|
15
|
-
# TwilioResource::Call::COMPLETE
|
16
|
-
def status
|
17
|
-
attributes["status"].to_i if attributes["status"]
|
16
|
+
# old end-point
|
17
|
+
def called
|
18
|
+
self.to
|
18
19
|
end
|
19
|
-
|
20
|
+
|
21
|
+
# old end-point
|
22
|
+
def caller
|
23
|
+
self.from
|
24
|
+
end
|
25
|
+
|
26
|
+
# old end-point
|
27
|
+
def call_segment_sid
|
28
|
+
self.parent_call_sid
|
29
|
+
end
|
30
|
+
|
20
31
|
end
|
data/test/account_test.rb
CHANGED
@@ -11,7 +11,7 @@ class TwilioResource::AccountTest < Test::Unit::TestCase
|
|
11
11
|
def test_find_account
|
12
12
|
TwilioResource::Base.user = 1
|
13
13
|
account = TwilioResource::Account.find(1)
|
14
|
-
assert_equal
|
14
|
+
assert_equal TwilioResource::Account::ACTIVE, account.status
|
15
15
|
end
|
16
16
|
|
17
17
|
end
|
data/test/call_test.rb
CHANGED
@@ -14,8 +14,10 @@ class TwilioResource::CallTest < Test::Unit::TestCase
|
|
14
14
|
|
15
15
|
# check attributes were assigned correctly
|
16
16
|
call = calls.first
|
17
|
-
assert_equal('
|
18
|
-
assert_equal('
|
17
|
+
assert_equal('+15304551166', call.called)
|
18
|
+
assert_equal('+15304551166', call.to)
|
19
|
+
assert_equal('+15105555555', call.caller)
|
20
|
+
assert_equal('+15105555555', call.from)
|
19
21
|
assert(call.call_segment_sid.blank?)
|
20
22
|
end
|
21
23
|
|
@@ -5,8 +5,14 @@ class TwilioResource::LocalIncomingPhoneNumberTest < Test::Unit::TestCase
|
|
5
5
|
|
6
6
|
def setup
|
7
7
|
super
|
8
|
+
@old_user = TwilioResource::Base.user
|
8
9
|
TwilioMock.setup_remote_fixtures
|
9
10
|
end
|
11
|
+
|
12
|
+
def teardown
|
13
|
+
TwilioResource::Base.user = @old_user
|
14
|
+
super
|
15
|
+
end
|
10
16
|
|
11
17
|
def test_provision_local_number
|
12
18
|
phone = TwilioResource::LocalIncomingPhoneNumber.new(:url => "http://example.com/calls",
|
@@ -14,7 +20,7 @@ class TwilioResource::LocalIncomingPhoneNumberTest < Test::Unit::TestCase
|
|
14
20
|
:method => 'POST',
|
15
21
|
:friendly_name => "My Local Number",
|
16
22
|
:account_id => 1)
|
17
|
-
assert_equal "AreaCode=206&FriendlyName=My+Local+Number&Method=POST&Url=http%3A%2F%2Fexample.com%2Fcalls", phone.encode
|
23
|
+
assert_equal "AccountId=1&AreaCode=206&FriendlyName=My+Local+Number&Method=POST&Url=http%3A%2F%2Fexample.com%2Fcalls", phone.encode
|
18
24
|
phone.save
|
19
25
|
|
20
26
|
assert_equal '2064567890', phone.phone_number
|
@@ -27,11 +33,10 @@ class TwilioResource::LocalIncomingPhoneNumberTest < Test::Unit::TestCase
|
|
27
33
|
:method => 'POST',
|
28
34
|
:friendly_name => "My Local Number",
|
29
35
|
:account_id => TwilioResource::Base.user)
|
30
|
-
assert_equal "AreaCode=815&FriendlyName=My+Local+Number&Method=POST&Url=http%3A%2F%2Fexample.com%2Fcalls", phone.encode
|
36
|
+
assert_equal "AccountId=2&AreaCode=815&FriendlyName=My+Local+Number&Method=POST&Url=http%3A%2F%2Fexample.com%2Fcalls", phone.encode
|
31
37
|
assert_raises TwilioResource::NoPhoneNumbersFoundException do
|
32
38
|
phone.save
|
33
39
|
end
|
34
|
-
|
35
40
|
end
|
36
41
|
|
37
42
|
# test find, update
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'twilio_mock'
|
3
|
+
|
4
|
+
class TwilioResource::OutgoingCallerIdTest < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def setup
|
7
|
+
super
|
8
|
+
TwilioMock.setup_remote_fixtures
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_find_all
|
12
|
+
caller_ids = TwilioResource::OutgoingCallerId.find(:all, :params => {:account_id => 1})
|
13
|
+
assert_equal 1, caller_ids.length
|
14
|
+
|
15
|
+
# check attributes were assigned correctly
|
16
|
+
caller_id = caller_ids.first
|
17
|
+
assert_equal('+15105555555', caller_id.phone_number)
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_find_by_phone_number
|
21
|
+
caller_ids = TwilioResource::OutgoingCallerId.find(:all, :params => {:account_id => 1, :friendly_name => "Foo"})
|
22
|
+
assert_equal 1, caller_ids.length
|
23
|
+
|
24
|
+
# check attributes were assigned correctly
|
25
|
+
caller_id = caller_ids.first
|
26
|
+
assert_equal('+15105555555', caller_id.phone_number)
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
@@ -14,7 +14,7 @@ class TwilioResource::TollFreeIncomingPhoneNumberTest < Test::Unit::TestCase
|
|
14
14
|
:method => 'POST',
|
15
15
|
:friendly_name => "My Local Number",
|
16
16
|
:account_id => TwilioResource::Base.user)
|
17
|
-
assert_equal "FriendlyName=My+Local+Number&Method=POST&Url=http%3A%2F%2Fexample.com%2Fcalls", phone.encode
|
17
|
+
assert_equal "AccountId=1&FriendlyName=My+Local+Number&Method=POST&Url=http%3A%2F%2Fexample.com%2Fcalls", phone.encode
|
18
18
|
phone.save
|
19
19
|
|
20
20
|
assert_equal '8774567890', phone.phone_number
|
data/test/twilio_mock.rb
CHANGED
@@ -1,35 +1,37 @@
|
|
1
1
|
require 'active_resource/http_mock'
|
2
2
|
|
3
3
|
class TwilioMock
|
4
|
-
|
4
|
+
|
5
5
|
def self.setup_remote_fixtures
|
6
6
|
ActiveResource::HttpMock.respond_to do |mock|
|
7
|
-
mock.get '/
|
8
|
-
mock.post '/
|
9
|
-
mock.post '/
|
10
|
-
mock.post '/
|
7
|
+
mock.get '/2010-04-01/Accounts/1', auth_get(1), main_account
|
8
|
+
mock.post '/2010-04-01/Accounts/1/IncomingPhoneNumbers/Local', auth_post(1), local_number_provision_success
|
9
|
+
mock.post '/2010-04-01/Accounts/2/IncomingPhoneNumbers/Local', auth_post(2), no_local_number, 400
|
10
|
+
mock.post '/2010-04-01/Accounts/1/IncomingPhoneNumbers/TollFree', auth_post(1), toll_free_number_provision_success
|
11
11
|
|
12
|
-
mock.get '/
|
13
|
-
mock.get '/
|
14
|
-
mock.get '/
|
15
|
-
mock.get '/
|
12
|
+
mock.get '/2010-04-01/Accounts/1/Calls', auth_get(1), all_calls
|
13
|
+
mock.get '/2010-04-01/Accounts/1/Calls?StartTime=2009-09-01', auth_get(1), recent_calls
|
14
|
+
mock.get '/2010-04-01/Accounts/1/Calls?Status=completed', auth_get(1), succeeded_recent_calls
|
15
|
+
mock.get '/2010-04-01/Accounts/1/Calls?StartTime=2009-09-01&Status=completed', auth_get(1), no_calls
|
16
16
|
|
17
|
-
mock.get '/
|
18
|
-
mock.delete '/
|
19
|
-
mock.delete '/
|
17
|
+
mock.get '/2010-04-01/Accounts/1/IncomingPhoneNumbers/1', auth_get(1), phone_number_data
|
18
|
+
mock.delete '/2010-04-01/Accounts/1/IncomingPhoneNumbers/1', auth_delete(1), phone_number_delete_success
|
19
|
+
mock.delete '/2010-04-01/Accounts/2/IncomingPhoneNumbers/2', auth_delete(2), "", 404
|
20
20
|
|
21
|
+
mock.get '/2010-04-01/Accounts/1/OutgoingCallerIds', auth_get(1), all_caller_ids
|
22
|
+
mock.get '/2010-04-01/Accounts/1/OutgoingCallerIds?FriendlyName=Foo', auth_get(1), friendly_name_caller_ids
|
21
23
|
end
|
22
24
|
|
23
25
|
end
|
24
26
|
|
25
27
|
def self.build_header(method)
|
26
|
-
if ActiveResource::VERSION::MAJOR == 3
|
28
|
+
if defined?(ActiveResource::VERSION) && ActiveResource::VERSION::MAJOR == 3
|
27
29
|
TwilioResource::Account.connection.send(:build_request_headers, {}, method, '')
|
28
30
|
else
|
29
31
|
TwilioResource::Account.connection.send(:build_request_headers, {})
|
30
32
|
end
|
31
33
|
end
|
32
|
-
|
34
|
+
|
33
35
|
def self.auth_delete(account_id)
|
34
36
|
old_account_id = TwilioResource::Base.user
|
35
37
|
TwilioResource::Base.user = account_id
|
@@ -56,17 +58,34 @@ class TwilioMock
|
|
56
58
|
|
57
59
|
def self.phone_number_data
|
58
60
|
<<END
|
59
|
-
<TwilioResponse>
|
60
|
-
<IncomingPhoneNumber>
|
61
|
-
<Sid>PNe536dfda7c6184afab78d980cb8cdf43</Sid>
|
62
|
-
<AccountSid>AC35542fc30a091bed0c1ed511e1d9935d</AccountSid>
|
63
|
-
<FriendlyName>My Home Phone Number</FriendlyName>
|
64
|
-
<PhoneNumber>4158675309</PhoneNumber>
|
65
|
-
<
|
66
|
-
<
|
67
|
-
<
|
68
|
-
<
|
69
|
-
|
61
|
+
<TwilioResponse>
|
62
|
+
<IncomingPhoneNumber>
|
63
|
+
<Sid>PNe536dfda7c6184afab78d980cb8cdf43</Sid>
|
64
|
+
<AccountSid>AC35542fc30a091bed0c1ed511e1d9935d</AccountSid>
|
65
|
+
<FriendlyName>My Home Phone Number</FriendlyName>
|
66
|
+
<PhoneNumber>4158675309</PhoneNumber>
|
67
|
+
<VoiceUrl>http://mycompany.com/handleNewCall.php</VoiceUrl>
|
68
|
+
<VoiceMethod>POST</VoiceMethod>
|
69
|
+
<VoiceFallbackUrl/>
|
70
|
+
<VoiceFallbackMethod>POST</VoiceFallbackMethod>
|
71
|
+
<StatusCallback/>
|
72
|
+
<StatusCallbackMethod/>
|
73
|
+
<VoiceCallerIdLookup>false</VoiceCallerIdLookup>
|
74
|
+
<VoiceApplicationSid/>
|
75
|
+
<DateCreated>Mon, 16 Aug 2010 23:00:23 +0000</DateCreated>
|
76
|
+
<DateUpdated>Mon, 16 Aug 2010 23:00:23 +0000</DateUpdated>
|
77
|
+
<SmsUrl/>
|
78
|
+
<SmsMethod>POST</SmsMethod>
|
79
|
+
<SmsFallbackUrl/>
|
80
|
+
<SmsFallbackMethod>GET</SmsFallbackMethod>
|
81
|
+
<SmsApplicationSid>AP9b2e38d8c592488c397fc871a82a74ec</SmsApplicationSid>
|
82
|
+
<Capabilities>
|
83
|
+
<Voice>true</Voice>
|
84
|
+
<SMS>true</SMS>
|
85
|
+
</Capabilities>
|
86
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
87
|
+
<Uri>/2010-04-01/Accounts/ACdc5f1e11047ebd6fe7a55f120be3a900/IncomingPhoneNumbers/PN2a0747eba6abf96b7e3c3ff0b4530f6e</Uri>
|
88
|
+
</IncomingPhoneNumber>
|
70
89
|
</TwilioResponse>
|
71
90
|
END
|
72
91
|
end
|
@@ -74,16 +93,29 @@ END
|
|
74
93
|
def self.main_account
|
75
94
|
<<END
|
76
95
|
<TwilioResponse>
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
</
|
86
|
-
|
96
|
+
<Account>
|
97
|
+
<Sid>AC309475e5fede1b49e100272a8640f438</Sid>
|
98
|
+
<FriendlyName>My Twilio Account</FriendlyName>
|
99
|
+
<Type>Full</Type>
|
100
|
+
<Status>active</Status>
|
101
|
+
<DateCreated>Wed, 04 Aug 2010 21:37:41 +0000</DateCreated>
|
102
|
+
<DateUpdated>Fri, 06 Aug 2010 01:15:02 +0000</DateUpdated>
|
103
|
+
<AuthToken>redacted</AuthToken>
|
104
|
+
<Uri>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d</Uri>
|
105
|
+
<SubresourceUris>
|
106
|
+
<AvailablePhoneNumbers>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/AvailablePhoneNumbers</AvailablePhoneNumbers>
|
107
|
+
<Calls>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/Calls</Calls>
|
108
|
+
<Conferences>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/Conferences</Conferences>
|
109
|
+
<IncomingPhoneNumbers>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/IncomingPhoneNumbers</IncomingPhoneNumbers>
|
110
|
+
<Notifications>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/Notifications</Notifications>
|
111
|
+
<OutgoingCallerIds>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/OutgoingCallerIds</OutgoingCallerIds>
|
112
|
+
<Recordings>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/Recordings</Recordings>
|
113
|
+
<Sandbox>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/Sandbox</Sandbox>
|
114
|
+
<SMSMessages>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/SMS/Messages</SMSMessages>
|
115
|
+
<Transcriptions>/2010-04-01/Accounts/ACba8bc05eacf94afdae398e642c9cc32d/Transcriptions</Transcriptions>
|
116
|
+
</SubresourceUris>
|
117
|
+
</Account>
|
118
|
+
</TwilioResponse>
|
87
119
|
END
|
88
120
|
end
|
89
121
|
|
@@ -95,247 +127,407 @@ END
|
|
95
127
|
|
96
128
|
def self.all_calls
|
97
129
|
<<END
|
98
|
-
<TwilioResponse>
|
99
|
-
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
100
|
-
<Call>
|
101
|
-
<Sid>CA42ed11f93dc08b952027ffbc406d0868</Sid>
|
102
|
-
<DateCreated>
|
103
|
-
<DateUpdated>
|
104
|
-
<
|
105
|
-
<AccountSid>
|
106
|
-
<
|
107
|
-
<
|
108
|
-
<PhoneNumberSid>
|
109
|
-
<Status>
|
110
|
-
<StartTime>Thu,
|
111
|
-
<EndTime>Thu,
|
112
|
-
<Duration
|
113
|
-
<Price/>
|
114
|
-
<
|
115
|
-
|
116
|
-
|
117
|
-
<
|
118
|
-
<
|
119
|
-
<
|
120
|
-
<
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
<
|
127
|
-
<
|
128
|
-
<
|
129
|
-
<
|
130
|
-
<
|
131
|
-
|
132
|
-
|
133
|
-
</
|
130
|
+
<TwilioResponse>
|
131
|
+
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
132
|
+
<Call>
|
133
|
+
<Sid>CA42ed11f93dc08b952027ffbc406d0868</Sid>
|
134
|
+
<DateCreated>Fri, 13 Aug 2010 01:16:22 +0000</DateCreated>
|
135
|
+
<DateUpdated>Fri, 13 Aug 2010 01:16:22 +0000</DateUpdated>
|
136
|
+
<ParentCallSid/>
|
137
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
138
|
+
<To>+15304551166</To>
|
139
|
+
<From>+15105555555</From>
|
140
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
141
|
+
<Status>queued</Status>
|
142
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
143
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
144
|
+
<Duration/>
|
145
|
+
<Price/>
|
146
|
+
<Direction>outbound-api</Direction>
|
147
|
+
<AnsweredBy/>
|
148
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
149
|
+
<ForwardedFrom/>
|
150
|
+
<CallerName/>
|
151
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
152
|
+
<SubresourceUris>
|
153
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
154
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
155
|
+
</SubresourceUris>
|
156
|
+
</Call>
|
157
|
+
<Call>
|
158
|
+
<Sid>CA751e8fa0a0105cf26a0d7a9775fb4bfb</Sid>
|
159
|
+
<DateCreated>Fri, 13 Aug 2010 01:16:22 +0000</DateCreated>
|
160
|
+
<DateUpdated>Fri, 13 Aug 2010 01:16:22 +0000</DateUpdated>
|
161
|
+
<ParentCallSid/>
|
162
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
163
|
+
<To>+15304551166</To>
|
164
|
+
<From>+15105555555</From>
|
165
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
166
|
+
<Status>queued</Status>
|
167
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
168
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
169
|
+
<Duration/>
|
170
|
+
<Price/>
|
171
|
+
<Direction>outbound-api</Direction>
|
172
|
+
<AnsweredBy/>
|
173
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
174
|
+
<ForwardedFrom/>
|
175
|
+
<CallerName/>
|
176
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
177
|
+
<SubresourceUris>
|
178
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
179
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
180
|
+
</SubresourceUris>
|
181
|
+
</Call>
|
182
|
+
</Calls>
|
183
|
+
</TwilioResponse>
|
134
184
|
END
|
135
185
|
end
|
136
186
|
|
137
187
|
def self.succeeded_calls
|
138
188
|
<<END
|
139
|
-
<TwilioResponse>
|
140
|
-
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
141
|
-
<Call>
|
142
|
-
<Sid>CA42ed11f93dc08b952027ffbc406d0868</Sid>
|
189
|
+
<TwilioResponse>
|
190
|
+
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
191
|
+
<Call>
|
192
|
+
<Sid>CA42ed11f93dc08b952027ffbc406d0868</Sid>
|
143
193
|
<DateCreated>Sat, 07 Feb 2009 13:15:19 -0800</DateCreated>
|
144
194
|
<DateUpdated>Sat, 07 Feb 2009 13:15:19 -0800</DateUpdated>
|
145
|
-
<
|
146
|
-
<AccountSid>
|
147
|
-
<
|
148
|
-
<
|
149
|
-
<PhoneNumberSid>
|
150
|
-
<Status>
|
151
|
-
<StartTime>Thu,
|
152
|
-
<EndTime>Thu,
|
153
|
-
<Duration>14</Duration>
|
154
|
-
<Price/>
|
155
|
-
<
|
156
|
-
|
157
|
-
|
158
|
-
<
|
195
|
+
<ParentCallSid/>
|
196
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
197
|
+
<To>+15304551166</To>
|
198
|
+
<From>+15105555555</From>
|
199
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
200
|
+
<Status>completed</Status>
|
201
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
202
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
203
|
+
<Duration>14</Duration>
|
204
|
+
<Price/>
|
205
|
+
<Direction>outbound-api</Direction>
|
206
|
+
<AnsweredBy/>
|
207
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
208
|
+
<ForwardedFrom/>
|
209
|
+
<CallerName/>
|
210
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
211
|
+
<SubresourceUris>
|
212
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
213
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
214
|
+
</SubresourceUris>
|
215
|
+
</Call>
|
216
|
+
<Call>
|
217
|
+
<Sid>1000</Sid>
|
159
218
|
<DateCreated>Sat, 07 Feb 2009 13:15:19 -0800</DateCreated>
|
160
219
|
<DateUpdated>Sat, 07 Feb 2009 13:15:19 -0800</DateUpdated>
|
161
|
-
<
|
162
|
-
<AccountSid>
|
163
|
-
<
|
164
|
-
<
|
165
|
-
<PhoneNumberSid>
|
166
|
-
<Status>
|
167
|
-
<StartTime>Thu,
|
168
|
-
<EndTime>Thu,
|
169
|
-
<Duration>14</Duration>
|
170
|
-
<Price/>
|
171
|
-
<
|
220
|
+
<ParentCallSid/>
|
221
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
222
|
+
<To>+15304551166</To>
|
223
|
+
<From>+15105555555</From>
|
224
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
225
|
+
<Status>completed</Status>
|
226
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
227
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
228
|
+
<Duration>14</Duration>
|
229
|
+
<Price/>
|
230
|
+
<Direction>outbound-api</Direction>
|
231
|
+
<AnsweredBy/>
|
232
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
233
|
+
<ForwardedFrom/>
|
234
|
+
<CallerName/>
|
235
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
236
|
+
<SubresourceUris>
|
237
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
238
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
239
|
+
</SubresourceUris>
|
172
240
|
</Call>
|
173
|
-
<Call>
|
174
|
-
<Sid>1001</Sid>
|
241
|
+
<Call>
|
242
|
+
<Sid>1001</Sid>
|
175
243
|
<DateCreated>Sat, 07 Feb 2009 13:15:19 -0800</DateCreated>
|
176
244
|
<DateUpdated>Sat, 07 Feb 2009 13:15:19 -0800</DateUpdated>
|
177
|
-
<
|
178
|
-
<AccountSid>
|
179
|
-
<
|
180
|
-
<
|
181
|
-
<PhoneNumberSid>
|
182
|
-
<Status>
|
183
|
-
<StartTime>Thu,
|
184
|
-
<EndTime>Thu,
|
185
|
-
<Duration>14</Duration>
|
186
|
-
<Price/>
|
187
|
-
<
|
245
|
+
<ParentCallSid/>
|
246
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
247
|
+
<To>+15304551166</To>
|
248
|
+
<From>+15105555555</From>
|
249
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
250
|
+
<Status>completed</Status>
|
251
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
252
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
253
|
+
<Duration>14</Duration>
|
254
|
+
<Price/>
|
255
|
+
<Direction>outbound-api</Direction>
|
256
|
+
<AnsweredBy/>
|
257
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
258
|
+
<ForwardedFrom/>
|
259
|
+
<CallerName/>
|
260
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
261
|
+
<SubresourceUris>
|
262
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
263
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
264
|
+
</SubresourceUris>
|
188
265
|
</Call>
|
189
|
-
<Call>
|
190
|
-
<Sid>1002</Sid>
|
266
|
+
<Call>
|
267
|
+
<Sid>1002</Sid>
|
191
268
|
<DateCreated>Sat, 07 Feb 2009 13:15:19 -0800</DateCreated>
|
192
269
|
<DateUpdated>Sat, 07 Feb 2009 13:15:19 -0800</DateUpdated>
|
193
|
-
<
|
194
|
-
<AccountSid>
|
195
|
-
<
|
196
|
-
<
|
197
|
-
<PhoneNumberSid>
|
198
|
-
<Status>
|
199
|
-
<StartTime>Thu,
|
200
|
-
<EndTime>Thu,
|
201
|
-
<Duration>14</Duration>
|
202
|
-
<Price/>
|
203
|
-
<
|
270
|
+
<ParentCallSid/>
|
271
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
272
|
+
<To>+15304551166</To>
|
273
|
+
<From>+15105555555</From>
|
274
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
275
|
+
<Status>completed</Status>
|
276
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
277
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
278
|
+
<Duration>14</Duration>
|
279
|
+
<Price/>
|
280
|
+
<Direction>outbound-api</Direction>
|
281
|
+
<AnsweredBy/>
|
282
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
283
|
+
<ForwardedFrom/>
|
284
|
+
<CallerName/>
|
285
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
286
|
+
<SubresourceUris>
|
287
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
288
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
289
|
+
</SubresourceUris>
|
204
290
|
</Call>
|
205
|
-
<Call>
|
206
|
-
<Sid>1003</Sid>
|
291
|
+
<Call>
|
292
|
+
<Sid>1003</Sid>
|
207
293
|
<DateCreated>Sat, 07 Feb 2009 13:15:19 -0800</DateCreated>
|
208
294
|
<DateUpdated>Sat, 07 Feb 2009 13:15:19 -0800</DateUpdated>
|
209
|
-
<
|
210
|
-
<AccountSid>
|
211
|
-
<
|
212
|
-
<
|
213
|
-
<PhoneNumberSid>
|
214
|
-
<Status>
|
215
|
-
<StartTime>Thu,
|
216
|
-
<EndTime>Thu,
|
217
|
-
<Duration>14</Duration>
|
218
|
-
<Price/>
|
219
|
-
<
|
295
|
+
<ParentCallSid/>
|
296
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
297
|
+
<To>+15304551166</To>
|
298
|
+
<From>+15105555555</From>
|
299
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
300
|
+
<Status>completed</Status>
|
301
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
302
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
303
|
+
<Duration>14</Duration>
|
304
|
+
<Price/>
|
305
|
+
<Direction>outbound-api</Direction>
|
306
|
+
<AnsweredBy/>
|
307
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
308
|
+
<ForwardedFrom/>
|
309
|
+
<CallerName/>
|
310
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
311
|
+
<SubresourceUris>
|
312
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
313
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
314
|
+
</SubresourceUris>
|
220
315
|
</Call>
|
221
|
-
<Call>
|
222
|
-
<Sid>AVENDORIDAVENDORIDAVENDORID</Sid>
|
316
|
+
<Call>
|
317
|
+
<Sid>AVENDORIDAVENDORIDAVENDORID</Sid>
|
223
318
|
<DateCreated>Sat, 07 Feb 2009 13:15:19 -0800</DateCreated>
|
224
319
|
<DateUpdated>Sat, 07 Feb 2009 13:15:19 -0800</DateUpdated>
|
225
|
-
<
|
226
|
-
<AccountSid>
|
227
|
-
<
|
228
|
-
<
|
229
|
-
<PhoneNumberSid>
|
230
|
-
<Status>
|
231
|
-
<StartTime>Thu,
|
232
|
-
<EndTime>Thu,
|
233
|
-
<Duration>14</Duration>
|
234
|
-
<Price/>
|
235
|
-
<
|
320
|
+
<ParentCallSid/>
|
321
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
322
|
+
<To>+15304551166</To>
|
323
|
+
<From>+15105555555</From>
|
324
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
325
|
+
<Status>completed</Status>
|
326
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
327
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
328
|
+
<Duration>14</Duration>
|
329
|
+
<Price/>
|
330
|
+
<Direction>outbound-api</Direction>
|
331
|
+
<AnsweredBy/>
|
332
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
333
|
+
<ForwardedFrom/>
|
334
|
+
<CallerName/>
|
335
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
336
|
+
<SubresourceUris>
|
337
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
338
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
339
|
+
</SubresourceUris>
|
236
340
|
</Call>
|
237
|
-
</Calls>
|
238
|
-
</TwilioResponse>
|
341
|
+
</Calls>
|
342
|
+
</TwilioResponse>
|
239
343
|
END
|
240
344
|
end
|
241
345
|
|
242
346
|
def self.recent_calls
|
243
347
|
<<END
|
244
|
-
<TwilioResponse>
|
245
|
-
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
246
|
-
<Call>
|
247
|
-
<Sid>CA42ed11f93dc08b952027ffbc406d0868</Sid>
|
348
|
+
<TwilioResponse>
|
349
|
+
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
350
|
+
<Call>
|
351
|
+
<Sid>CA42ed11f93dc08b952027ffbc406d0868</Sid>
|
248
352
|
<DateCreated>Sat, 07 Feb 2009 13:15:19 -0800</DateCreated>
|
249
353
|
<DateUpdated>Sat, 07 Feb 2009 13:15:19 -0800</DateUpdated>
|
250
|
-
<
|
251
|
-
<AccountSid>
|
252
|
-
<
|
253
|
-
<
|
254
|
-
<PhoneNumberSid>
|
255
|
-
<Status>
|
256
|
-
<StartTime>Thu,
|
257
|
-
<EndTime>Thu,
|
258
|
-
<Duration>14</Duration>
|
259
|
-
<Price/>
|
260
|
-
<
|
354
|
+
<ParentCallSid/>
|
355
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
356
|
+
<To>+15304551166</To>
|
357
|
+
<From>+15105555555</From>
|
358
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
359
|
+
<Status>completed</Status>
|
360
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
361
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
362
|
+
<Duration>14</Duration>
|
363
|
+
<Price/>
|
364
|
+
<Direction>outbound-api</Direction>
|
365
|
+
<AnsweredBy/>
|
366
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
367
|
+
<ForwardedFrom/>
|
368
|
+
<CallerName/>
|
369
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
370
|
+
<SubresourceUris>
|
371
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
372
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
373
|
+
</SubresourceUris>
|
261
374
|
</Call>
|
262
|
-
</Calls>
|
263
|
-
</TwilioResponse>
|
375
|
+
</Calls>
|
376
|
+
</TwilioResponse>
|
264
377
|
END
|
265
378
|
end
|
266
379
|
|
267
380
|
|
268
381
|
def self.succeeded_recent_calls
|
269
382
|
<<END
|
270
|
-
<TwilioResponse>
|
271
|
-
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
272
|
-
<Call>
|
273
|
-
<Sid>CA42ed11f93dc08b952027ffbc406d0868</Sid>
|
383
|
+
<TwilioResponse>
|
384
|
+
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
385
|
+
<Call>
|
386
|
+
<Sid>CA42ed11f93dc08b952027ffbc406d0868</Sid>
|
274
387
|
<DateCreated>Sat, 07 Feb 2009 13:15:19 -0800</DateCreated>
|
275
388
|
<DateUpdated>Sat, 07 Feb 2009 13:15:19 -0800</DateUpdated>
|
276
|
-
<
|
277
|
-
<AccountSid>
|
278
|
-
<
|
279
|
-
<
|
280
|
-
<PhoneNumberSid>
|
281
|
-
<Status>
|
282
|
-
<StartTime>Thu,
|
283
|
-
<EndTime>Thu,
|
284
|
-
<Duration>14</Duration>
|
285
|
-
<Price/>
|
286
|
-
<
|
389
|
+
<ParentCallSid/>
|
390
|
+
<AccountSid>AC5ef877a5fe4238be081ea6f3c44186f3</AccountSid>
|
391
|
+
<To>+15304551166</To>
|
392
|
+
<From>+15105555555</From>
|
393
|
+
<PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
|
394
|
+
<Status>completed</Status>
|
395
|
+
<StartTime>Thu, 12 Aug 2010 01:37:05 +0000</StartTime>
|
396
|
+
<EndTime>Thu, 12 Aug 2010 01:37:40 +0000</EndTime>
|
397
|
+
<Duration>14</Duration>
|
398
|
+
<Price/>
|
399
|
+
<Direction>outbound-api</Direction>
|
400
|
+
<AnsweredBy/>
|
401
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
402
|
+
<ForwardedFrom/>
|
403
|
+
<CallerName/>
|
404
|
+
<Uri>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
|
405
|
+
<SubresourceUris>
|
406
|
+
<Notifications>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
|
407
|
+
<Recordings>/2010-04-01/Accounts/AC5ef877a5fe4238be081ea6f3c44186f3/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
|
408
|
+
</SubresourceUris>
|
287
409
|
</Call>
|
288
|
-
</Calls>
|
289
|
-
</TwilioResponse>
|
410
|
+
</Calls>
|
411
|
+
</TwilioResponse>
|
290
412
|
END
|
291
413
|
end
|
292
414
|
|
293
415
|
def self.no_calls
|
294
416
|
<<END
|
295
|
-
<TwilioResponse>
|
296
|
-
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
297
|
-
</Calls>
|
298
|
-
</TwilioResponse>
|
417
|
+
<TwilioResponse>
|
418
|
+
<Calls page="0" numpages="1" pagesize="50" total="38" start="0" end="37">
|
419
|
+
</Calls>
|
420
|
+
</TwilioResponse>
|
299
421
|
END
|
300
422
|
end
|
301
423
|
|
302
424
|
def self.local_number_provision_success
|
303
425
|
<<END
|
304
|
-
<TwilioResponse>
|
305
|
-
<IncomingPhoneNumber>
|
306
|
-
<Sid>PNe536dfda7c6184afab78d980cb8cdf43</Sid>
|
307
|
-
<AccountSid>
|
308
|
-
<FriendlyName>My Local Number</FriendlyName>
|
309
|
-
<PhoneNumber>2064567890</PhoneNumber>
|
310
|
-
<
|
311
|
-
<
|
312
|
-
<
|
313
|
-
<
|
314
|
-
|
315
|
-
|
426
|
+
<TwilioResponse>
|
427
|
+
<IncomingPhoneNumber>
|
428
|
+
<Sid>PNe536dfda7c6184afab78d980cb8cdf43</Sid>
|
429
|
+
<AccountSid>AC755325d45d80675a4727a7a54e1b4ce4</AccountSid>
|
430
|
+
<FriendlyName>My Local Number</FriendlyName>
|
431
|
+
<PhoneNumber>2064567890</PhoneNumber>
|
432
|
+
<VoiceUrl>http://myapp.com/awesome</VoiceUrl>
|
433
|
+
<VoiceMethod>POST</VoiceMethod>
|
434
|
+
<VoiceFallbackUrl/>
|
435
|
+
<VoiceFallbackMethod>POST</VoiceFallbackMethod>
|
436
|
+
<VoiceCallerIdLookup>false</VoiceCallerIdLookup>
|
437
|
+
<VoiceApplicationSid/>
|
438
|
+
<DateCreated>Mon, 16 Aug 2010 23:00:23 +0000</DateCreated>
|
439
|
+
<DateUpdated>Mon, 16 Aug 2010 23:00:23 +0000</DateUpdated>
|
440
|
+
<SmsUrl>http://myapp.com/awesome</SmsUrl>
|
441
|
+
<SmsMethod>POST</SmsMethod>
|
442
|
+
<SmsFallbackUrl/>
|
443
|
+
<SmsFallbackMethod>GET</SmsFallbackMethod>
|
444
|
+
<SmsApplicationSid/>
|
445
|
+
<Capabilities>
|
446
|
+
<Voice>true</Voice>
|
447
|
+
<SMS>true</SMS>
|
448
|
+
</Capabilities>
|
449
|
+
<StatusCallback/>
|
450
|
+
<StatusCallbackMethod/>
|
451
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
452
|
+
<Uri>/2010-04-01/Accounts/AC755325d45d80675a4727a7a54e1b4ce4/IncomingPhoneNumbers/PN2a0747eba6abf96b7e3c3ff0b4530f6e</Uri>
|
453
|
+
</IncomingPhoneNumber>
|
454
|
+
</TwilioResponse>
|
316
455
|
END
|
317
456
|
end
|
318
457
|
|
319
458
|
def self.toll_free_number_provision_success
|
320
459
|
<<END
|
321
|
-
<TwilioResponse>
|
322
|
-
<IncomingPhoneNumber>
|
323
|
-
<Sid>PNe536dfda7c6184afab78d980cb8cdf43</Sid>
|
324
|
-
<AccountSid>AC35542fc30a091bed0c1ed511e1d9935d</AccountSid>
|
325
|
-
<FriendlyName>My Toll Free Number</FriendlyName>
|
326
|
-
<PhoneNumber>8774567890</PhoneNumber>
|
327
|
-
<
|
328
|
-
<
|
329
|
-
<
|
330
|
-
<
|
331
|
-
|
332
|
-
|
460
|
+
<TwilioResponse>
|
461
|
+
<IncomingPhoneNumber>
|
462
|
+
<Sid>PNe536dfda7c6184afab78d980cb8cdf43</Sid>
|
463
|
+
<AccountSid>AC35542fc30a091bed0c1ed511e1d9935d</AccountSid>
|
464
|
+
<FriendlyName>My Toll Free Number</FriendlyName>
|
465
|
+
<PhoneNumber>8774567890</PhoneNumber>
|
466
|
+
<VoiceUrl>http://myapp.com/awesome</VoiceUrl>
|
467
|
+
<VoiceMethod>POST</VoiceMethod>
|
468
|
+
<VoiceFallbackUrl/>
|
469
|
+
<VoiceFallbackMethod>POST</VoiceFallbackMethod>
|
470
|
+
<VoiceCallerIdLookup>false</VoiceCallerIdLookup>
|
471
|
+
<VoiceApplicationSid/>
|
472
|
+
<DateCreated>Mon, 16 Aug 2010 23:00:23 +0000</DateCreated>
|
473
|
+
<DateUpdated>Mon, 16 Aug 2010 23:00:23 +0000</DateUpdated>
|
474
|
+
<SmsUrl>http://myapp.com/awesome</SmsUrl>
|
475
|
+
<SmsMethod>POST</SmsMethod>
|
476
|
+
<SmsFallbackUrl/>
|
477
|
+
<SmsFallbackMethod>GET</SmsFallbackMethod>
|
478
|
+
<SmsApplicationSid/>
|
479
|
+
<Capabilities>
|
480
|
+
<Voice>true</Voice>
|
481
|
+
<SMS>true</SMS>
|
482
|
+
</Capabilities>
|
483
|
+
<StatusCallback/>
|
484
|
+
<StatusCallbackMethod/>
|
485
|
+
<ApiVersion>2010-04-01</ApiVersion>
|
486
|
+
<Uri>/2010-04-01/Accounts/AC755325d45d80675a4727a7a54e1b4ce4/IncomingPhoneNumbers/PN2a0747eba6abf96b7e3c3ff0b4530f6e</Uri>
|
487
|
+
</IncomingPhoneNumber>
|
488
|
+
</TwilioResponse>
|
333
489
|
END
|
334
490
|
end
|
335
491
|
|
336
492
|
def self.no_local_number
|
337
493
|
<<END
|
338
494
|
<TwilioResponse><RestException><Status>400</Status><Message>No phone numbers found</Message><Code>21452</Code><MoreInfo>http://www.twilio.com/docs/errors/21452</MoreInfo></RestException></TwilioResponse>
|
495
|
+
END
|
496
|
+
end
|
497
|
+
|
498
|
+
def self.all_caller_ids
|
499
|
+
<<END
|
500
|
+
<TwilioResponse>
|
501
|
+
<OutgoingCallerIds page="0" numpages="1" pagesize="50" total="1" start="0" end="0" uri="/2010-04-01/Accounts/AC228ba7a5fe4238be081ea6f3c44186f3/OutgoingCallerIds" firstpageuri="/2010-04-01/Accounts/AC228ba7a5fe4238be081ea6f3c44186f3/OutgoingCallerIds?Page=0&PageSize=50" previouspageuri="" nextpageuri="" lastpageuri="/2010-04-01/Accounts/AC228ba7a5fe4238be081ea6f3c44186f3/OutgoingCallerIds?Page=0&PageSize=50">
|
502
|
+
<OutgoingCallerId>
|
503
|
+
<Sid>PNe905d7e6b410746a0fb08c57e5a186f3</Sid>
|
504
|
+
<AccountSid>AC228ba7a5fe4238be081ea6f3c44186f3</AccountSid>
|
505
|
+
<FriendlyName>Foo</FriendlyName>
|
506
|
+
<PhoneNumber>+15105555555</PhoneNumber>
|
507
|
+
<DateCreated>Tue, 27 Jul 2010 20:21:11 +0000</DateCreated>
|
508
|
+
<DateUpdated>Tue, 27 Jul 2010 20:21:11 +0000</DateUpdated>
|
509
|
+
<Uri>/2010-04-01/Accounts/AC228ba7a5fe4238be081ea6f3c44186f3/OutgoingCallerIds/PNe905d7e6b410746a0fb08c57e5a186f3</Uri>
|
510
|
+
</OutgoingCallerId>
|
511
|
+
</OutgoingCallerIds>
|
512
|
+
</TwilioResponse>
|
513
|
+
END
|
514
|
+
end
|
515
|
+
|
516
|
+
def self.friendly_name_caller_ids
|
517
|
+
<<END
|
518
|
+
<TwilioResponse>
|
519
|
+
<OutgoingCallerIds page="0" numpages="1" pagesize="50" total="1" start="0" end="0" uri="/2010-04-01/Accounts/AC228ba7a5fe4238be081ea6f3c44186f3/OutgoingCallerIds" firstpageuri="/2010-04-01/Accounts/AC228ba7a5fe4238be081ea6f3c44186f3/OutgoingCallerIds?Page=0&PageSize=50" previouspageuri="" nextpageuri="" lastpageuri="/2010-04-01/Accounts/AC228ba7a5fe4238be081ea6f3c44186f3/OutgoingCallerIds?Page=0&PageSize=50">
|
520
|
+
<OutgoingCallerId>
|
521
|
+
<Sid>PNe905d7e6b410746a0fb08c57e5a186f3</Sid>
|
522
|
+
<AccountSid>AC228ba7a5fe4238be081ea6f3c44186f3</AccountSid>
|
523
|
+
<FriendlyName>Foo</FriendlyName>
|
524
|
+
<PhoneNumber>+15105555555</PhoneNumber>
|
525
|
+
<DateCreated>Tue, 27 Jul 2010 20:21:11 +0000</DateCreated>
|
526
|
+
<DateUpdated>Tue, 27 Jul 2010 20:21:11 +0000</DateUpdated>
|
527
|
+
<Uri>/2010-04-01/Accounts/AC228ba7a5fe4238be081ea6f3c44186f3/OutgoingCallerIds/PNe905d7e6b410746a0fb08c57e5a186f3</Uri>
|
528
|
+
</OutgoingCallerId>
|
529
|
+
</OutgoingCallerIds>
|
530
|
+
</TwilioResponse>
|
339
531
|
END
|
340
532
|
end
|
341
533
|
|
metadata
CHANGED
@@ -1,52 +1,41 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: twilio_resource
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
6
|
-
- 0
|
7
|
-
- 2
|
8
|
-
- 0
|
9
|
-
version: 0.2.0
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.0
|
5
|
+
prerelease:
|
10
6
|
platform: ruby
|
11
|
-
authors:
|
7
|
+
authors:
|
12
8
|
- Justin Weiss
|
13
9
|
autorequire:
|
14
10
|
bindir: bin
|
15
11
|
cert_chain: []
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
dependencies:
|
20
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2012-03-07 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
21
15
|
name: reactive_resource
|
22
|
-
|
23
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70218984544920 !ruby/object:Gem::Requirement
|
24
17
|
none: false
|
25
|
-
requirements:
|
26
|
-
- -
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
|
29
|
-
- 0
|
30
|
-
- 5
|
31
|
-
- 1
|
32
|
-
version: 0.5.1
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.7.0
|
33
22
|
type: :runtime
|
34
|
-
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *70218984544920
|
35
25
|
description:
|
36
26
|
email: justin@uberweiss.org
|
37
27
|
executables: []
|
38
|
-
|
39
28
|
extensions: []
|
40
|
-
|
41
|
-
extra_rdoc_files:
|
29
|
+
extra_rdoc_files:
|
42
30
|
- README.md
|
43
|
-
files:
|
31
|
+
files:
|
44
32
|
- lib/twilio_resource/account.rb
|
45
33
|
- lib/twilio_resource/base.rb
|
46
34
|
- lib/twilio_resource/call.rb
|
47
35
|
- lib/twilio_resource/exceptions.rb
|
48
36
|
- lib/twilio_resource/incoming_phone_number.rb
|
49
37
|
- lib/twilio_resource/local_incoming_phone_number.rb
|
38
|
+
- lib/twilio_resource/outgoing_caller_id.rb
|
50
39
|
- lib/twilio_resource/toll_free_incoming_phone_number.rb
|
51
40
|
- lib/twilio_resource/twilio_format.rb
|
52
41
|
- lib/twilio_resource.rb
|
@@ -54,45 +43,39 @@ files:
|
|
54
43
|
- test/call_test.rb
|
55
44
|
- test/incoming_phone_number_test.rb
|
56
45
|
- test/local_incoming_phone_number_test.rb
|
46
|
+
- test/outgoing_caller_id_test.rb
|
57
47
|
- test/test_helper.rb
|
58
48
|
- test/toll_free_incoming_phone_number_test.rb
|
59
49
|
- test/twilio_mock.rb
|
60
50
|
- README.md
|
61
|
-
has_rdoc: true
|
62
51
|
homepage: http://github.com/justinweiss/twilio_resource
|
63
52
|
licenses: []
|
64
|
-
|
65
53
|
post_install_message:
|
66
54
|
rdoc_options: []
|
67
|
-
|
68
|
-
require_paths:
|
55
|
+
require_paths:
|
69
56
|
- lib
|
70
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
57
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
71
58
|
none: false
|
72
|
-
requirements:
|
73
|
-
- -
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
|
76
|
-
|
77
|
-
version: "0"
|
78
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - ! '>='
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0'
|
63
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
79
64
|
none: false
|
80
|
-
requirements:
|
81
|
-
- -
|
82
|
-
- !ruby/object:Gem::Version
|
83
|
-
|
84
|
-
- 0
|
85
|
-
version: "0"
|
65
|
+
requirements:
|
66
|
+
- - ! '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
86
69
|
requirements: []
|
87
|
-
|
88
70
|
rubyforge_project:
|
89
|
-
rubygems_version: 1.
|
71
|
+
rubygems_version: 1.8.10
|
90
72
|
signing_key:
|
91
73
|
specification_version: 3
|
92
74
|
summary: An ActiveResource API wrapper for Twilio
|
93
|
-
test_files:
|
75
|
+
test_files:
|
94
76
|
- test/account_test.rb
|
95
77
|
- test/call_test.rb
|
96
78
|
- test/incoming_phone_number_test.rb
|
97
79
|
- test/local_incoming_phone_number_test.rb
|
80
|
+
- test/outgoing_caller_id_test.rb
|
98
81
|
- test/toll_free_incoming_phone_number_test.rb
|