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

  • account_sid (String)

    The SID of the Account that created this Conversation resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 739

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](www.twilio.com/docs/iam/api/account) responsible for this conversation.

Returns:



779
780
781
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 779

def 
    @properties['account_sid']
end

#attributesString

Returns 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.

Returns:

  • (String)

    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.



815
816
817
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 815

def attributes
    @properties['attributes']
end

#bindingsHash

Returns:

  • (Hash)


857
858
859
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 857

def bindings
    @properties['bindings']
end

#chat_service_sidString

Returns The unique ID of the [Conversation Service](www.twilio.com/docs/conversations/api/service-resource) this conversation belongs to.

Returns:



785
786
787
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 785

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:



770
771
772
773
774
775
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 770

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.



827
828
829
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 827

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.



833
834
835
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 833

def date_updated
    @properties['date_updated']
end

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the ConversationInstance

Parameters:

  • x_twilio_webhook_enabled (ConversationEnumWebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



865
866
867
868
869
870
871
872
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 865

def delete(
    x_twilio_webhook_enabled: :unset
)

    context.delete(
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#fetchConversationInstance

Fetch the ConversationInstance

Returns:



877
878
879
880
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 877

def fetch

    context.fetch
end

#friendly_nameString

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

Returns:

  • (String)

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



803
804
805
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 803

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



958
959
960
961
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 958

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


851
852
853
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 851

def links
    @properties['links']
end

#messagesmessages

Access the messages

Returns:



931
932
933
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 931

def messages
    context.messages
end

#messaging_service_sidString

Returns The unique ID of the [Messaging Service](www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.

Returns:



791
792
793
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 791

def messaging_service_sid
    @properties['messaging_service_sid']
end

#participantsparticipants

Access the participants

Returns:



938
939
940
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 938

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.



797
798
799
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 797

def sid
    @properties['sid']
end

#stateState

Returns:

  • (State)


821
822
823
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 821

def state
    @properties['state']
end

#timersHash

Returns Timer date values representing state update for this conversation.

Returns:

  • (Hash)

    Timer date values representing state update for this conversation.



839
840
841
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 839

def timers
    @properties['timers']
end

#to_sObject

Provide a user friendly representation



951
952
953
954
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 951

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. It can be used to address the resource in place of the resource’s sid in the URL.

Returns:

  • (String)

    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.



809
810
811
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 809

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, bindings_email_address: :unset, bindings_email_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](www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.

  • state (State) (defaults to: :unset)
  • 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.

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

    The default email address that will be used when sending outbound emails in this conversation.

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

    The default name that will be used when sending outbound emails in this conversation.

  • x_twilio_webhook_enabled (ConversationEnumWebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:



897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 897

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, 
    bindings_email_address: :unset, 
    bindings_email_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, 
        bindings_email_address: bindings_email_address, 
        bindings_email_name: bindings_email_name, 
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#urlString

Returns An absolute API resource URL for this conversation.

Returns:

  • (String)

    An absolute API resource URL for this conversation.



845
846
847
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 845

def url
    @properties['url']
end

#webhookswebhooks

Access the webhooks

Returns:



945
946
947
# File 'lib/twilio-ruby/rest/conversations/v1/conversation.rb', line 945

def webhooks
    context.webhooks
end