Class: Twilio::REST::Studio::V1::FlowContext::EngagementInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/studio/v1/flow/engagement.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, flow_sid: nil, sid: nil) ⇒ EngagementInstance

Initialize the EngagementInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • account_sid (String)

    The SID of the Account that created this Engagement resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 522

def initialize(version, payload , flow_sid: nil, sid: nil)
    super(version)
    
    
    # Marshaled Properties
    @properties = { 
        'sid' => payload['sid'],
        'account_sid' => payload['account_sid'],
        'flow_sid' => payload['flow_sid'],
        'contact_sid' => payload['contact_sid'],
        'contact_channel_address' => payload['contact_channel_address'],
        'context' => payload['context'],
        'status' => payload['status'],
        'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
        'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
        'url' => payload['url'],
        'links' => payload['links'],
    }

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

Instance Method Details

#account_sidString

Returns The SID of the [Account](www.twilio.com/docs/iam/api/account) that created the Engagement resource.

Returns:



565
566
567
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 565

def 
    @properties['account_sid']
end

#contact_channel_addressString

Returns The phone number, SIP address or Client identifier that triggered this Engagement. Phone numbers are in E.164 format (+16175551212). SIP addresses are formatted as ‘name@company.com`. Client identifiers are formatted `client:name`.

Returns:

  • (String)

    The phone number, SIP address or Client identifier that triggered this Engagement. Phone numbers are in E.164 format (+16175551212). SIP addresses are formatted as ‘name@company.com`. Client identifiers are formatted `client:name`.



583
584
585
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 583

def contact_channel_address
    @properties['contact_channel_address']
end

#contact_sidString

Returns The SID of the Contact.

Returns:

  • (String)

    The SID of the Contact.



577
578
579
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 577

def contact_sid
    @properties['contact_sid']
end

#contextHash

Returns The current state of the execution flow. As your flow executes, we save the state in a flow context. Your widgets can access the data in the flow context as variables, either in configuration fields or in text areas as variable substitution.

Returns:

  • (Hash)

    The current state of the execution flow. As your flow executes, we save the state in a flow context. Your widgets can access the data in the flow context as variables, either in configuration fields or in text areas as variable substitution.



550
551
552
553
554
555
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 550

def context
    unless @instance_context
        @instance_context = EngagementContext.new(@version , @params['flow_sid'], @params['sid'])
    end
    @instance_context
end

#date_createdTime

Returns The date and time in GMT when the Engagement was created in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



601
602
603
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 601

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns The date and time in GMT when the Engagement was updated in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



607
608
609
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 607

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the EngagementInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



626
627
628
629
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 626

def delete

    context.delete
end

#engagement_contextengagement_context

Access the engagement_context

Returns:



649
650
651
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 649

def engagement_context
    context.engagement_context
end

#fetchEngagementInstance

Fetch the EngagementInstance

Returns:



634
635
636
637
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 634

def fetch

    context.fetch
end

#flow_sidString

Returns The SID of the Flow.

Returns:

  • (String)

    The SID of the Flow.



571
572
573
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 571

def flow_sid
    @properties['flow_sid']
end

#inspectObject

Provide a detailed, user friendly representation



662
663
664
665
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 662

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

Returns The URLs of the Engagement’s nested resources.

Returns:

  • (Hash)

    The URLs of the Engagement’s nested resources.



619
620
621
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 619

def links
    @properties['links']
end

#sidString

Returns The unique string that we created to identify the Engagement resource.

Returns:

  • (String)

    The unique string that we created to identify the Engagement resource.



559
560
561
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 559

def sid
    @properties['sid']
end

#statusStatus

Returns:

  • (Status)


595
596
597
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 595

def status
    @properties['status']
end

#stepssteps

Access the steps

Returns:



642
643
644
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 642

def steps
    context.steps
end

#to_sObject

Provide a user friendly representation



655
656
657
658
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 655

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

#urlString

Returns The absolute URL of the resource.

Returns:

  • (String)

    The absolute URL of the resource.



613
614
615
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 613

def url
    @properties['url']
end