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.



282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 282

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:



324
325
326
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 324

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



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

def contact_channel_address
    @properties['contact_channel_address']
end

#contact_sidString

Returns The SID of the Contact.

Returns:

  • (String)

    The SID of the Contact.



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

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.



309
310
311
312
313
314
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 309

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:



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

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:



366
367
368
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 366

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the EngagementInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



385
386
387
388
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 385

def delete

    context.delete
end

#engagement_contextengagement_context

Access the engagement_context

Returns:



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

def engagement_context
    context.engagement_context
end

#fetchEngagementInstance

Fetch the EngagementInstance

Returns:



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

def fetch

    context.fetch
end

#flow_sidString

Returns The SID of the Flow.

Returns:

  • (String)

    The SID of the Flow.



330
331
332
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 330

def flow_sid
    @properties['flow_sid']
end

#inspectObject

Provide a detailed, user friendly representation



421
422
423
424
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 421

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.



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

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.



318
319
320
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 318

def sid
    @properties['sid']
end

#statusStatus

Returns:

  • (Status)


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

def status
    @properties['status']
end

#stepssteps

Access the steps

Returns:



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

def steps
    context.steps
end

#to_sObject

Provide a user friendly representation



414
415
416
417
# File 'lib/twilio-ruby/rest/studio/v1/flow/engagement.rb', line 414

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.



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

def url
    @properties['url']
end