twilio-ruby 5.65.0 → 5.66.1

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.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pr-lint.yml +15 -0
  3. data/.github/workflows/test-and-deploy.yml +5 -0
  4. data/CHANGES.md +64 -0
  5. data/README.md +2 -4
  6. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +2 -2
  7. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +4 -4
  8. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +0 -7
  9. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +27 -7
  10. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +10 -4
  11. data/lib/twilio-ruby/rest/chat/v3/channel.rb +275 -0
  12. data/lib/twilio-ruby/rest/chat/v3.rb +48 -0
  13. data/lib/twilio-ruby/rest/chat.rb +16 -0
  14. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +7 -0
  15. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +236 -0
  16. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +330 -0
  17. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +377 -0
  18. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +233 -0
  19. data/lib/twilio-ruby/rest/flex_api/v1.rb +16 -0
  20. data/lib/twilio-ruby/rest/flex_api.rb +9 -0
  21. data/lib/twilio-ruby/rest/insights/v1/annotation.rb +271 -0
  22. data/lib/twilio-ruby/rest/insights/v1.rb +16 -0
  23. data/lib/twilio-ruby/rest/insights.rb +8 -0
  24. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +1 -1
  25. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +406 -0
  26. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +14 -1
  27. data/lib/twilio-ruby/rest/media/v1.rb +16 -0
  28. data/lib/twilio-ruby/rest/media.rb +9 -0
  29. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +7 -0
  30. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +3 -55
  31. data/lib/twilio-ruby/rest/supersim/v1.rb +0 -16
  32. data/lib/twilio-ruby/rest/supersim.rb +0 -9
  33. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +6 -2
  34. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +4 -2
  35. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +4 -2
  36. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +18 -1
  37. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +22 -4
  38. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +2 -1
  39. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +234 -0
  40. data/lib/twilio-ruby/rest/verify/v2.rb +7 -0
  41. data/lib/twilio-ruby/rest/verify.rb +6 -0
  42. data/lib/twilio-ruby/rest/video/v1/composition.rb +14 -0
  43. data/lib/twilio-ruby/rest/video/v1/recording.rb +14 -0
  44. data/lib/twilio-ruby/version.rb +1 -1
  45. data/lib/twilio-ruby.rb +1 -1
  46. metadata +12 -3
  47. data/lib/twilio-ruby/rest/supersim/v1/command.rb +0 -368
@@ -28,15 +28,6 @@ module Twilio
28
28
  @v1 ||= V1.new self
29
29
  end
30
30
 
31
- ##
32
- # @param [String] sid The unique string that we created to identify the Command
33
- # resource.
34
- # @return [Twilio::REST::Supersim::V1::CommandInstance] if sid was passed.
35
- # @return [Twilio::REST::Supersim::V1::CommandList]
36
- def commands(sid=:unset)
37
- self.v1.commands(sid)
38
- end
39
-
40
31
  ##
41
32
  # @param [String] sid The unique string that we created to identify the eSIM
42
33
  # Profile resource.
@@ -101,7 +101,9 @@ module Twilio
101
101
  # @param [String] split_by_wait_time A comma separated list of values that
102
102
  # describes the thresholds, in seconds, to calculate statistics on. For each
103
103
  # threshold specified, the number of Tasks canceled and reservations accepted
104
- # above and below the specified thresholds in seconds are computed.
104
+ # above and below the specified thresholds in seconds are computed. TaskRouter
105
+ # will calculate statistics on up to 10,000 Tasks/Reservations for any given
106
+ # threshold.
105
107
  # @return [TaskQueueCumulativeStatisticsInstance] Fetched TaskQueueCumulativeStatisticsInstance
106
108
  def fetch(end_date: :unset, minutes: :unset, start_date: :unset, task_channel: :unset, split_by_wait_time: :unset)
