Class: Twilio::REST::FlexApi::V1::InteractionContext::InteractionChannelInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, interaction_sid: nil, sid: nil) ⇒ InteractionChannelInstance

Initialize the InteractionChannelInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • interaction_sid (String) (defaults to: nil)

    The unique string created by Twilio to identify an Interaction resource, prefixed with KD.

  • sid (String) (defaults to: nil)

    The unique string created by Twilio to identify an Interaction Channel resource, prefixed with UO.



270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 270

def initialize(version, payload, interaction_sid: nil, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'interaction_sid' => payload['interaction_sid'],
      'type' => payload['type'],
      'status' => payload['status'],
      'error_code' => payload['error_code'] == nil ? payload['error_code'] : payload['error_code'].to_i,
      'error_message' => payload['error_message'],
      'url' => payload['url'],
      'links' => payload['links'],
  }

  # Context
  @instance_context = nil
  @params = {'interaction_sid' => interaction_sid, 'sid' => sid || @properties['sid'], }
end

Instance Method Details

#contextInteractionChannelContext

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

Returns:



294
295
296
297
298
299
300
301
302
303
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 294

def context
  unless @instance_context
    @instance_context = InteractionChannelContext.new(
        @version,
        @params['interaction_sid'],
        @params['sid'],
    )
  end
  @instance_context
end

#error_codeString

Returns The Twilio error code for a failed channel.

Returns:

  • (String)

    The Twilio error code for a failed channel.



331
332
333
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 331

def error_code
  @properties['error_code']
end

#error_messageString

Returns The error message for a failed channel.

Returns:

  • (String)

    The error message for a failed channel.



337
338
339
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 337

def error_message
  @properties['error_message']
end

#fetchInteractionChannelInstance

Fetch the InteractionChannelInstance

Returns:



356
357
358
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 356

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



396
397
398
399
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 396

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

#interaction_sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource.



313
314
315
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 313

def interaction_sid
  @properties['interaction_sid']
end

#invitesinvites

Access the invites

Returns:



376
377
378
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 376

def invites
  context.invites
end

Returns The links.

Returns:

  • (String)

    The links



349
350
351
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 349

def links
  @properties['links']
end

#participantsparticipants

Access the participants

Returns:



383
384
385
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 383

def participants
  context.participants
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource



307
308
309
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 307

def sid
  @properties['sid']
end

#statusinteraction_channel.ChannelStatus

Returns The status of this channel.

Returns:

  • (interaction_channel.ChannelStatus)

    The status of this channel.



325
326
327
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 325

def status
  @properties['status']
end

#to_sObject

Provide a user friendly representation



389
390
391
392
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 389

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

#typeinteraction_channel.Type

Returns The Interaction Channel’s type.

Returns:

  • (interaction_channel.Type)

    The Interaction Channel’s type.



319
320
321
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 319

def type
  @properties['type']
end

#update(status: nil, routing: :unset) ⇒ InteractionChannelInstance

Update the InteractionChannelInstance

Parameters:

  • status (interaction_channel.Status) (defaults to: nil)

    Required. Indicates the Interaction channel’s status. When a channel is set to ‘closed`, all tasks are put in the `wrapping` state by default unless the Routing status is set to `closed` in which case the tasks will be `completed`. Value: `closed`.

  • routing (Hash) (defaults to: :unset)

    Optional. The state of associated tasks. If not specified, all tasks will be set to ‘wrapping`.

Returns:



369
370
371
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 369

def update(status: nil, routing: :unset)
  context.update(status: status, routing: routing, )
end

#urlString

Returns The url.

Returns:

  • (String)

    The url



343
344
345
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb', line 343

def url
  @properties['url']
end