Class: Twilio::REST::Chat::V2::ServiceContext::ChannelInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/chat/v2/service/channel.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, sid: nil) ⇒ ChannelInstance

Initialize the ChannelInstance

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 Channel resource.

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 700

def initialize(version, payload , service_sid: nil, sid: nil)
    super(version)
    
    
    # Marshaled Properties
    @properties = { 
        'sid' => payload['sid'],
        'account_sid' => payload['account_sid'],
        'service_sid' => payload['service_sid'],
        'friendly_name' => payload['friendly_name'],
        'unique_name' => payload['unique_name'],
        'attributes' => payload['attributes'],
        'type' => payload['type'],
        'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
        'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
        'created_by' => payload['created_by'],
        'members_count' => payload['members_count'] == nil ? payload['members_count'] : payload['members_count'].to_i,
        'messages_count' => payload['messages_count'] == nil ? payload['messages_count'] : payload['messages_count'].to_i,
        'url' => payload['url'],
        'links' => payload['links'],
    }

    # Context
    @instance_context = nil
    @params = { 'service_sid' => service_sid  || @properties['service_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 Channel resource.

Returns:



746
747
748
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 746

def 
    @properties['account_sid']
end

#attributesString

Returns The JSON string that stores application-specific data. If attributes have not been set, ‘{}` is returned.

Returns:

  • (String)

    The JSON string that stores application-specific data. If attributes have not been set, ‘{}` is returned.



770
771
772
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 770

def attributes
    @properties['attributes']
end

#contextChannelContext

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

Returns:



731
732
733
734
735
736
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 731

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

#created_byString

Returns The identity of the User that created the channel. If the Channel was created by using the API, the value is system.

Returns:

  • (String)

    The identity of the User that created the channel. If the Channel was created by using the API, the value is system.



794
795
796
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 794

def created_by
    @properties['created_by']
end

#date_createdTime

Returns The date and time in GMT when the resource was created specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



782
783
784
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 782

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns The date and time in GMT when the resource was last updated specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



788
789
790
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 788

def date_updated
    @properties['date_updated']
end

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the ChannelInstance

Parameters:

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

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



826
827
828
829
830
831
832
833
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 826

def delete(
    x_twilio_webhook_enabled: :unset
)

    context.delete(
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#fetchChannelInstance

Fetch the ChannelInstance

Returns:



838
839
840
841
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 838

def fetch

    context.fetch
end

#friendly_nameString

Returns The string that you assigned to describe the resource.

Returns:

  • (String)

    The string that you assigned to describe the resource.



758
759
760
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 758

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



911
912
913
914
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 911

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

#invitesinvites

Access the invites

Returns:



898
899
900
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 898

def invites
    context.invites
end

Returns The absolute URLs of the [Members](www.twilio.com/docs/chat/rest/member-resource), [Messages](www.twilio.com/docs/chat/rest/message-resource), [Invites](www.twilio.com/docs/chat/rest/invite-resource), Webhooks and, if it exists, the last [Message](www.twilio.com/docs/chat/rest/message-resource) for the Channel.

Returns:



818
819
820
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 818

def links
    @properties['links']
end

#membersmembers

Access the members

Returns:



884
885
886
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 884

def members
    context.members
end

#members_countString

Returns The number of Members in the Channel.

Returns:

  • (String)

    The number of Members in the Channel.



800
801
802
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 800

def members_count
    @properties['members_count']
end

#messagesmessages

Access the messages

Returns:



891
892
893
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 891

def messages
    context.messages
end

#messages_countString

Returns The number of Messages that have been passed in the Channel.

Returns:

  • (String)

    The number of Messages that have been passed in the Channel.



806
807
808
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 806

def messages_count
    @properties['messages_count']
end

#service_sidString

Returns The SID of the [Service](www.twilio.com/docs/chat/rest/service-resource) the Channel resource is associated with.

Returns:



752
753
754
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 752

def service_sid
    @properties['service_sid']
end

#sidString

Returns The unique string that we created to identify the Channel resource.

Returns:

  • (String)

    The unique string that we created to identify the Channel resource.



740
741
742
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 740

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



904
905
906
907
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 904

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

#typeChannelType

Returns:

  • (ChannelType)


776
777
778
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 776

def type
    @properties['type']
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.



764
765
766
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 764

def unique_name
    @properties['unique_name']
end

#update(friendly_name: :unset, unique_name: :unset, attributes: :unset, date_created: :unset, date_updated: :unset, created_by: :unset, x_twilio_webhook_enabled: :unset) ⇒ ChannelInstance

Update the ChannelInstance

Parameters:

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

    A descriptive string that you create to describe the resource. It can be up to 256 characters long.

  • 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. This value must be 256 characters or less in length and unique within the Service.

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

    A valid JSON string that contains application-specific data.

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

    The date, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was created. The default value is the current time set by the Chat service. Note that this should only be used in cases where a Channel is being recreated from a backup/separate source.

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

    The date, specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format, to assign to the resource as the date it was last updated.

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

    The identity of the User that created the channel. Default is: system.

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

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:



853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 853

def update(
    friendly_name: :unset, 
    unique_name: :unset, 
    attributes: :unset, 
    date_created: :unset, 
    date_updated: :unset, 
    created_by: :unset, 
    x_twilio_webhook_enabled: :unset
)

    context.update(
        friendly_name: friendly_name, 
        unique_name: unique_name, 
        attributes: attributes, 
        date_created: date_created, 
        date_updated: date_updated, 
        created_by: created_by, 
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#urlString

Returns The absolute URL of the Channel resource.

Returns:

  • (String)

    The absolute URL of the Channel resource.



812
813
814
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 812

def url
    @properties['url']
end

#webhookswebhooks

Access the webhooks

Returns:



877
878
879
# File 'lib/twilio-ruby/rest/chat/v2/service/channel.rb', line 877

def webhooks
    context.webhooks
end