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.



226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 226

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:



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

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:



261
262
263
264
265
266
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 261

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



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

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:



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

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:



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

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the InteractionInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



385
386
387
388
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 385

def delete

    context.delete
end

#fetchInteractionInstance

Fetch the InteractionInstance

Returns:



393
394
395
396
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 393

def fetch

    context.fetch
end

#inbound_participant_sidString

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

Returns:



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

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.

Returns:



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

def inbound_resource_sid
    @properties['inbound_resource_sid']
end

#inbound_resource_statusResourceStatus

Returns:

  • (ResourceStatus)


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

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:



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

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



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

def inbound_resource_url
    @properties['inbound_resource_url']
end

#inspectObject

Provide a detailed, user friendly representation



407
408
409
410
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 407

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:



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

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:



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

def outbound_resource_sid
    @properties['outbound_resource_sid']
end

#outbound_resource_statusResourceStatus

Returns:

  • (ResourceStatus)


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

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:



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

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.



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

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:



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

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:



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

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.



270
271
272
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 270

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



400
401
402
403
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 400

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

#typeType

Returns:

  • (Type)


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

def type
    @properties['type']
end

#urlString

Returns The absolute URL of the Interaction resource.

Returns:

  • (String)

    The absolute URL of the Interaction resource.



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

def url
    @properties['url']
end