Class: Twilio::REST::Verify::V2::ServiceContext::EntityContext::ChallengeInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb

Overview

PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, identity: nil, sid: nil) ⇒ ChallengeInstance

Initialize the ChallengeInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • service_sid (String) (defaults to: nil)

    The unique SID identifier of the Service.

  • identity (String) (defaults to: nil)

    Customer unique identity for the Entity owner of the Challenge. This value must be between 8 and 64 characters long.

  • sid (String) (defaults to: nil)

    A 34 character string that uniquely identifies this Challenge.



286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 286

def initialize(version, payload, service_sid: nil, identity: nil, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'service_sid' => payload['service_sid'],
      'entity_sid' => payload['entity_sid'],
      'identity' => payload['identity'],
      'factor_sid' => payload['factor_sid'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'date_responded' => Twilio.deserialize_iso8601_datetime(payload['date_responded']),
      'expiration_date' => Twilio.deserialize_iso8601_datetime(payload['expiration_date']),
      'status' => payload['status'],
      'responded_reason' => payload['responded_reason'],
      'details' => payload['details'],
      'hidden_details' => payload['hidden_details'],
      'factor_type' => payload['factor_type'],
      'url' => payload['url'],
  }

  # Context
  @instance_context = nil
  @params = {'service_sid' => service_sid, 'identity' => identity, 'sid' => sid || @properties['sid'], }
end

Instance Method Details

#account_sidString

Returns Account Sid.

Returns:

  • (String)

    Account Sid.



338
339
340
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 338

def 
  @properties['account_sid']
end

#contextChallengeContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



318
319
320
321
322
323
324
325
326
327
328
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 318

def context
  unless @instance_context
    @instance_context = ChallengeContext.new(
        @version,
        @params['service_sid'],
        @params['identity'],
        @params['sid'],
    )
  end
  @instance_context
end

#date_createdTime

Returns The date this Challenge was created.

Returns:

  • (Time)

    The date this Challenge was created



368
369
370
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 368

def date_created
  @properties['date_created']
end

#date_respondedTime

Returns The date this Challenge was responded.

Returns:

  • (Time)

    The date this Challenge was responded



380
381
382
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 380

def date_responded
  @properties['date_responded']
end

#date_updatedTime

Returns The date this Challenge was updated.

Returns:

  • (Time)

    The date this Challenge was updated



374
375
376
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 374

def date_updated
  @properties['date_updated']
end

#detailsHash

Returns Details about the Challenge.

Returns:

  • (Hash)

    Details about the Challenge.



404
405
406
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 404

def details
  @properties['details']
end

#entity_sidString

Returns Entity Sid.

Returns:

  • (String)

    Entity Sid.



350
351
352
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 350

def entity_sid
  @properties['entity_sid']
end

#expiration_dateTime

Returns The date-time when this Challenge expires.

Returns:

  • (Time)

    The date-time when this Challenge expires



386
387
388
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 386

def expiration_date
  @properties['expiration_date']
end

#factor_sidString

Returns Factor Sid.

Returns:

  • (String)

    Factor Sid.



362
363
364
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 362

def factor_sid
  @properties['factor_sid']
end

#factor_typechallenge.FactorTypes

Returns The Factor Type of this Challenge.

Returns:

  • (challenge.FactorTypes)

    The Factor Type of this Challenge



416
417
418
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 416

def factor_type
  @properties['factor_type']
end

#fetchChallengeInstance

Fetch the ChallengeInstance

Returns:



429
430
431
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 429

def fetch
  context.fetch
end

#hidden_detailsHash

Returns Hidden details about the Challenge.

Returns:

  • (Hash)

    Hidden details about the Challenge



410
411
412
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 410

def hidden_details
  @properties['hidden_details']
end

#identityString

Returns Unique external identifier of the Entity.

Returns:

  • (String)

    Unique external identifier of the Entity



356
357
358
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 356

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



451
452
453
454
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 451

def inspect
  values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Verify.V2.ChallengeInstance #{values}>"
end

#responded_reasonchallenge.ChallengeReasons

Returns The Reason of this Challenge ‘status`.

Returns:

  • (challenge.ChallengeReasons)

    The Reason of this Challenge ‘status`



398
399
400
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 398

def responded_reason
  @properties['responded_reason']
end

#service_sidString

Returns Service Sid.

Returns:

  • (String)

    Service Sid.



344
345
346
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 344

def service_sid
  @properties['service_sid']
end

#sidString

Returns A string that uniquely identifies this Challenge.

Returns:

  • (String)

    A string that uniquely identifies this Challenge.



332
333
334
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 332

def sid
  @properties['sid']
end

#statuschallenge.ChallengeStatuses

Returns The Status of this Challenge.

Returns:

  • (challenge.ChallengeStatuses)

    The Status of this Challenge



392
393
394
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 392

def status
  @properties['status']
end

#to_sObject

Provide a user friendly representation



444
445
446
447
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 444

def to_s
  values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Verify.V2.ChallengeInstance #{values}>"
end

#update(auth_payload: :unset) ⇒ ChallengeInstance

Update the ChallengeInstance

Parameters:

  • auth_payload (String) (defaults to: :unset)

    The optional payload needed to verify the Challenge. E.g., a TOTP would use the numeric code.

Returns:



438
439
440
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 438

def update(auth_payload: :unset)
  context.update(auth_payload: auth_payload, )
end

#urlString

Returns The URL of this resource.

Returns:

  • (String)

    The URL of this resource.



422
423
424
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 422

def url
  @properties['url']
end