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.



225
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
# File 'lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb', line 225

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:



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

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:



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

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



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

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:



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

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:



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

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the InteractionInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



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

def delete

    context.delete
end

#fetchInteractionInstance

Fetch the InteractionInstance

Returns:



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

def fetch

    context.fetch
end

#inbound_participant_sidString

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

Returns:



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

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:



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

def inbound_resource_sid
    @properties['inbound_resource_sid']
end

#inbound_resource_statusResourceStatus

Returns:

  • (ResourceStatus)


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

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:



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

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



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

def inbound_resource_url
    @properties['inbound_resource_url']
end

#inspectObject

Provide a detailed, user friendly representation



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

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:



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

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:



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

def outbound_resource_sid
    @properties['outbound_resource_sid']
end

#outbound_resource_statusResourceStatus

Returns:

  • (ResourceStatus)


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

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:



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

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.



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

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:



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

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:



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

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.



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

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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

#typeType

Returns:

  • (Type)


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

def type
    @properties['type']
end

#urlString

Returns The absolute URL of the Interaction resource.

Returns:

  • (String)

    The absolute URL of the Interaction resource.



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

def url
    @properties['url']
end