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.



298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 298

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:



340
341
342
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 340

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 ‘[email protected]`. 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 ‘[email protected]`. Client identifiers are formatted `client:name`.



358
359
360
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 358

def contact_channel_address
    @properties['contact_channel_address']
end

#contact_sidString

Returns The SID of the Contact.

Returns:

  • (String)

    The SID of the Contact.



352
353
354
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 352

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.



325
326
327
328
329
330
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 325

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:



376
377
378
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 376

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:



382
383
384
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 382

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the EngagementInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



401
402
403
404
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 401

def delete

    context.delete
end

#engagement_contextengagement_context

Access the engagement_context

Returns:



424
425
426
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 424

def engagement_context
    context.engagement_context
end

#fetchEngagementInstance

Fetch the EngagementInstance

Returns:



409
410
411
412
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 409

def fetch

    context.fetch
end

#flow_sidString

Returns The SID of the Flow.

Returns:

  • (String)

    The SID of the Flow.



346
347
348
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 346

def flow_sid
    @properties['flow_sid']
end

#inspectObject

Provide a detailed, user friendly representation



437
438
439
440
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 437

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.



394
395
396
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 394

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.



334
335
336
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 334

def sid
    @properties['sid']
end

#statusStatus

Returns:

  • (Status)


370
371
372
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 370

def status
    @properties['status']
end

#stepssteps

Access the steps

Returns:



417
418
419
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 417

def steps
    context.steps
end

#to_sObject

Provide a user friendly representation



430
431
432
433
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 430

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.



388
389
390
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 388

def url
    @properties['url']
end