twilio-ruby 7.8.0 → 7.8.2
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.
- checksums.yaml +4 -4
- data/CHANGES.md +27 -0
- data/README.md +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +5 -2
- data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +1 -1
- data/lib/twilio-ruby/rest/client.rb +5 -0
- data/lib/twilio-ruby/rest/content/v1/content.rb +38 -1
- data/lib/twilio-ruby/rest/intelligence/v2/service.rb +17 -1
- data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +217 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +217 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +43 -0
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +232 -0
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +213 -0
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +623 -0
- data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
- data/lib/twilio-ruby/rest/knowledge.rb +6 -0
- data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
- data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +140 -0
- data/lib/twilio-ruby/rest/messaging/v2.rb +6 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +96 -8
- data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +339 -0
- data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
- data/lib/twilio-ruby/rest/numbers_base.rb +5 -0
- data/lib/twilio-ruby/rest/oauth/v2/token.rb +186 -0
- data/lib/twilio-ruby/rest/oauth/v2.rb +40 -0
- data/lib/twilio-ruby/rest/oauth_base.rb +6 -1
- data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +312 -0
- data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +340 -0
- data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +467 -0
- data/lib/twilio-ruby/rest/verify/v2/service.rb +75 -0
- data/lib/twilio-ruby/rest/voice_base.rb +6 -1
- data/lib/twilio-ruby/twiml/voice_response.rb +20 -0
- data/lib/twilio-ruby/version.rb +1 -1
- data/twilio-ruby.gemspec +1 -1
- metadata +20 -4
@@ -0,0 +1,467 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
|
4
|
+
# | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
|
5
|
+
# | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
|
6
|
+
#
|
7
|
+
# Twilio - Verify
|
8
|
+
# This is the public Twilio REST API.
|
9
|
+
#
|
10
|
+
# NOTE: This class is auto generated by OpenAPI Generator.
|
11
|
+
# https://openapi-generator.tech
|
12
|
+
# Do not edit the class manually.
|
13
|
+
#
|
14
|
+
|
15
|
+
|
16
|
+
module Twilio
|
17
|
+
module REST
|
18
|
+
class Verify < VerifyBase
|
19
|
+
class V2 < Version
|
20
|
+
class ServiceContext < InstanceContext
|
21
|
+
|
22
|
+
class NewFactorList < ListResource
|
23
|
+
|
24
|
+
class CreateNewPasskeysFactorRequest
|
25
|
+
# @param [friendly_name]: [String]
|
26
|
+
# @param [identity]: [String]
|
27
|
+
# @param [config]: [NewFactorList.CreateNewPasskeysFactorRequestConfig]
|
28
|
+
attr_accessor :friendly_name, :identity, :config
|
29
|
+
def initialize(payload)
|
30
|
+
@friendly_name = payload["friendly_name"]
|
31
|
+
@identity = payload["identity"]
|
32
|
+
@config = payload["config"]
|
33
|
+
end
|
34
|
+
def to_json(options = {})
|
35
|
+
{
|
36
|
+
"friendly_name": @friendly_name,
|
37
|
+
"identity": @identity,
|
38
|
+
"config": @config,
|
39
|
+
}.to_json(options)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
class CreateNewPasskeysFactorRequestConfig
|
44
|
+
# @param [relying_party]: [NewFactorList.CreateNewPasskeysFactorRequestConfigRelyingParty]
|
45
|
+
# @param [authenticator_attachment]: [String]
|
46
|
+
# @param [discoverable_credentials]: [String]
|
47
|
+
# @param [user_verification]: [String]
|
48
|
+
attr_accessor :relying_party, :authenticator_attachment, :discoverable_credentials, :user_verification
|
49
|
+
def initialize(payload)
|
50
|
+
@relying_party = payload["relying_party"]
|
51
|
+
@authenticator_attachment = payload["authenticator_attachment"]
|
52
|
+
@discoverable_credentials = payload["discoverable_credentials"]
|
53
|
+
@user_verification = payload["user_verification"]
|
54
|
+
end
|
55
|
+
def to_json(options = {})
|
56
|
+
{
|
57
|
+
"relying_party": @relying_party,
|
58
|
+
"authenticator_attachment": @authenticator_attachment,
|
59
|
+
"discoverable_credentials": @discoverable_credentials,
|
60
|
+
"user_verification": @user_verification,
|
61
|
+
}.to_json(options)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
class CreateNewPasskeysFactorRequestConfigRelyingParty
|
66
|
+
# @param [id]: [String]
|
67
|
+
# @param [name]: [String]
|
68
|
+
# @param [origins]: [Array<String>]
|
69
|
+
attr_accessor :id, :name, :origins
|
70
|
+
def initialize(payload)
|
71
|
+
@id = payload["id"]
|
72
|
+
@name = payload["name"]
|
73
|
+
@origins = payload["origins"]
|
74
|
+
end
|
75
|
+
def to_json(options = {})
|
76
|
+
{
|
77
|
+
"id": @id,
|
78
|
+
"name": @name,
|
79
|
+
"origins": @origins,
|
80
|
+
}.to_json(options)
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
class VerifyPasskeysFactorRequest
|
85
|
+
# @param [id]: [String] A [base64url](https://base64.guru/standards/base64url) encoded representation of `rawId`.
|
86
|
+
# @param [raw_id]: [String] The globally unique identifier for this `PublicKeyCredential`.
|
87
|
+
# @param [authenticator_attachment]: [String] A string that indicates the mechanism by which the WebAuthn implementation is attached to the authenticator at the time the associated `navigator.credentials.create()` or `navigator.credentials.get()` call completes.
|
88
|
+
# @param [type]: [String] The valid credential types supported by the API. The values of this enumeration are used for versioning the `AuthenticatorAssertion` and `AuthenticatorAttestation` structures according to the type of the authenticator.
|
89
|
+
# @param [response]: [NewFactorList.VerifyPasskeysFactorRequestResponse]
|
90
|
+
attr_accessor :id, :raw_id, :authenticator_attachment, :type, :response
|
91
|
+
def initialize(payload)
|
92
|
+
@id = payload["id"]
|
93
|
+
@raw_id = payload["raw_id"]
|
94
|
+
@authenticator_attachment = payload["authenticator_attachment"]
|
95
|
+
@type = payload["type"]
|
96
|
+
@response = payload["response"]
|
97
|
+
end
|
98
|
+
def to_json(options = {})
|
99
|
+
{
|
100
|
+
"id": @id,
|
101
|
+
"rawId": @raw_id,
|
102
|
+
"authenticatorAttachment": @authenticator_attachment,
|
103
|
+
"type": @type,
|
104
|
+
"response": @response,
|
105
|
+
}.to_json(options)
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
109
|
+
class VerifyPasskeysFactorRequestResponse
|
110
|
+
# @param [attestation_object]: [String] The authenticator data and an attestation statement for a new key pair generated by the authenticator.
|
111
|
+
# @param [client_data_json]: [String] This property contains the JSON-compatible serialization of the data passed from the browser to the authenticator in order to generate this credential.
|
112
|
+
# @param [transports]: [Array<String>] An array of strings providing hints as to the methods the client could use to communicate with the relevant authenticator of the public key credential to retrieve.
|
113
|
+
attr_accessor :attestation_object, :client_data_json, :transports
|
114
|
+
def initialize(payload)
|
115
|
+
@attestation_object = payload["attestation_object"]
|
116
|
+
@client_data_json = payload["client_data_json"]
|
117
|
+
@transports = payload["transports"]
|
118
|
+
end
|
119
|
+
def to_json(options = {})
|
120
|
+
{
|
121
|
+
"attestationObject": @attestation_object,
|
122
|
+
"clientDataJSON": @client_data_json,
|
123
|
+
"transports": @transports,
|
124
|
+
}.to_json(options)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
|
129
|
+
class CreateNewPasskeysFactorRequest
|
130
|
+
# @param [friendly_name]: [String]
|
131
|
+
# @param [identity]: [String]
|
132
|
+
# @param [config]: [NewFactorList.CreateNewPasskeysFactorRequestConfig]
|
133
|
+
attr_accessor :friendly_name, :identity, :config
|
134
|
+
def initialize(payload)
|
135
|
+
@friendly_name = payload["friendly_name"]
|
136
|
+
@identity = payload["identity"]
|
137
|
+
@config = payload["config"]
|
138
|
+
end
|
139
|
+
def to_json(options = {})
|
140
|
+
{
|
141
|
+
"friendly_name": @friendly_name,
|
142
|
+
"identity": @identity,
|
143
|
+
"config": @config,
|
144
|
+
}.to_json(options)
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
148
|
+
class CreateNewPasskeysFactorRequestConfig
|
149
|
+
# @param [relying_party]: [NewFactorList.CreateNewPasskeysFactorRequestConfigRelyingParty]
|
150
|
+
# @param [authenticator_attachment]: [String]
|
151
|
+
# @param [discoverable_credentials]: [String]
|
152
|
+
# @param [user_verification]: [String]
|
153
|
+
attr_accessor :relying_party, :authenticator_attachment, :discoverable_credentials, :user_verification
|
154
|
+
def initialize(payload)
|
155
|
+
@relying_party = payload["relying_party"]
|
156
|
+
@authenticator_attachment = payload["authenticator_attachment"]
|
157
|
+
@discoverable_credentials = payload["discoverable_credentials"]
|
158
|
+
@user_verification = payload["user_verification"]
|
159
|
+
end
|
160
|
+
def to_json(options = {})
|
161
|
+
{
|
162
|
+
"relying_party": @relying_party,
|
163
|
+
"authenticator_attachment": @authenticator_attachment,
|
164
|
+
"discoverable_credentials": @discoverable_credentials,
|
165
|
+
"user_verification": @user_verification,
|
166
|
+
}.to_json(options)
|
167
|
+
end
|
168
|
+
end
|
169
|
+
|
170
|
+
class CreateNewPasskeysFactorRequestConfigRelyingParty
|
171
|
+
# @param [id]: [String]
|
172
|
+
# @param [name]: [String]
|
173
|
+
# @param [origins]: [Array<String>]
|
174
|
+
attr_accessor :id, :name, :origins
|
175
|
+
def initialize(payload)
|
176
|
+
@id = payload["id"]
|
177
|
+
@name = payload["name"]
|
178
|
+
@origins = payload["origins"]
|
179
|
+
end
|
180
|
+
def to_json(options = {})
|
181
|
+
{
|
182
|
+
"id": @id,
|
183
|
+
"name": @name,
|
184
|
+
"origins": @origins,
|
185
|
+
}.to_json(options)
|
186
|
+
end
|
187
|
+
end
|
188
|
+
|
189
|
+
class VerifyPasskeysFactorRequest
|
190
|
+
# @param [id]: [String] A [base64url](https://base64.guru/standards/base64url) encoded representation of `rawId`.
|
191
|
+
# @param [raw_id]: [String] The globally unique identifier for this `PublicKeyCredential`.
|
192
|
+
# @param [authenticator_attachment]: [String] A string that indicates the mechanism by which the WebAuthn implementation is attached to the authenticator at the time the associated `navigator.credentials.create()` or `navigator.credentials.get()` call completes.
|
193
|
+
# @param [type]: [String] The valid credential types supported by the API. The values of this enumeration are used for versioning the `AuthenticatorAssertion` and `AuthenticatorAttestation` structures according to the type of the authenticator.
|
194
|
+
# @param [response]: [NewFactorList.VerifyPasskeysFactorRequestResponse]
|
195
|
+
attr_accessor :id, :raw_id, :authenticator_attachment, :type, :response
|
196
|
+
def initialize(payload)
|
197
|
+
@id = payload["id"]
|
198
|
+
@raw_id = payload["raw_id"]
|
199
|
+
@authenticator_attachment = payload["authenticator_attachment"]
|
200
|
+
@type = payload["type"]
|
201
|
+
@response = payload["response"]
|
202
|
+
end
|
203
|
+
def to_json(options = {})
|
204
|
+
{
|
205
|
+
"id": @id,
|
206
|
+
"rawId": @raw_id,
|
207
|
+
"authenticatorAttachment": @authenticator_attachment,
|
208
|
+
"type": @type,
|
209
|
+
"response": @response,
|
210
|
+
}.to_json(options)
|
211
|
+
end
|
212
|
+
end
|
213
|
+
|
214
|
+
class VerifyPasskeysFactorRequestResponse
|
215
|
+
# @param [attestation_object]: [String] The authenticator data and an attestation statement for a new key pair generated by the authenticator.
|
216
|
+
# @param [client_data_json]: [String] This property contains the JSON-compatible serialization of the data passed from the browser to the authenticator in order to generate this credential.
|
217
|
+
# @param [transports]: [Array<String>] An array of strings providing hints as to the methods the client could use to communicate with the relevant authenticator of the public key credential to retrieve.
|
218
|
+
attr_accessor :attestation_object, :client_data_json, :transports
|
219
|
+
def initialize(payload)
|
220
|
+
@attestation_object = payload["attestation_object"]
|
221
|
+
@client_data_json = payload["client_data_json"]
|
222
|
+
@transports = payload["transports"]
|
223
|
+
end
|
224
|
+
def to_json(options = {})
|
225
|
+
{
|
226
|
+
"attestationObject": @attestation_object,
|
227
|
+
"clientDataJSON": @client_data_json,
|
228
|
+
"transports": @transports,
|
229
|
+
}.to_json(options)
|
230
|
+
end
|
231
|
+
end
|
232
|
+
|
233
|
+
|
234
|
+
##
|
235
|
+
# Initialize the NewFactorList
|
236
|
+
# @param [Version] version Version that contains the resource
|
237
|
+
# @return [NewFactorList] NewFactorList
|
238
|
+
def initialize(version, service_sid: nil)
|
239
|
+
super(version)
|
240
|
+
# Path Solution
|
241
|
+
@solution = { service_sid: service_sid }
|
242
|
+
@uri = "/Services/#{@solution[:service_sid]}/Passkeys/VerifyFactor"
|
243
|
+
|
244
|
+
end
|
245
|
+
##
|
246
|
+
# Create the NewFactorInstance
|
247
|
+
# @param [CreateNewPasskeysFactorRequest] create_new_passkeys_factor_request
|
248
|
+
# @return [NewFactorInstance] Created NewFactorInstance
|
249
|
+
def create(create_new_passkeys_factor_request: nil
|
250
|
+
)
|
251
|
+
|
252
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
253
|
+
headers['Content-Type'] = 'application/json'
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
|
258
|
+
payload = @version.create('POST', @uri, headers: headers, data: create_new_passkeys_factor_request.to_json)
|
259
|
+
NewFactorInstance.new(
|
260
|
+
@version,
|
261
|
+
payload,
|
262
|
+
service_sid: @solution[:service_sid],
|
263
|
+
)
|
264
|
+
end
|
265
|
+
|
266
|
+
##
|
267
|
+
# Update the NewFactorInstance
|
268
|
+
# @param [VerifyPasskeysFactorRequest] verify_passkeys_factor_request
|
269
|
+
# @return [NewFactorInstance] Updated NewFactorInstance
|
270
|
+
def update(verify_passkeys_factor_request: nil
|
271
|
+
)
|
272
|
+
|
273
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
274
|
+
headers['Content-Type'] = 'application/json'
|
275
|
+
|
276
|
+
|
277
|
+
|
278
|
+
|
279
|
+
payload = @version.update('POST', @uri, headers: headers, data: verify_passkeys_factor_request.to_json)
|
280
|
+
NewFactorInstance.new(
|
281
|
+
@version,
|
282
|
+
payload,
|
283
|
+
service_sid: @solution[:service_sid],
|
284
|
+
)
|
285
|
+
end
|
286
|
+
|
287
|
+
|
288
|
+
|
289
|
+
|
290
|
+
# Provide a user friendly representation
|
291
|
+
def to_s
|
292
|
+
'#<Twilio.Verify.V2.NewFactorList>'
|
293
|
+
end
|
294
|
+
end
|
295
|
+
|
296
|
+
class NewFactorPage < Page
|
297
|
+
##
|
298
|
+
# Initialize the NewFactorPage
|
299
|
+
# @param [Version] version Version that contains the resource
|
300
|
+
# @param [Response] response Response from the API
|
301
|
+
# @param [Hash] solution Path solution for the resource
|
302
|
+
# @return [NewFactorPage] NewFactorPage
|
303
|
+
def initialize(version, response, solution)
|
304
|
+
super(version, response)
|
305
|
+
|
306
|
+
# Path Solution
|
307
|
+
@solution = solution
|
308
|
+
end
|
309
|
+
|
310
|
+
##
|
311
|
+
# Build an instance of NewFactorInstance
|
312
|
+
# @param [Hash] payload Payload response from the API
|
313
|
+
# @return [NewFactorInstance] NewFactorInstance
|
314
|
+
def get_instance(payload)
|
315
|
+
NewFactorInstance.new(@version, payload, service_sid: @solution[:service_sid])
|
316
|
+
end
|
317
|
+
|
318
|
+
##
|
319
|
+
# Provide a user friendly representation
|
320
|
+
def to_s
|
321
|
+
'<Twilio.Verify.V2.NewFactorPage>'
|
322
|
+
end
|
323
|
+
end
|
324
|
+
class NewFactorInstance < InstanceResource
|
325
|
+
##
|
326
|
+
# Initialize the NewFactorInstance
|
327
|
+
# @param [Version] version Version that contains the resource
|
328
|
+
# @param [Hash] payload payload that contains response from Twilio
|
329
|
+
# @param [String] account_sid The SID of the
|
330
|
+
# {Account}[https://www.twilio.com/docs/iam/api/account] that created this NewFactor
|
331
|
+
# resource.
|
332
|
+
# @param [String] sid The SID of the Call resource to fetch.
|
333
|
+
# @return [NewFactorInstance] NewFactorInstance
|
334
|
+
def initialize(version, payload , service_sid: nil)
|
335
|
+
super(version)
|
336
|
+
|
337
|
+
# Marshaled Properties
|
338
|
+
@properties = {
|
339
|
+
'sid' => payload['sid'],
|
340
|
+
'account_sid' => payload['account_sid'],
|
341
|
+
'service_sid' => payload['service_sid'],
|
342
|
+
'entity_sid' => payload['entity_sid'],
|
343
|
+
'identity' => payload['identity'],
|
344
|
+
'binding' => payload['binding'],
|
345
|
+
'options' => payload['options'],
|
346
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
347
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
348
|
+
'friendly_name' => payload['friendly_name'],
|
349
|
+
'status' => payload['status'],
|
350
|
+
'factor_type' => payload['factor_type'],
|
351
|
+
'config' => payload['config'],
|
352
|
+
'metadata' => payload['metadata'],
|
353
|
+
'url' => payload['url'],
|
354
|
+
}
|
355
|
+
end
|
356
|
+
|
357
|
+
|
358
|
+
##
|
359
|
+
# @return [String] A 34 character string that uniquely identifies this Factor.
|
360
|
+
def sid
|
361
|
+
@properties['sid']
|
362
|
+
end
|
363
|
+
|
364
|
+
##
|
365
|
+
# @return [String] The unique SID identifier of the Account.
|
366
|
+
def account_sid
|
367
|
+
@properties['account_sid']
|
368
|
+
end
|
369
|
+
|
370
|
+
##
|
371
|
+
# @return [String] The unique SID identifier of the Service.
|
372
|
+
def service_sid
|
373
|
+
@properties['service_sid']
|
374
|
+
end
|
375
|
+
|
376
|
+
##
|
377
|
+
# @return [String] The unique SID identifier of the Entity.
|
378
|
+
def entity_sid
|
379
|
+
@properties['entity_sid']
|
380
|
+
end
|
381
|
+
|
382
|
+
##
|
383
|
+
# @return [String] Customer unique identity for the Entity owner of the Factor.
|
384
|
+
def identity
|
385
|
+
@properties['identity']
|
386
|
+
end
|
387
|
+
|
388
|
+
##
|
389
|
+
# @return [Hash] Contains the `factor_type` specific secret and metadata. The Binding property is ONLY returned upon Factor creation.
|
390
|
+
def binding
|
391
|
+
@properties['binding']
|
392
|
+
end
|
393
|
+
|
394
|
+
##
|
395
|
+
# @return [Hash]
|
396
|
+
def options
|
397
|
+
@properties['options']
|
398
|
+
end
|
399
|
+
|
400
|
+
##
|
401
|
+
# @return [Time] The date that this Factor was created, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
402
|
+
def date_created
|
403
|
+
@properties['date_created']
|
404
|
+
end
|
405
|
+
|
406
|
+
##
|
407
|
+
# @return [Time] The date that this Factor was updated, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
408
|
+
def date_updated
|
409
|
+
@properties['date_updated']
|
410
|
+
end
|
411
|
+
|
412
|
+
##
|
413
|
+
# @return [String] The friendly name of this Factor. This can be any string up to 64 characters, meant for humans to distinguish between Factors.
|
414
|
+
def friendly_name
|
415
|
+
@properties['friendly_name']
|
416
|
+
end
|
417
|
+
|
418
|
+
##
|
419
|
+
# @return [String] The Status of this Factor. One of `unverified` or `verified`.
|
420
|
+
def status
|
421
|
+
@properties['status']
|
422
|
+
end
|
423
|
+
|
424
|
+
##
|
425
|
+
# @return [String] The Type of this Factor. Currently `push` and `totp` are supported.
|
426
|
+
def factor_type
|
427
|
+
@properties['factor_type']
|
428
|
+
end
|
429
|
+
|
430
|
+
##
|
431
|
+
# @return [Hash] An object that contains configurations specific to a `factor_type`.
|
432
|
+
def config
|
433
|
+
@properties['config']
|
434
|
+
end
|
435
|
+
|
436
|
+
##
|
437
|
+
# @return [Hash] Custom metadata associated with the factor.
|
438
|
+
def metadata
|
439
|
+
@properties['metadata']
|
440
|
+
end
|
441
|
+
|
442
|
+
##
|
443
|
+
# @return [String] The URL of this resource.
|
444
|
+
def url
|
445
|
+
@properties['url']
|
446
|
+
end
|
447
|
+
|
448
|
+
##
|
449
|
+
# Provide a user friendly representation
|
450
|
+
def to_s
|
451
|
+
"<Twilio.Verify.V2.NewFactorInstance>"
|
452
|
+
end
|
453
|
+
|
454
|
+
##
|
455
|
+
# Provide a detailed, user friendly representation
|
456
|
+
def inspect
|
457
|
+
"<Twilio.Verify.V2.NewFactorInstance>"
|
458
|
+
end
|
459
|
+
end
|
460
|
+
|
461
|
+
end
|
462
|
+
end
|
463
|
+
end
|
464
|
+
end
|
465
|
+
end
|
466
|
+
|
467
|
+
|
@@ -242,10 +242,14 @@ module Twilio
|
|
242
242
|
|
243
243
|
# Dependents
|
244
244
|
@verification_checks = nil
|
245
|
+
@new_factors = nil
|
246
|
+
@new_factors = nil
|
247
|
+
@approve_challenge = nil
|
245
248
|
@verifications = nil
|
246
249
|
@access_tokens = nil
|
247
250
|
@webhooks = nil
|
248
251
|
@messaging_configurations = nil
|
252
|
+
@new_challenge = nil
|
249
253
|
@entities = nil
|
250
254
|
@rate_limits = nil
|
251
255
|
end
|
@@ -393,6 +397,39 @@ module Twilio
|
|
393
397
|
@verification_checks
|
394
398
|
end
|
395
399
|
##
|
400
|
+
# Access the new_factors
|
401
|
+
# @return [NewFactorList]
|
402
|
+
# @return [NewFactorContext]
|
403
|
+
def new_factors
|
404
|
+
unless @new_factors
|
405
|
+
@new_factors = NewFactorList.new(
|
406
|
+
@version, )
|
407
|
+
end
|
408
|
+
@new_factors
|
409
|
+
end
|
410
|
+
##
|
411
|
+
# Access the new_factors
|
412
|
+
# @return [NewFactorList]
|
413
|
+
# @return [NewFactorContext]
|
414
|
+
def new_factors
|
415
|
+
unless @new_factors
|
416
|
+
@new_factors = NewFactorList.new(
|
417
|
+
@version, )
|
418
|
+
end
|
419
|
+
@new_factors
|
420
|
+
end
|
421
|
+
##
|
422
|
+
# Access the approve_challenge
|
423
|
+
# @return [ApproveChallengeList]
|
424
|
+
# @return [ApproveChallengeContext]
|
425
|
+
def approve_challenge
|
426
|
+
unless @approve_challenge
|
427
|
+
@approve_challenge = ApproveChallengeList.new(
|
428
|
+
@version, )
|
429
|
+
end
|
430
|
+
@approve_challenge
|
431
|
+
end
|
432
|
+
##
|
396
433
|
# Access the verifications
|
397
434
|
# @return [VerificationList]
|
398
435
|
# @return [VerificationContext] if sid was passed.
|
@@ -469,6 +506,16 @@ module Twilio
|
|
469
506
|
@messaging_configurations
|
470
507
|
end
|
471
508
|
##
|
509
|
+
# Access the new_challenge
|
510
|
+
# @return [NewChallengeList]
|
511
|
+
# @return [NewChallengeContext]
|
512
|
+
def new_challenge
|
513
|
+
NewChallengeContext.new(
|
514
|
+
@version,
|
515
|
+
@solution[:sid]
|
516
|
+
)
|
517
|
+
end
|
518
|
+
##
|
472
519
|
# Access the entities
|
473
520
|
# @return [EntityList]
|
474
521
|
# @return [EntityContext] if sid was passed.
|
@@ -841,6 +888,27 @@ module Twilio
|
|
841
888
|
context.verification_checks
|
842
889
|
end
|
843
890
|
|
891
|
+
##
|
892
|
+
# Access the new_factors
|
893
|
+
# @return [new_factors] new_factors
|
894
|
+
def new_factors
|
895
|
+
context.new_factors
|
896
|
+
end
|
897
|
+
|
898
|
+
##
|
899
|
+
# Access the new_factors
|
900
|
+
# @return [new_factors] new_factors
|
901
|
+
def new_factors
|
902
|
+
context.new_factors
|
903
|
+
end
|
904
|
+
|
905
|
+
##
|
906
|
+
# Access the approve_challenge
|
907
|
+
# @return [approve_challenge] approve_challenge
|
908
|
+
def approve_challenge
|
909
|
+
context.approve_challenge
|
910
|
+
end
|
911
|
+
|
844
912
|
##
|
845
913
|
# Access the verifications
|
846
914
|
# @return [verifications] verifications
|
@@ -869,6 +937,13 @@ module Twilio
|
|
869
937
|
context.messaging_configurations
|
870
938
|
end
|
871
939
|
|
940
|
+
##
|
941
|
+
# Access the new_challenge
|
942
|
+
# @return [new_challenge] new_challenge
|
943
|
+
def new_challenge
|
944
|
+
context.new_challenge
|
945
|
+
end
|
946
|
+
|
872
947
|
##
|
873
948
|
# Access the entities
|
874
949
|
# @return [entities] entities
|
@@ -21,12 +21,17 @@ module Twilio
|
|
21
21
|
@base_url = "https://voice.twilio.com"
|
22
22
|
@host = "voice.twilio.com"
|
23
23
|
@port = 443
|
24
|
+
@v1 = nil
|
25
|
+
end
|
26
|
+
|
27
|
+
def v1
|
28
|
+
@v1 ||= Voice::V1.new self
|
24
29
|
end
|
25
30
|
|
26
31
|
##
|
27
32
|
# Provide a user friendly representation
|
28
33
|
def to_s
|
29
|
-
'<Twilio::REST::Voice>';
|
34
|
+
'<Twilio::REST::Voice::V1>';
|
30
35
|
end
|
31
36
|
end
|
32
37
|
end
|
@@ -2049,6 +2049,26 @@ module Twilio
|
|
2049
2049
|
yield(assistant) if block_given?
|
2050
2050
|
append(assistant)
|
2051
2051
|
end
|
2052
|
+
|
2053
|
+
##
|
2054
|
+
# Create a new <AiSession> element
|
2055
|
+
# ai_connector:: The unique name or installed add-on sid that identifies the installed addon resource for the AI Connector
|
2056
|
+
# ai_session_configuration:: The unique name or id of the AiSession Configuration resource.
|
2057
|
+
# keyword_args:: additional attributes
|
2058
|
+
def ai_session(ai_connector: nil, ai_session_configuration: nil, **keyword_args)
|
2059
|
+
append(AiSession.new(ai_connector: ai_connector, ai_session_configuration: ai_session_configuration, **keyword_args))
|
2060
|
+
end
|
2061
|
+
end
|
2062
|
+
|
2063
|
+
##
|
2064
|
+
# <AiSession> TwiML Noun
|
2065
|
+
class AiSession < TwiML
|
2066
|
+
def initialize(**keyword_args)
|
2067
|
+
super(**keyword_args)
|
2068
|
+
@name = 'AiSession'
|
2069
|
+
|
2070
|
+
yield(self) if block_given?
|
2071
|
+
end
|
2052
2072
|
end
|
2053
2073
|
|
2054
2074
|
##
|
data/lib/twilio-ruby/version.rb
CHANGED
data/twilio-ruby.gemspec
CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.extra_rdoc_files = ['README.md', 'LICENSE']
|
26
26
|
spec.rdoc_options = ['--line-numbers', '--inline-source', '--title', 'twilio-ruby', '--main', 'README.md']
|
27
27
|
|
28
|
-
spec.add_dependency('jwt', '>= 1.5', '<
|
28
|
+
spec.add_dependency('jwt', '>= 1.5', '< 4.0')
|
29
29
|
spec.add_dependency('nokogiri', '>= 1.6', '< 2.0')
|
30
30
|
spec.add_dependency('faraday', '>= 0.9', '< 3.0')
|
31
31
|
# Workaround for RBX <= 2.2.1, should be fixed in next version
|