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.


317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 317

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'],
      'links' => payload['links'],
  }

  # 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.


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

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:


350
351
352
353
354
355
356
357
358
359
360
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 350

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


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

def date_created
  @properties['date_created']
end

#date_respondedTime

Returns The date this Challenge was responded.

Returns:

  • (Time)

    The date this Challenge was responded


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

def date_responded
  @properties['date_responded']
end

#date_updatedTime

Returns The date this Challenge was updated.

Returns:

  • (Time)

    The date this Challenge was updated


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

def date_updated
  @properties['date_updated']
end

#detailsHash

Returns Details about the Challenge.

Returns:

  • (Hash)

    Details about the Challenge.


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

def details
  @properties['details']
end

#entity_sidString

Returns Entity Sid.

Returns:

  • (String)

    Entity Sid.


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

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


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

def expiration_date
  @properties['expiration_date']
end

#factor_sidString

Returns Factor Sid.

Returns:

  • (String)

    Factor Sid.


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

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


448
449
450
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 448

def factor_type
  @properties['factor_type']
end

#fetchChallengeInstance

Fetch the ChallengeInstance

Returns:


467
468
469
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 467

def fetch
  context.fetch
end

#hidden_detailsHash

Returns Hidden details about the Challenge.

Returns:

  • (Hash)

    Hidden details about the Challenge


442
443
444
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 442

def hidden_details
  @properties['hidden_details']
end

#identityString

Returns Unique external identifier of the Entity.

Returns:

  • (String)

    Unique external identifier of the Entity


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

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation


498
499
500
501
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 498

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

Returns Nested resource URLs.

Returns:

  • (String)

    Nested resource URLs.


460
461
462
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 460

def links
  @properties['links']
end

#notificationsnotifications

Access the notifications

Returns:


485
486
487
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 485

def notifications
  context.notifications
end

#responded_reasonchallenge.ChallengeReasons

Returns The Reason of this Challenge `status`.

Returns:

  • (challenge.ChallengeReasons)

    The Reason of this Challenge `status`


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

def responded_reason
  @properties['responded_reason']
end

#service_sidString

Returns Service Sid.

Returns:

  • (String)

    Service Sid.


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

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.


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

def sid
  @properties['sid']
end

#statuschallenge.ChallengeStatuses

Returns The Status of this Challenge.

Returns:

  • (challenge.ChallengeStatuses)

    The Status of this Challenge


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

def status
  @properties['status']
end

#to_sObject

Provide a user friendly representation


491
492
493
494
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 491

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. For `TOTP` this value must be between 3 and 8 characters long. For `Push` this value can be up to 5456 characters in length

Returns:


478
479
480
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 478

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.


454
455
456
# File 'lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb', line 454

def url
  @properties['url']
end