twilio-ruby 5.42.0 → 5.43.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.md +27 -0
- data/README.md +18 -2
- data/lib/twilio-ruby.rb +1 -1
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +20 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
- data/lib/twilio-ruby/rest/client.rb +29 -3
- data/lib/twilio-ruby/rest/events/v1/subscription.rb +12 -5
- data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +1 -8
- data/lib/twilio-ruby/rest/serverless/v1/service.rb +5 -5
- data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +4 -4
- data/lib/twilio-ruby/rest/sync/v1/service/document.rb +15 -5
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +15 -5
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +28 -5
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +15 -5
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +28 -5
- data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +15 -5
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +12 -9
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +16 -16
- data/lib/twilio-ruby/rest/verify/v2/service.rb +3 -3
- data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +3 -1
- data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +5 -3
- data/lib/twilio-ruby/util/configuration.rb +5 -1
- data/lib/twilio-ruby/version.rb +1 -1
- data/spec/integration/api/v2010/account/call/event_spec.rb +102 -0
- data/spec/integration/api/v2010/account/call_spec.rb +20 -10
- data/spec/integration/events/v1/subscription_spec.rb +49 -0
- data/spec/integration/insights/v1/room/participant_spec.rb +0 -2
- data/spec/rest/client_spec.rb +24 -2
- data/twilio-ruby.gemspec +1 -0
- metadata +19 -2
@@ -26,7 +26,7 @@ module Twilio
|
|
26
26
|
##
|
27
27
|
# Create the ServiceInstance
|
28
28
|
# @param [String] friendly_name A descriptive string that you create to describe
|
29
|
-
# the verification service. It can be up to
|
29
|
+
# the verification service. It can be up to 30 characters long. **This value
|
30
30
|
# should not contain PII.**
|
31
31
|
# @param [String] code_length The length of the verification code to generate.
|
32
32
|
# Must be an integer value between 4 and 10, inclusive.
|
@@ -241,7 +241,7 @@ module Twilio
|
|
241
241
|
##
|
242
242
|
# Update the ServiceInstance
|
243
243
|
# @param [String] friendly_name A descriptive string that you create to describe
|
244
|
-
# the verification service. It can be up to
|
244
|
+
# the verification service. It can be up to 30 characters long. **This value
|
245
245
|
# should not contain PII.**
|
246
246
|
# @param [String] code_length The length of the verification code to generate.
|
247
247
|
# Must be an integer value between 4 and 10, inclusive.
|
@@ -584,7 +584,7 @@ module Twilio
|
|
584
584
|
##
|
585
585
|
# Update the ServiceInstance
|
586
586
|
# @param [String] friendly_name A descriptive string that you create to describe
|
587
|
-
# the verification service. It can be up to
|
587
|
+
# the verification service. It can be up to 30 characters long. **This value
|
588
588
|
# should not contain PII.**
|
589
589
|
# @param [String] code_length The length of the verification code to generate.
|
590
590
|
# Must be an integer value between 4 and 10, inclusive.
|
@@ -30,7 +30,9 @@ module Twilio
|
|
30
30
|
##
|
31
31
|
# Create the EntityInstance
|
32
32
|
# @param [String] identity The unique external identifier for the Entity of the
|
33
|
-
# Service
|
33
|
+
# Service. This identifier should be immutable, not PII, length between 8 and 64
|
34
|
+
# characters, and generated by your external system, such as your user's UUID,
|
35
|
+
# GUID, or SID.
|
34
36
|
# @return [EntityInstance] Created EntityInstance
|
35
37
|
def create(identity: nil)
|
36
38
|
data = Twilio::Values.of({'Identity' => identity, })
|
@@ -33,8 +33,10 @@ module Twilio
|
|
33
33
|
##
|
34
34
|
# Create the ChallengeInstance
|
35
35
|
# @param [String] factor_sid The unique SID identifier of the Factor.
|
36
|
-
# @param [Time] expiration_date The
|
37
|
-
#
|
36
|
+
# @param [Time] expiration_date The date-time when this Challenge expires, given
|
37
|
+
# in {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] format. The default value
|
38
|
+
# is five (5) minutes after Challenge creation. The max value is sixty (60)
|
39
|
+
# minutes after creation.
|
38
40
|
# @param [String] details_message Shown to the user when the push notification
|
39
41
|
# arrives. Required when `factor_type` is `push`
|
40
42
|
# @param [Hash] details_fields A list of objects that describe the Fields included
|
@@ -379,7 +381,7 @@ module Twilio
|
|
379
381
|
end
|
380
382
|
|
381
383
|
##
|
382
|
-
# @return [Time] The date this Challenge
|
384
|
+
# @return [Time] The date-time when this Challenge expires
|
383
385
|
def expiration_date
|
384
386
|
@properties['expiration_date']
|
385
387
|
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Twilio
|
4
4
|
module Util
|
5
5
|
class Configuration
|
6
|
-
attr_accessor :account_sid, :auth_token, :http_client, :region, :edge
|
6
|
+
attr_accessor :account_sid, :auth_token, :http_client, :region, :edge, :logger
|
7
7
|
|
8
8
|
def account_sid=(value)
|
9
9
|
@account_sid = value
|
@@ -24,6 +24,10 @@ module Twilio
|
|
24
24
|
def edge=(value)
|
25
25
|
@edge = value
|
26
26
|
end
|
27
|
+
|
28
|
+
def logger=(value)
|
29
|
+
@logger = value
|
30
|
+
end
|
27
31
|
end
|
28
32
|
end
|
29
33
|
end
|
data/lib/twilio-ruby/version.rb
CHANGED
@@ -0,0 +1,102 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# \ / _ _ _| _ _
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
5
|
+
# / /
|
6
|
+
#
|
7
|
+
# frozen_string_literal: true
|
8
|
+
|
9
|
+
require 'spec_helper.rb'
|
10
|
+
|
11
|
+
describe 'Event' do
|
12
|
+
it "can read" do
|
13
|
+
@holodeck.mock(Twilio::Response.new(500, ''))
|
14
|
+
|
15
|
+
expect {
|
16
|
+
@client.api.v2010.accounts('ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
|
17
|
+
.calls('CAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
|
18
|
+
.events.list()
|
19
|
+
}.to raise_exception(Twilio::REST::TwilioError)
|
20
|
+
|
21
|
+
expect(
|
22
|
+
@holodeck.has_request?(Holodeck::Request.new(
|
23
|
+
method: 'get',
|
24
|
+
url: 'https://api.twilio.com/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Events.json',
|
25
|
+
))).to eq(true)
|
26
|
+
end
|
27
|
+
|
28
|
+
it "receives read_full responses" do
|
29
|
+
@holodeck.mock(Twilio::Response.new(
|
30
|
+
200,
|
31
|
+
%q[
|
32
|
+
{
|
33
|
+
"events": [
|
34
|
+
{
|
35
|
+
"request": {
|
36
|
+
"method": "POST",
|
37
|
+
"url": "https://api.twilio.com/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json",
|
38
|
+
"parameters": {
|
39
|
+
"status_callback_method": "POST",
|
40
|
+
"twiml": "<Response><Say>Hi!</Say></Response>",
|
41
|
+
"trim": "trim-silence",
|
42
|
+
"timeout": "55",
|
43
|
+
"method": "POST",
|
44
|
+
"from": "+987654321",
|
45
|
+
"to": "+123456789",
|
46
|
+
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
47
|
+
"machine_detection_timeout": "0"
|
48
|
+
}
|
49
|
+
},
|
50
|
+
"response": {
|
51
|
+
"response_code": 201,
|
52
|
+
"request_duration": 50,
|
53
|
+
"content_type": "application/json",
|
54
|
+
"response_body": "{\\"sid\\": \\"CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\\"}",
|
55
|
+
"date_created": "Tue, 11 Aug 2020 17:44:08 +0000"
|
56
|
+
}
|
57
|
+
}
|
58
|
+
],
|
59
|
+
"end": 0,
|
60
|
+
"first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json?PageSize=50&Page=0",
|
61
|
+
"next_page_uri": null,
|
62
|
+
"page": 0,
|
63
|
+
"page_size": 50,
|
64
|
+
"previous_page_uri": null,
|
65
|
+
"start": 0,
|
66
|
+
"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json?PageSize=50&Page=0"
|
67
|
+
}
|
68
|
+
]
|
69
|
+
))
|
70
|
+
|
71
|
+
actual = @client.api.v2010.accounts('ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
|
72
|
+
.calls('CAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
|
73
|
+
.events.list()
|
74
|
+
|
75
|
+
expect(actual).to_not eq(nil)
|
76
|
+
end
|
77
|
+
|
78
|
+
it "receives read_empty responses" do
|
79
|
+
@holodeck.mock(Twilio::Response.new(
|
80
|
+
200,
|
81
|
+
%q[
|
82
|
+
{
|
83
|
+
"events": [],
|
84
|
+
"end": 0,
|
85
|
+
"first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json?PageSize=50&Page=0",
|
86
|
+
"next_page_uri": null,
|
87
|
+
"page": 0,
|
88
|
+
"page_size": 50,
|
89
|
+
"previous_page_uri": null,
|
90
|
+
"start": 0,
|
91
|
+
"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json?PageSize=50&Page=0"
|
92
|
+
}
|
93
|
+
]
|
94
|
+
))
|
95
|
+
|
96
|
+
actual = @client.api.v2010.accounts('ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
|
97
|
+
.calls('CAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') \
|
98
|
+
.events.list()
|
99
|
+
|
100
|
+
expect(actual).to_not eq(nil)
|
101
|
+
end
|
102
|
+
end
|
@@ -57,7 +57,8 @@ describe 'Call' do
|
|
57
57
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
58
58
|
"feedback": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Feedback.json",
|
59
59
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
60
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json"
|
60
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json",
|
61
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json"
|
61
62
|
},
|
62
63
|
"to": "+14158675309",
|
63
64
|
"to_formatted": "(415) 867-5309",
|
@@ -105,7 +106,8 @@ describe 'Call' do
|
|
105
106
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
106
107
|
"feedback": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Feedback.json",
|
107
108
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
108
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json"
|
109
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json",
|
110
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json"
|
109
111
|
},
|
110
112
|
"to": "+14158675309",
|
111
113
|
"to_formatted": "(415) 867-5309",
|
@@ -195,7 +197,8 @@ describe 'Call' do
|
|
195
197
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
196
198
|
"feedback": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Feedback.json",
|
197
199
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
198
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json"
|
200
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json",
|
201
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json"
|
199
202
|
},
|
200
203
|
"to": "+13051913581",
|
201
204
|
"to_formatted": "(305) 191-3581",
|
@@ -260,7 +263,8 @@ describe 'Call' do
|
|
260
263
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
261
264
|
"notifications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Notifications.json",
|
262
265
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
263
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json"
|
266
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json",
|
267
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json"
|
264
268
|
},
|
265
269
|
"to": "+13051913581",
|
266
270
|
"to_formatted": "(305) 191-3581",
|
@@ -295,7 +299,8 @@ describe 'Call' do
|
|
295
299
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
296
300
|
"notifications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Notifications.json",
|
297
301
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Recordings.json",
|
298
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Payments.json"
|
302
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Payments.json",
|
303
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Events.json"
|
299
304
|
},
|
300
305
|
"to": "+13051913580",
|
301
306
|
"to_formatted": "(305) 191-3580",
|
@@ -355,7 +360,8 @@ describe 'Call' do
|
|
355
360
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
356
361
|
"notifications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Notifications.json",
|
357
362
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
358
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json"
|
363
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json",
|
364
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json"
|
359
365
|
},
|
360
366
|
"to": "+13051913581",
|
361
367
|
"to_formatted": "(305) 191-3581",
|
@@ -390,7 +396,8 @@ describe 'Call' do
|
|
390
396
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
391
397
|
"notifications": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Notifications.json",
|
392
398
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Recordings.json",
|
393
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Payments.json"
|
399
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Payments.json",
|
400
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa0/Events.json"
|
394
401
|
},
|
395
402
|
"to": "+13051913580",
|
396
403
|
"to_formatted": "(305) 191-3580",
|
@@ -535,7 +542,8 @@ describe 'Call' do
|
|
535
542
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
536
543
|
"feedback": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Feedback.json",
|
537
544
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
538
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json"
|
545
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json",
|
546
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json"
|
539
547
|
},
|
540
548
|
"to": "+14158675309",
|
541
549
|
"to_formatted": "(415) 867-5309",
|
@@ -583,7 +591,8 @@ describe 'Call' do
|
|
583
591
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
584
592
|
"feedback": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Feedback.json",
|
585
593
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
586
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json"
|
594
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json",
|
595
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json"
|
587
596
|
},
|
588
597
|
"to": "+14158675309",
|
589
598
|
"to_formatted": "(415) 867-5309",
|
@@ -631,7 +640,8 @@ describe 'Call' do
|
|
631
640
|
"recordings": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings.json",
|
632
641
|
"feedback": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Feedback.json",
|
633
642
|
"feedback_summaries": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/FeedbackSummary.json",
|
634
|
-
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json"
|
643
|
+
"payments": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Payments.json",
|
644
|
+
"events": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Calls/CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Events.json"
|
635
645
|
},
|
636
646
|
"to": "+14158675309",
|
637
647
|
"to_formatted": "(415) 867-5309",
|
@@ -96,6 +96,55 @@ describe 'Subscription' do
|
|
96
96
|
expect(actual).to_not eq(nil)
|
97
97
|
end
|
98
98
|
|
99
|
+
it "receives read_results_filtered_by_sink_sid responses" do
|
100
|
+
@holodeck.mock(Twilio::Response.new(
|
101
|
+
200,
|
102
|
+
%q[
|
103
|
+
{
|
104
|
+
"subscriptions": [
|
105
|
+
{
|
106
|
+
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
107
|
+
"date_created": "2015-07-30T20:00:00Z",
|
108
|
+
"date_updated": "2015-07-30T20:01:33Z",
|
109
|
+
"sid": "DFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
110
|
+
"sink_sid": "DGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
111
|
+
"description": "A subscription",
|
112
|
+
"url": "https://events.twilio.com/v1/Subscriptions/DFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
113
|
+
"links": {
|
114
|
+
"subscribed_events": "https://events.twilio.com/v1/Subscriptions/DFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/SubscribedEvents"
|
115
|
+
}
|
116
|
+
},
|
117
|
+
{
|
118
|
+
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
119
|
+
"date_created": "2015-07-30T20:00:00Z",
|
120
|
+
"date_updated": "2015-07-30T20:01:33Z",
|
121
|
+
"sid": "DFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab",
|
122
|
+
"sink_sid": "DGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
123
|
+
"description": "Another subscription",
|
124
|
+
"url": "https://events.twilio.com/v1/Subscriptions/DFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab",
|
125
|
+
"links": {
|
126
|
+
"subscribed_events": "https://events.twilio.com/v1/Subscriptions/DFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab/SubscribedEvents"
|
127
|
+
}
|
128
|
+
}
|
129
|
+
],
|
130
|
+
"meta": {
|
131
|
+
"page": 0,
|
132
|
+
"page_size": 10,
|
133
|
+
"first_page_url": "https://events.twilio.com/v1/Subscriptions?SinkSid=DGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=10&Page=0",
|
134
|
+
"previous_page_url": null,
|
135
|
+
"url": "https://events.twilio.com/v1/Subscriptions?SinkSid=DGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=10&Page=0",
|
136
|
+
"next_page_url": null,
|
137
|
+
"key": "subscriptions"
|
138
|
+
}
|
139
|
+
}
|
140
|
+
]
|
141
|
+
))
|
142
|
+
|
143
|
+
actual = @client.events.v1.subscriptions.list()
|
144
|
+
|
145
|
+
expect(actual).to_not eq(nil)
|
146
|
+
end
|
147
|
+
|
99
148
|
it "can fetch" do
|
100
149
|
@holodeck.mock(Twilio::Response.new(500, ''))
|
101
150
|
|
@@ -36,7 +36,6 @@ describe 'Participant' do
|
|
36
36
|
"end_reason": "disconnected_via_api",
|
37
37
|
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
38
38
|
"error_code": 0,
|
39
|
-
"call_sid": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
40
39
|
"media_region": "us1",
|
41
40
|
"properties": {},
|
42
41
|
"room_sid": "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
@@ -122,7 +121,6 @@ describe 'Participant' do
|
|
122
121
|
"end_reason": "disconnected_via_api",
|
123
122
|
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
124
123
|
"error_code": 53205,
|
125
|
-
"call_sid": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
126
124
|
"media_region": "us1",
|
127
125
|
"properties": {},
|
128
126
|
"room_sid": "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
data/spec/rest/client_spec.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'spec_helper'
|
2
|
+
require 'logger'
|
2
3
|
|
3
4
|
describe Twilio::REST::ObsoleteClient do
|
4
5
|
it 'raise an exception' do
|
@@ -57,6 +58,7 @@ describe Twilio::REST::Client do
|
|
57
58
|
config.http_client = 'someClient'
|
58
59
|
config.region = 'someRegion'
|
59
60
|
config.edge = 'someEdge'
|
61
|
+
config.logger = 'someLogger'
|
60
62
|
end
|
61
63
|
end
|
62
64
|
|
@@ -67,16 +69,18 @@ describe Twilio::REST::Client do
|
|
67
69
|
expect(@client.http_client).to eq('someClient')
|
68
70
|
expect(@client.region).to eq('someRegion')
|
69
71
|
expect(@client.edge).to eq('someEdge')
|
72
|
+
expect(@client.logger).to eq('someLogger')
|
70
73
|
end
|
71
74
|
|
72
75
|
it 'uses the arguments over global configuration' do
|
73
|
-
@client = Twilio::REST::Client.new('myUser', 'myPassword', nil, 'myRegion', 'myClient')
|
76
|
+
@client = Twilio::REST::Client.new('myUser', 'myPassword', nil, 'myRegion', 'myClient', 'myLogger')
|
74
77
|
@client.edge = 'myEdge'
|
75
78
|
expect(@client.account_sid).to eq('myUser')
|
76
79
|
expect(@client.auth_token).to eq('myPassword')
|
77
80
|
expect(@client.http_client).to eq('myClient')
|
78
81
|
expect(@client.region).to eq('myRegion')
|
79
82
|
expect(@client.edge).to eq('myEdge')
|
83
|
+
expect(@client.logger).to eq('myLogger')
|
80
84
|
end
|
81
85
|
|
82
86
|
class MyVersion < Twilio::REST::Version
|
@@ -97,13 +101,14 @@ describe Twilio::REST::Client do
|
|
97
101
|
end
|
98
102
|
|
99
103
|
context 'validation' do
|
100
|
-
before do
|
104
|
+
before :all do
|
101
105
|
Twilio.configure do |config|
|
102
106
|
config.account_sid = 'someSid'
|
103
107
|
config.auth_token = 'someToken'
|
104
108
|
config.http_client = 'someClient'
|
105
109
|
config.region = nil
|
106
110
|
config.edge = nil
|
111
|
+
config.logger = nil
|
107
112
|
end
|
108
113
|
end
|
109
114
|
|
@@ -142,6 +147,23 @@ describe Twilio::REST::Client do
|
|
142
147
|
end
|
143
148
|
end
|
144
149
|
|
150
|
+
context 'logging' do
|
151
|
+
it 'logs the call details' do
|
152
|
+
@client.logger = Logger.new(STDOUT)
|
153
|
+
@holodeck.mock Twilio::Response.new(200, {})
|
154
|
+
expect {
|
155
|
+
@client.request('host', 'port', 'GET', 'http://foobar.com')
|
156
|
+
}.to output(/Host:foobar.com/).to_stdout_from_any_process
|
157
|
+
end
|
158
|
+
|
159
|
+
it 'does not log when the logger instance is not passed' do
|
160
|
+
@holodeck.mock Twilio::Response.new(200, {})
|
161
|
+
expect {
|
162
|
+
@client.request('host', 'port', 'GET', 'http://foobar.com')
|
163
|
+
}.to_not output(/Host:foobar.com/).to_stdout_from_any_process
|
164
|
+
end
|
165
|
+
end
|
166
|
+
|
145
167
|
describe '#build_uri' do
|
146
168
|
before(:all) do
|
147
169
|
Twilio.configure do |config|
|
data/twilio-ruby.gemspec
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: twilio-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.
|
4
|
+
version: 5.43.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Twilio API Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-11-
|
11
|
+
date: 2020-11-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jwt
|
@@ -188,6 +188,20 @@ dependencies:
|
|
188
188
|
- - "~>"
|
189
189
|
- !ruby/object:Gem::Version
|
190
190
|
version: 0.9.9
|
191
|
+
- !ruby/object:Gem::Dependency
|
192
|
+
name: logger
|
193
|
+
requirement: !ruby/object:Gem::Requirement
|
194
|
+
requirements:
|
195
|
+
- - "~>"
|
196
|
+
- !ruby/object:Gem::Version
|
197
|
+
version: 1.4.2
|
198
|
+
type: :development
|
199
|
+
prerelease: false
|
200
|
+
version_requirements: !ruby/object:Gem::Requirement
|
201
|
+
requirements:
|
202
|
+
- - "~>"
|
203
|
+
- !ruby/object:Gem::Version
|
204
|
+
version: 1.4.2
|
191
205
|
description: The official library for communicating with the Twilio REST API, building
|
192
206
|
TwiML, and generating Twilio JWT Capability Tokens
|
193
207
|
email:
|
@@ -263,6 +277,7 @@ files:
|
|
263
277
|
- lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb
|
264
278
|
- lib/twilio-ruby/rest/api/v2010/account/balance.rb
|
265
279
|
- lib/twilio-ruby/rest/api/v2010/account/call.rb
|
280
|
+
- lib/twilio-ruby/rest/api/v2010/account/call/event.rb
|
266
281
|
- lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb
|
267
282
|
- lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb
|
268
283
|
- lib/twilio-ruby/rest/api/v2010/account/call/notification.rb
|
@@ -733,6 +748,7 @@ files:
|
|
733
748
|
- spec/integration/api/v2010/account/available_phone_number/voip_spec.rb
|
734
749
|
- spec/integration/api/v2010/account/available_phone_number_spec.rb
|
735
750
|
- spec/integration/api/v2010/account/balance_spec.rb
|
751
|
+
- spec/integration/api/v2010/account/call/event_spec.rb
|
736
752
|
- spec/integration/api/v2010/account/call/feedback_spec.rb
|
737
753
|
- spec/integration/api/v2010/account/call/feedback_summary_spec.rb
|
738
754
|
- spec/integration/api/v2010/account/call/notification_spec.rb
|
@@ -1177,6 +1193,7 @@ test_files:
|
|
1177
1193
|
- spec/integration/api/v2010/account/available_phone_number/voip_spec.rb
|
1178
1194
|
- spec/integration/api/v2010/account/available_phone_number_spec.rb
|
1179
1195
|
- spec/integration/api/v2010/account/balance_spec.rb
|
1196
|
+
- spec/integration/api/v2010/account/call/event_spec.rb
|
1180
1197
|
- spec/integration/api/v2010/account/call/feedback_spec.rb
|
1181
1198
|
- spec/integration/api/v2010/account/call/feedback_summary_spec.rb
|
1182
1199
|
- spec/integration/api/v2010/account/call/notification_spec.rb
|