Class: Twilio::REST::Proxy::V1::ServiceContext::SessionContext::InteractionInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, session_sid: nil, sid: nil) ⇒ InteractionInstance

Initialize the InteractionInstance

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 Interaction resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 237

def initialize(version, payload , service_sid: nil, session_sid: nil, sid: nil)
    super(version)
    
    # Marshaled Properties
    @properties = { 
        'sid' => payload['sid'],
        'session_sid' => payload['session_sid'],
        'service_sid' => payload['service_sid'],
        'account_sid' => payload['account_sid'],
        'data' => payload['data'],
        'type' => payload['type'],
        'inbound_participant_sid' => payload['inbound_participant_sid'],
        'inbound_resource_sid' => payload['inbound_resource_sid'],
        'inbound_resource_status' => payload['inbound_resource_status'],
        'inbound_resource_type' => payload['inbound_resource_type'],
        'inbound_resource_url' => payload['inbound_resource_url'],
        'outbound_participant_sid' => payload['outbound_participant_sid'],
        'outbound_resource_sid' => payload['outbound_resource_sid'],
        'outbound_resource_status' => payload['outbound_resource_status'],
        'outbound_resource_type' => payload['outbound_resource_type'],
        'outbound_resource_url' => payload['outbound_resource_url'],
        'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
        'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
        'url' => payload['url'],
    }

    # Context
    @instance_context = nil
    @params = { 'service_sid' => service_sid  || @properties['service_sid']  ,'session_sid' => session_sid  || @properties['session_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 Interaction resource.

Returns:



299
300
301
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 299

def 
    @properties['account_sid']
end

#contextInteractionContext

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

Returns:



272
273
274
275
276
277
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 272

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

#dataString

Returns A JSON string that includes the message body of message interactions (e.g. ‘"hello"`) or the call duration (when available) of a call (e.g. `"5"`).

Returns:

  • (String)

    A JSON string that includes the message body of message interactions (e.g. ‘"hello"`) or the call duration (when available) of a call (e.g. `"5"`).



305
306
307
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 305

def data
    @properties['data']
end

#date_createdTime

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

Returns:



377
378
379
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 377

def date_created
    @properties['date_created']
end

#date_updatedTime

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

Returns:



383
384
385
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 383

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the InteractionInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



396
397
398
399
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 396

def delete

    context.delete
end

#fetchInteractionInstance

Fetch the InteractionInstance

Returns:



404
405
406
407
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 404

def fetch

    context.fetch
end

#inbound_participant_sidString

Returns The SID of the inbound [Participant](www.twilio.com/docs/proxy/api/participant) resource.

Returns:



317
318
319
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 317

def inbound_participant_sid
    @properties['inbound_participant_sid']
end

#inbound_resource_sidString

Returns The SID of the inbound resource; either the [Call](www.twilio.com/docs/voice/api/call-resource) or [Message](www.twilio.com/docs/sms/api/message-resource).

Returns:



323
324
325
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 323

def inbound_resource_sid
    @properties['inbound_resource_sid']
end

#inbound_resource_statusResourceStatus

Returns:

  • (ResourceStatus)


329
330
331
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 329

def inbound_resource_status
    @properties['inbound_resource_status']
end

#inbound_resource_typeString

Returns The inbound resource type. Can be [Call](www.twilio.com/docs/voice/api/call-resource) or [Message](www.twilio.com/docs/sms/api/message-resource).

Returns:



335
336
337
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 335

def inbound_resource_type
    @properties['inbound_resource_type']
end

#inbound_resource_urlString

Returns The URL of the Twilio inbound resource.

Returns:

  • (String)

    The URL of the Twilio inbound resource



341
342
343
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 341

def inbound_resource_url
    @properties['inbound_resource_url']
end

#inspectObject

Provide a detailed, user friendly representation



418
419
420
421
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 418

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

#outbound_participant_sidString

Returns The SID of the outbound [Participant](www.twilio.com/docs/proxy/api/participant)).

Returns:



347
348
349
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 347

def outbound_participant_sid
    @properties['outbound_participant_sid']
end

#outbound_resource_sidString

Returns The SID of the outbound resource; either the [Call](www.twilio.com/docs/voice/api/call-resource) or [Message](www.twilio.com/docs/sms/api/message-resource).

Returns:



353
354
355
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 353

def outbound_resource_sid
    @properties['outbound_resource_sid']
end

#outbound_resource_statusResourceStatus

Returns:

  • (ResourceStatus)


359
360
361
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 359

def outbound_resource_status
    @properties['outbound_resource_status']
end

#outbound_resource_typeString

Returns The outbound resource type. Can be: [Call](www.twilio.com/docs/voice/api/call-resource) or [Message](www.twilio.com/docs/sms/api/message-resource).

Returns:



365
366
367
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 365

def outbound_resource_type
    @properties['outbound_resource_type']
end

#outbound_resource_urlString

Returns The URL of the Twilio outbound resource.

Returns:

  • (String)

    The URL of the Twilio outbound resource.



371
372
373
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 371

def outbound_resource_url
    @properties['outbound_resource_url']
end

#service_sidString

Returns The SID of the parent [Service](www.twilio.com/docs/proxy/api/service) resource.

Returns:



293
294
295
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 293

def service_sid
    @properties['service_sid']
end

#session_sidString

Returns The SID of the parent [Session](www.twilio.com/docs/proxy/api/session) resource.

Returns:



287
288
289
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 287

def session_sid
    @properties['session_sid']
end

#sidString

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

Returns:

  • (String)

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



281
282
283
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 281

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



411
412
413
414
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 411

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

#typeType

Returns:

  • (Type)


311
312
313
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 311

def type
    @properties['type']
end

#urlString

Returns The absolute URL of the Interaction resource.

Returns:

  • (String)

    The absolute URL of the Interaction resource.



389
390
391
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 389

def url
    @properties['url']
end