Class: Twilio::REST::Conversations::V1::ConversationInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/conversations/v1/conversation.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, sid: nil) ⇒ ConversationInstance

Initialize the ConversationInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • sid (String) (defaults to: nil)

    A 34 character string that uniquely identifies this resource. Can also be the `unique_name` of the Conversation.


347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 347

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

  # Marshaled Properties
  @properties = {
      'account_sid' => payload['account_sid'],
      'chat_service_sid' => payload['chat_service_sid'],
      'messaging_service_sid' => payload['messaging_service_sid'],
      'sid' => payload['sid'],
      'friendly_name' => payload['friendly_name'],
      'unique_name' => payload['unique_name'],
      'attributes' => payload['attributes'],
      'state' => payload['state'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'timers' => payload['timers'],
      'url' => payload['url'],
      'links' => payload['links'],
      'bindings' => payload['bindings'],
  }

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

Instance Method Details

#account_sidString

Returns The unique ID of the Account responsible for this conversation.

Returns:

  • (String)

    The unique ID of the Account responsible for this conversation.


386
387
388
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 386

def 
  @properties['account_sid']
end

#attributesString

Returns An optional string metadata field you can use to store any data you wish.

Returns:

  • (String)

    An optional string metadata field you can use to store any data you wish.


422
423
424
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 422

def attributes
  @properties['attributes']
end

#bindingsHash

Returns The bindings.

Returns:

  • (Hash)

    The bindings


464
465
466
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 464

def bindings
  @properties['bindings']
end

#chat_service_sidString

Returns The unique ID of the Conversation Service this conversation belongs to.

Returns:

  • (String)

    The unique ID of the Conversation Service this conversation belongs to.


392
393
394
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 392

def chat_service_sid
  @properties['chat_service_sid']
end

#contextConversationContext

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

Returns:


377
378
379
380
381
382
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 377

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

#date_createdTime

Returns The date that this resource was created.

Returns:

  • (Time)

    The date that this resource was created.


434
435
436
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 434

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The date that this resource was last updated.

Returns:

  • (Time)

    The date that this resource was last updated.


440
441
442
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 440

def date_updated
  @properties['date_updated']
end

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the ConversationInstance

Parameters:

  • x_twilio_webhook_enabled (conversation.WebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise


513
514
515
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 513

def delete(x_twilio_webhook_enabled: :unset)
  context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
end

#fetchConversationInstance

Fetch the ConversationInstance

Returns:


520
521
522
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 520

def fetch
  context.fetch
end

#friendly_nameString

Returns The human-readable name of this conversation.

Returns:

  • (String)

    The human-readable name of this conversation.


410
411
412
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 410

def friendly_name
  @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation


554
555
556
557
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 554

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

Returns Absolute URLs to access the participants, messages and webhooks of this conversation.

Returns:

  • (String)

    Absolute URLs to access the participants, messages and webhooks of this conversation.


458
459
460
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 458

def links
  @properties['links']
end

#messagesmessages

Access the messages

Returns:


534
535
536
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 534

def messages
  context.messages
end

#messaging_service_sidString

Returns The unique ID of the Messaging Service this conversation belongs to.

Returns:

  • (String)

    The unique ID of the Messaging Service this conversation belongs to.


398
399
400
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 398

def messaging_service_sid
  @properties['messaging_service_sid']
end

#participantsparticipants

Access the participants

Returns:


527
528
529
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 527

def participants
  context.participants
end

#sidString

Returns A 34 character string that uniquely identifies this resource.

Returns:

  • (String)

    A 34 character string that uniquely identifies this resource.


404
405
406
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 404

def sid
  @properties['sid']
end

#stateconversation.State

Returns Current state of this conversation.

Returns:

  • (conversation.State)

    Current state of this conversation.


428
429
430
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 428

def state
  @properties['state']
end

#timersHash

Returns Timer date values for this conversation.

Returns:

  • (Hash)

    Timer date values for this conversation.


446
447
448
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 446

def timers
  @properties['timers']
end

#to_sObject

Provide a user friendly representation


547
548
549
550
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 547

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

#unique_nameString

Returns An application-defined string that uniquely identifies the resource.

Returns:

  • (String)

    An application-defined string that uniquely identifies the resource


416
417
418
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 416

def unique_name
  @properties['unique_name']
end

#update(friendly_name: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, messaging_service_sid: :unset, state: :unset, timers_inactive: :unset, timers_closed: :unset, unique_name: :unset, x_twilio_webhook_enabled: :unset) ⇒ ConversationInstance

Update the ConversationInstance

Parameters:

  • friendly_name (String) (defaults to: :unset)

    The human-readable name of this conversation, limited to 256 characters. Optional.

  • date_created (Time) (defaults to: :unset)

    The date that this resource was created.

  • date_updated (Time) (defaults to: :unset)

    The date that this resource was last updated.

  • attributes (String) (defaults to: :unset)

    An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. Note that if the attributes are not set “{}” will be returned.

  • messaging_service_sid (String) (defaults to: :unset)

    The unique ID of the Messaging Service this conversation belongs to.

  • state (conversation.State) (defaults to: :unset)

    Current state of this conversation. Can be either `active`, `inactive` or `closed` and defaults to `active`

  • timers_inactive (String) (defaults to: :unset)

    ISO8601 duration when conversation will be switched to `inactive` state. Minimum value for this timer is 1 minute.

  • timers_closed (String) (defaults to: :unset)

    ISO8601 duration when conversation will be switched to `closed` state. Minimum value for this timer is 10 minutes.

  • unique_name (String) (defaults to: :unset)

    An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.

  • x_twilio_webhook_enabled (conversation.WebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:


493
494
495
496
497
498
499
500
501
502
503
504
505
506
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 493

def update(friendly_name: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, messaging_service_sid: :unset, state: :unset, timers_inactive: :unset, timers_closed: :unset, unique_name: :unset, x_twilio_webhook_enabled: :unset)
  context.update(
      friendly_name: friendly_name,
      date_created: date_created,
      date_updated: date_updated,
      attributes: attributes,
      messaging_service_sid: messaging_service_sid,
      state: state,
      timers_inactive: timers_inactive,
      timers_closed: timers_closed,
      unique_name: unique_name,
      x_twilio_webhook_enabled: x_twilio_webhook_enabled,
  )
end

#urlString

Returns An absolute URL for this conversation.

Returns:

  • (String)

    An absolute URL for this conversation.


452
453
454
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 452

def url
  @properties['url']
end

#webhookswebhooks

Access the webhooks

Returns:


541
542
543
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 541

def webhooks
  context.webhooks
end