107
109
  params = Twilio::Values.of({
@@ -343,7 +345,9 @@ module Twilio
343
345
  # @param [String] split_by_wait_time A comma separated list of values that
344
346
  # describes the thresholds, in seconds, to calculate statistics on. For each
345
347
  # threshold specified, the number of Tasks canceled and reservations accepted
346
- # above and below the specified thresholds in seconds are computed.
348
+ # above and below the specified thresholds in seconds are computed. TaskRouter
349
+ # will calculate statistics on up to 10,000 Tasks/Reservations for any given
350
+ # threshold.
347
351
  # @return [TaskQueueCumulativeStatisticsInstance] Fetched TaskQueueCumulativeStatisticsInstance
348
352
  def fetch(end_date: :unset, minutes: :unset, start_date: :unset, task_channel: :unset, split_by_wait_time: :unset)
349
353
  context.fetch(
@@ -105,7 +105,8 @@ module Twilio
105
105
  # above and below the specified thresholds in seconds are computed. For example,
106
106
  # `5,30` would show splits of Tasks that were canceled or accepted before and
107
107
  # after 5 seconds and before and after 30 seconds. This can be used to show short
108
- # abandoned Tasks or Tasks that failed to meet an SLA.
108
+ # abandoned Tasks or Tasks that failed to meet an SLA. TaskRouter will calculate
109
+ # statistics on up to 10,000 Tasks for any given threshold.
109
110
  # @return [WorkflowCumulativeStatisticsInstance] Fetched WorkflowCumulativeStatisticsInstance
110
111
  def fetch(end_date: :unset, minutes: :unset, start_date: :unset, task_channel: :unset, split_by_wait_time: :unset)
111
112
  params = Twilio::Values.of({
@@ -351,7 +352,8 @@ module Twilio
351
352
  # above and below the specified thresholds in seconds are computed. For example,
352
353
  # `5,30` would show splits of Tasks that were canceled or accepted before and
353
354
  # after 5 seconds and before and after 30 seconds. This can be used to show short
354
- # abandoned Tasks or Tasks that failed to meet an SLA.
355
+ # abandoned Tasks or Tasks that failed to meet an SLA. TaskRouter will calculate
356
+ # statistics on up to 10,000 Tasks for any given threshold.
355
357
  # @return [WorkflowCumulativeStatisticsInstance] Fetched WorkflowCumulativeStatisticsInstance
356
358
  def fetch(end_date: :unset, minutes: :unset, start_date: :unset, task_channel: :unset, split_by_wait_time: :unset)
357
359
  context.fetch(
@@ -97,7 +97,8 @@ module Twilio
97
97
  # above and below the specified thresholds in seconds are computed. For example,
98
98
  # `5,30` would show splits of Tasks that were canceled or accepted before and
99
99
  # after 5 seconds and before and after 30 seconds. This can be used to show short
100
- # abandoned Tasks or Tasks that failed to meet an SLA.
100
+ # abandoned Tasks or Tasks that failed to meet an SLA. TaskRouter will calculate
101
+ # statistics on up to 10,000 Tasks for any given threshold.
101
102
  # @return [WorkspaceCumulativeStatisticsInstance] Fetched WorkspaceCumulativeStatisticsInstance
102
103
  def fetch(end_date: :unset, minutes: :unset, start_date: :unset, task_channel: :unset, split_by_wait_time: :unset)
103
104
  params = Twilio::Values.of({
@@ -328,7 +329,8 @@ module Twilio
328
329
  # above and below the specified thresholds in seconds are computed. For example,
329
330
  # `5,30` would show splits of Tasks that were canceled or accepted before and
330
331
  # after 5 seconds and before and after 30 seconds. This can be used to show short
331
- # abandoned Tasks or Tasks that failed to meet an SLA.
332
+ # abandoned Tasks or Tasks that failed to meet an SLA. TaskRouter will calculate
333
+ # statistics on up to 10,000 Tasks for any given threshold.
332
334
  # @return [WorkspaceCumulativeStatisticsInstance] Fetched WorkspaceCumulativeStatisticsInstance
333
335
  def fetch(end_date: :unset, minutes: :unset, start_date: :unset, task_channel: :unset, split_by_wait_time: :unset)
334
336
  context.fetch(
@@ -36,12 +36,15 @@ module Twilio
36
36
  # `push`
37
37
  # @param [String] factor_friendly_name The friendly name of the factor that is
38
38
  # going to be created with this access token
39
+ # @param [String] ttl How long, in seconds, the access token is valid. Can be an
40
+ # integer between 60 and 300. Default is 60.
39
41
  # @return [AccessTokenInstance] Created AccessTokenInstance
40
- def create(identity: nil, factor_type: nil, factor_friendly_name: :unset)
42
+ def create(identity: nil, factor_type: nil, factor_friendly_name: :unset, ttl: :unset)
41
43
  data = Twilio::Values.of({
42
44
  'Identity' => identity,
43
45
  'FactorType' => factor_type,
44
46
  'FactorFriendlyName' => factor_friendly_name,
47
+ 'Ttl' => ttl,
45
48
  })
46
49
 
47
50
  payload = @version.create('POST', @uri, data: data)
@@ -158,6 +161,8 @@ module Twilio
158
161
  'factor_friendly_name' => payload['factor_friendly_name'],
159
162
  'token' => payload['token'],
160
163
  'url' => payload['url'],
164
+ 'ttl' => payload['ttl'].to_i,
165
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
161
166
  }
162
167
 
163
168
  # Context
@@ -224,6 +229,18 @@ module Twilio
224
229
  @properties['url']
225
230
  end
226
231
 
232
+ ##
233
+ # @return [String] How long, in seconds, the access token is valid.
234
+ def ttl
235
+ @properties['ttl']
236
+ end
237
+
238
+ ##
239
+ # @return [Time] The date this access token was created
240
+ def date_created
241
+ @properties['date_created']
242
+ end
243
+
227
244
  ##
228
245
  # Fetch the AccessTokenInstance
229
246
  # @return [AccessTokenInstance] Fetched AccessTokenInstance
@@ -277,9 +277,16 @@ module Twilio
277
277
  # Challenge. E.g., a TOTP would use the numeric code. For `TOTP` this value must
278
278
  # be between 3 and 8 characters long. For `Push` this value can be up to 5456
279
279
  # characters in length
280
+ # @param [Hash] metadata Custom metadata associated with the challenge. This is
281
+ # added by the Device/SDK directly to allow for the inclusion of device
282
+ # information. It must be a stringified JSON with only strings values eg. `{"os":
283
+ # "Android"}`. Can be up to 1024 characters in length.
280
284
  # @return [ChallengeInstance] Updated ChallengeInstance
281
- def update(auth_payload: :unset)
282
- data = Twilio::Values.of({'AuthPayload' => auth_payload, })
285
+ def update(auth_payload: :unset, metadata: :unset)
286
+ data = Twilio::Values.of({
287
+ 'AuthPayload' => auth_payload,
288
+ 'Metadata' => Twilio.serialize_object(metadata),
289
+ })
283
290
 
284
291
  payload = @version.update('POST', @uri, data: data)
285
292
 
@@ -358,6 +365,7 @@ module Twilio
358
365
  'responded_reason' => payload['responded_reason'],
359
366
  'details' => payload['details'],
360
367
  'hidden_details' => payload['hidden_details'],
368
+ 'metadata' => payload['metadata'],
361
369
  'factor_type' => payload['factor_type'],
362
370
  'url' => payload['url'],
363
371
  'links' => payload['links'],
@@ -468,6 +476,12 @@ module Twilio
468
476
  @properties['hidden_details']
469
477
  end
470
478
 
479
+ ##
480
+ # @return [Hash] Metadata of the challenge.
481
+ def metadata
482
+ @properties['metadata']
483
+ end
484
+
471
485
  ##
472
486
  # @return [challenge.FactorTypes] The Factor Type of this Challenge
473
487
  def factor_type
@@ -499,9 +513,13 @@ module Twilio
499
513
  # Challenge. E.g., a TOTP would use the numeric code. For `TOTP` this value must
500
514
  # be between 3 and 8 characters long. For `Push` this value can be up to 5456
501
515
  # characters in length
516
+ # @param [Hash] metadata Custom metadata associated with the challenge. This is
517
+ # added by the Device/SDK directly to allow for the inclusion of device
518
+ # information. It must be a stringified JSON with only strings values eg. `{"os":
519
+ # "Android"}`. Can be up to 1024 characters in length.
502
520
  # @return [ChallengeInstance] Updated ChallengeInstance
503
- def update(auth_payload: :unset)
504
- context.update(auth_payload: auth_payload, )
521
+ def update(auth_payload: :unset, metadata: :unset)
522
+ context.update(auth_payload: auth_payload, metadata: metadata, )
505
523
  end
506
524
 
507
525
  ##
@@ -61,7 +61,8 @@ module Twilio
61
61
  # may include multiple Rate Limit values in each request.
62
62
  # @param [Hash] channel_configuration
63
63
  # {`email`}[https://www.twilio.com/docs/verify/email] channel configuration in
64
- # json format. Must include 'from' and 'from_name'.
64
+ # json format. The fields 'from' and 'from_name' are optional but if included the
65
+ # 'from' field must have a valid email address.
65
66
  # @param [String] app_hash Your {App
66
67
  # Hash}[https://developers.google.com/identity/sms-retriever/verify#computing_your_apps_hash_string]
67
68
  # to be appended at the end of your verification SMS body. Applies only to SMS.
@@ -0,0 +1,234 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Verify < Domain
12
+ class V2 < Version
13
+ class VerificationAttemptsSummaryList < ListResource
14
+ ##
15
+ # Initialize the VerificationAttemptsSummaryList
16
+ # @param [Version] version Version that contains the resource
17
+ # @return [VerificationAttemptsSummaryList] VerificationAttemptsSummaryList
18
+ def initialize(version)
19
+ super(version)
20
+
21
+ # Path Solution
22
+ @solution = {}
23
+ end
24
+
25
+ ##
26
+ # Provide a user friendly representation
27
+ def to_s
28
+ '#<Twilio.Verify.V2.VerificationAttemptsSummaryList>'
29
+ end
30
+ end
31
+
32
+ class VerificationAttemptsSummaryPage < Page
33
+ ##
34
+ # Initialize the VerificationAttemptsSummaryPage
35
+ # @param [Version] version Version that contains the resource
36
+ # @param [Response] response Response from the API
37
+ # @param [Hash] solution Path solution for the resource
38
+ # @return [VerificationAttemptsSummaryPage] VerificationAttemptsSummaryPage
39
+ def initialize(version, response, solution)
40
+ super(version, response)
41
+
42
+ # Path Solution
43
+ @solution = solution
44
+ end
45
+
46
+ ##
47
+ # Build an instance of VerificationAttemptsSummaryInstance
48
+ # @param [Hash] payload Payload response from the API
49
+ # @return [VerificationAttemptsSummaryInstance] VerificationAttemptsSummaryInstance
50
+ def get_instance(payload)
51
+ VerificationAttemptsSummaryInstance.new(@version, payload, )
52
+ end
53
+
54
+ ##
55
+ # Provide a user friendly representation
56
+ def to_s
57
+ '<Twilio.Verify.V2.VerificationAttemptsSummaryPage>'
58
+ end
59
+ end
60
+
61
+ class VerificationAttemptsSummaryContext < InstanceContext
62
+ ##
63
+ # Initialize the VerificationAttemptsSummaryContext
64
+ # @param [Version] version Version that contains the resource
65
+ # @return [VerificationAttemptsSummaryContext] VerificationAttemptsSummaryContext
66
+ def initialize(version)
67
+ super(version)
68
+
69
+ # Path Solution
70
+ @solution = {}
71
+ @uri = "/Attempts/Summary"
72
+ end
73
+
74
+ ##
75
+ # Fetch the VerificationAttemptsSummaryInstance
76
+ # @param [String] verify_service_sid Filter used to consider only Verification
77
+ # Attempts of the given verify service on the summary aggregation.
78
+ # @param [Time] date_created_after Datetime filter used to consider only
79
+ # Verification Attempts created after this datetime on the summary aggregation.
80
+ # Given as GMT in RFC 2822 format.
81
+ # @param [Time] date_created_before Datetime filter used to consider only
82
+ # Verification Attempts created before this datetime on the summary aggregation.
83
+ # Given as GMT in RFC 2822 format.
84
+ # @param [String] country Filter used to consider only Verification Attempts sent
85
+ # to the specified destination country on the summary aggregation.
86
+ # @param [verification_attempts_summary.Channels] channel Filter Verification
87
+ # Attempts considered on the summary aggregation by communication channel. Valid
88
+ # values are `SMS` and `CALL`
89
+ # @param [String] destination_prefix Filter the Verification Attempts considered
90
+ # on the summary aggregation by Destination prefix. It is the prefix of a phone
91
+ # number in E.164 format.
92
+ # @return [VerificationAttemptsSummaryInstance] Fetched VerificationAttemptsSummaryInstance
93
+ def fetch(verify_service_sid: :unset, date_created_after: :unset, date_created_before: :unset, country: :unset, channel: :unset, destination_prefix: :unset)
94
+ params = Twilio::Values.of({
95
+ 'VerifyServiceSid' => verify_service_sid,
96
+ 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
97
+ 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
98
+ 'Country' => country,
99
+ 'Channel' => channel,
100
+ 'DestinationPrefix' => destination_prefix,
101
+ })
102
+
103
+ payload = @version.fetch('GET', @uri, params: params)
104
+
105
+ VerificationAttemptsSummaryInstance.new(@version, payload, )
106
+ end
107
+
108
+ ##
109
+ # Provide a user friendly representation
110
+ def to_s
111
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
112
+ "#<Twilio.Verify.V2.VerificationAttemptsSummaryContext #{context}>"
113
+ end
114
+
115
+ ##
116
+ # Provide a detailed, user friendly representation
117
+ def inspect
118
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
119
+ "#<Twilio.Verify.V2.VerificationAttemptsSummaryContext #{context}>"
120
+ end
121
+ end
122
+
123
+ class VerificationAttemptsSummaryInstance < InstanceResource
124
+ ##
125
+ # Initialize the VerificationAttemptsSummaryInstance
126
+ # @param [Version] version Version that contains the resource
127
+ # @param [Hash] payload payload that contains response from Twilio
128
+ # @return [VerificationAttemptsSummaryInstance] VerificationAttemptsSummaryInstance
129
+ def initialize(version, payload)
130
+ super(version)
131
+
132
+ # Marshaled Properties
133
+ @properties = {
134
+ 'total_attempts' => payload['total_attempts'].to_i,
135
+ 'total_converted' => payload['total_converted'].to_i,
136
+ 'total_unconverted' => payload['total_unconverted'].to_i,
137
+ 'conversion_rate_percentage' => payload['conversion_rate_percentage'].to_f,
138
+ 'url' => payload['url'],
139
+ }
140
+
141
+ # Context
142
+ @instance_context = nil
143
+ @params = {}
144
+ end
145
+
146
+ ##
147
+ # Generate an instance context for the instance, the context is capable of
148
+ # performing various actions. All instance actions are proxied to the context
149
+ # @return [VerificationAttemptsSummaryContext] VerificationAttemptsSummaryContext for this VerificationAttemptsSummaryInstance
150
+ def context
151
+ unless @instance_context
152
+ @instance_context = VerificationAttemptsSummaryContext.new(@version, )
153
+ end
154
+ @instance_context
155
+ end
156
+
157
+ ##
158
+ # @return [String] Total of attempts made.
159
+ def total_attempts
160
+ @properties['total_attempts']
161
+ end
162
+
163
+ ##
164
+ # @return [String] Total of attempts confirmed by the end user.
165
+ def total_converted
166
+ @properties['total_converted']
167
+ end
168
+
169
+ ##
170
+ # @return [String] Total of attempts made that were not confirmed by the end user.
171
+ def total_unconverted
172
+ @properties['total_unconverted']
173
+ end
174
+
175
+ ##
176
+ # @return [String] Percentage of the confirmed messages over the total.
177
+ def conversion_rate_percentage
178
+ @properties['conversion_rate_percentage']
179
+ end
180
+
181
+ ##
182
+ # @return [String] The url
183
+ def url
184
+ @properties['url']
185
+ end
186
+
187
+ ##
188
+ # Fetch the VerificationAttemptsSummaryInstance
189
+ # @param [String] verify_service_sid Filter used to consider only Verification
190
+ # Attempts of the given verify service on the summary aggregation.
191
+ # @param [Time] date_created_after Datetime filter used to consider only
192
+ # Verification Attempts created after this datetime on the summary aggregation.
193
+ # Given as GMT in RFC 2822 format.
194
+ # @param [Time] date_created_before Datetime filter used to consider only
195
+ # Verification Attempts created before this datetime on the summary aggregation.
196
+ # Given as GMT in RFC 2822 format.
197
+ # @param [String] country Filter used to consider only Verification Attempts sent
198
+ # to the specified destination country on the summary aggregation.
199
+ # @param [verification_attempts_summary.Channels] channel Filter Verification
200
+ # Attempts considered on the summary aggregation by communication channel. Valid
201
+ # values are `SMS` and `CALL`
202
+ # @param [String] destination_prefix Filter the Verification Attempts considered
203
+ # on the summary aggregation by Destination prefix. It is the prefix of a phone
204
+ # number in E.164 format.
205
+ # @return [VerificationAttemptsSummaryInstance] Fetched VerificationAttemptsSummaryInstance
206
+ def fetch(verify_service_sid: :unset, date_created_after: :unset, date_created_before: :unset, country: :unset, channel: :unset, destination_prefix: :unset)
207
+ context.fetch(
208
+ verify_service_sid: verify_service_sid,
209
+ date_created_after: date_created_after,
210
+ date_created_before: date_created_before,
211
+ country: country,
212
+ channel: channel,
213
+ destination_prefix: destination_prefix,
214
+ )
215
+ end
216
+
217
+ ##
218
+ # Provide a user friendly representation
219
+ def to_s
220
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
221
+ "<Twilio.Verify.V2.VerificationAttemptsSummaryInstance #{values}>"
222
+ end
223
+
224
+ ##
225
+ # Provide a detailed, user friendly representation
226
+ def inspect
227
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
228
+ "<Twilio.Verify.V2.VerificationAttemptsSummaryInstance #{values}>"
229
+ end
230
+ end
231
+ end
232
+ end
233
+ end
234
+ end
@@ -18,6 +18,7 @@ module Twilio
18
18
  @forms = nil
19
19
  @services = nil
20
20
  @verification_attempts = nil
21
+ @verification_attempts_summary = nil
21
22
  @templates = nil
22
23
  end
23
24
 
@@ -68,6 +69,12 @@ module Twilio
68
69
  end
69
70
  end
70
71
 
72
+ ##
73
+ # @return [Twilio::REST::Verify::V2::VerificationAttemptsSummaryContext]
74
+ def verification_attempts_summary
75
+ @verification_attempts_summary ||= VerificationAttemptsSummaryContext.new self
76
+ end
77
+
71
78
  ##
72
79
  # @return [Twilio::REST::Verify::V2::TemplateContext]
73
80
  def templates
@@ -55,6 +55,12 @@ module Twilio
55
55
  self.v2.verification_attempts(sid)
56
56
  end
57
57
 
58
+ ##
59
+ # @return [Twilio::REST::Verify::V2::VerificationAttemptsSummaryInstance]
60
+ def verification_attempts_summary
61
+ self.v2.verification_attempts_summary()
62
+ end
63
+
58
64
  ##
59
65
  # @return [Twilio::REST::Verify::V2::TemplateInstance]
60
66
  def templates
@@ -335,6 +335,8 @@ module Twilio
335
335
  'size' => payload['size'].to_i,
336
336
  'duration' => payload['duration'].to_i,
337
337
  'media_external_location' => payload['media_external_location'],
338
+ 'status_callback' => payload['status_callback'],
339
+ 'status_callback_method' => payload['status_callback_method'],
338
340
  'url' => payload['url'],
339
341
  'links' => payload['links'],
340
342
  }
@@ -457,6 +459,18 @@ module Twilio
457
459
  @properties['media_external_location']
458
460
  end
459
461
 
462
+ ##
463
+ # @return [String] The URL called to send status information on every composition event.
464
+ def status_callback
465
+ @properties['status_callback']
466
+ end
467
+
468
+ ##
469
+ # @return [String] The HTTP method used to call `status_callback`
470
+ def status_callback_method
471
+ @properties['status_callback_method']
472
+ end
473
+
460
474
  ##
461
475
  # @return [String] The absolute URL of the resource
462
476
  def url
@@ -273,6 +273,8 @@ module Twilio
273
273
  'track_name' => payload['track_name'],
274
274
  'offset' => payload['offset'].to_i,
275
275
  'media_external_location' => payload['media_external_location'],
276
+ 'status_callback' => payload['status_callback'],
277
+ 'status_callback_method' => payload['status_callback_method'],
276
278
  'links' => payload['links'],
277
279
  }
278
280
 
@@ -382,6 +384,18 @@ module Twilio
382
384
  @properties['media_external_location']
383
385
  end
384
386
 
387
+ ##
388
+ # @return [String] The URL called to send status information on every recording event.
389
+ def status_callback
390
+ @properties['status_callback']
391
+ end
392
+
393
+ ##
394
+ # @return [String] The HTTP method used to call `status_callback`
395
+ def status_callback_method
396
+ @properties['status_callback_method']
397
+ end
398
+
385
399
  ##
386
400
  # @return [String] The URLs of related resources
387
401
  def links
@@ -1,3 +1,3 @@
1
1
  module Twilio
2
- VERSION = '5.65.0'
2
+ VERSION = '5.66.1'
3
3
  end
data/lib/twilio-ruby.rb CHANGED
@@ -10,7 +10,7 @@ require 'time'
10
10
  require 'json'
11
11
 
12
12
  require 'twilio-ruby/version' unless defined?(Twilio::VERSION)
13
- require 'rack/twilio_webhook_authentication'
13
+ require 'rack/twilio_webhook_authentication' if defined?(Rack)
14
14
 
15
15
  require 'twilio-ruby/util'
16
16
  require 'twilio-ruby/security/request_validator'
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.65.0
4
+ version: 5.66.1
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: 2022-02-23 00:00:00.000000000 Z
11
+ date: 2022-04-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jwt
@@ -198,6 +198,7 @@ extra_rdoc_files:
198
198
  - LICENSE
199
199
  files:
200
200
  - ".dockerignore"
201
+ - ".github/workflows/pr-lint.yml"
201
202
  - ".github/workflows/test-and-deploy.yml"
202
203
  - ".gitignore"
203
204
  - ".rubocop.yml"
@@ -375,6 +376,8 @@ files:
375
376
  - lib/twilio-ruby/rest/chat/v2/service/user.rb
376
377
  - lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb
377
378
  - lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb
379
+ - lib/twilio-ruby/rest/chat/v3.rb
380
+ - lib/twilio-ruby/rest/chat/v3/channel.rb
378
381
  - lib/twilio-ruby/rest/client.rb
379
382
  - lib/twilio-ruby/rest/conversations.rb
380
383
  - lib/twilio-ruby/rest/conversations/v1.rb
@@ -424,12 +427,17 @@ files:
424
427
  - lib/twilio-ruby/rest/flex_api/v1/channel.rb
425
428
  - lib/twilio-ruby/rest/flex_api/v1/configuration.rb
426
429
  - lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb
430
+ - lib/twilio-ruby/rest/flex_api/v1/interaction.rb
431
+ - lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb
432
+ - lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb
433
+ - lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb
427
434
  - lib/twilio-ruby/rest/flex_api/v1/web_channel.rb
428
435
  - lib/twilio-ruby/rest/frontline_api.rb
429
436
  - lib/twilio-ruby/rest/frontline_api/v1.rb
430
437
  - lib/twilio-ruby/rest/frontline_api/v1/user.rb
431
438
  - lib/twilio-ruby/rest/insights.rb
432
439
  - lib/twilio-ruby/rest/insights/v1.rb
440
+ - lib/twilio-ruby/rest/insights/v1/annotation.rb
433
441
  - lib/twilio-ruby/rest/insights/v1/call.rb
434
442
  - lib/twilio-ruby/rest/insights/v1/call/event.rb
435
443
  - lib/twilio-ruby/rest/insights/v1/call/metric.rb
@@ -470,6 +478,7 @@ files:
470
478
  - lib/twilio-ruby/rest/media.rb
471
479
  - lib/twilio-ruby/rest/media/v1.rb
472
480
  - lib/twilio-ruby/rest/media/v1/media_processor.rb
481
+ - lib/twilio-ruby/rest/media/v1/media_recording.rb
473
482
  - lib/twilio-ruby/rest/media/v1/player_streamer.rb
474
483
  - lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb
475
484
  - lib/twilio-ruby/rest/messaging.rb
@@ -626,7 +635,6 @@ files:
626
635
  - lib/twilio-ruby/rest/studio/v2/flow_validate.rb
627
636
  - lib/twilio-ruby/rest/supersim.rb
628
637
  - lib/twilio-ruby/rest/supersim/v1.rb
629
- - lib/twilio-ruby/rest/supersim/v1/command.rb
630
638
  - lib/twilio-ruby/rest/supersim/v1/esim_profile.rb
631
639
  - lib/twilio-ruby/rest/supersim/v1/fleet.rb
632
640
  - lib/twilio-ruby/rest/supersim/v1/ip_command.rb
@@ -718,6 +726,7 @@ files:
718
726
  - lib/twilio-ruby/rest/verify/v2/service/webhook.rb
719
727
  - lib/twilio-ruby/rest/verify/v2/template.rb
720
728
  - lib/twilio-ruby/rest/verify/v2/verification_attempt.rb
729
+ - lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb
721
730
  - lib/twilio-ruby/rest/video.rb
722
731
  - lib/twilio-ruby/rest/video/v1.rb
723
732
  - lib/twilio-ruby/rest/video/v1/composition.rb