Class: Twilio::REST::Chat::V1::ServiceContext::ChannelInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/chat/v1/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.



638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 638

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/api/rest/account) that created the Channel resource.

Returns:



684
685
686
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 684

def 
    @properties['account_sid']
end

#attributesString

Returns The JSON string that stores application-specific data. Note If this property has been assigned a value, it’s only displayed in a FETCH action that returns a single resource; otherwise, it’s null. If the attributes have not been set, ‘{}` is returned.

Returns:

  • (String)

    The JSON string that stores application-specific data. Note If this property has been assigned a value, it’s only displayed in a FETCH action that returns a single resource; otherwise, it’s null. If the attributes have not been set, ‘{}` is returned.



708
709
710
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 708

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:



669
670
671
672
673
674
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 669

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



732
733
734
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 732

def created_by
    @properties['created_by']
end

#date_createdTime

Returns The date and time in GMT when the resource was created specified in [RFC 2822](www.ietf.org/rfc/rfc2822.txt) format.

Returns:



720
721
722
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 720

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns The date and time in GMT when the resource was last updated specified in [RFC 2822](www.ietf.org/rfc/rfc2822.txt) format.

Returns:



726
727
728
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 726

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the ChannelInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



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

def delete

    context.delete
end

#fetchChannelInstance

Fetch the ChannelInstance

Returns:



771
772
773
774
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 771

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.



696
697
698
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 696

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



825
826
827
828
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 825

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

#invitesinvites

Access the invites

Returns:



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

def invites
    context.invites
end

Returns The absolute URLs of the [Members](www.twilio.com/docs/chat/api/members), [Messages](www.twilio.com/docs/chat/api/messages) , [Invites](www.twilio.com/docs/chat/api/invites) and, if it exists, the last [Message](www.twilio.com/docs/chat/api/messages) for the Channel.

Returns:



756
757
758
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 756

def links
    @properties['links']
end

#membersmembers

Access the members

Returns:



798
799
800
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 798

def members
    context.members
end

#members_countString

Returns The number of Members in the Channel.

Returns:

  • (String)

    The number of Members in the Channel.



738
739
740
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 738

def members_count
    @properties['members_count']
end

#messagesmessages

Access the messages

Returns:



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

def messages
    context.messages
end

#messages_countString

Returns The number of Messages in the Channel.

Returns:

  • (String)

    The number of Messages in the Channel.



744
745
746
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 744

def messages_count
    @properties['messages_count']
end

#service_sidString

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

Returns:



690
691
692
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 690

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.



678
679
680
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 678

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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

#typeChannelType

Returns:

  • (ChannelType)


714
715
716
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 714

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.



702
703
704
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 702

def unique_name
    @properties['unique_name']
end

#update(friendly_name: :unset, unique_name: :unset, attributes: :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 64 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 64 characters or less in length and be unique within the Service.

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

    A valid JSON string that contains application-specific data.

Returns:



782
783
784
785
786
787
788
789
790
791
792
793
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 782

def update(
  friendly_name: :unset, 
  unique_name: :unset, 
  attributes: :unset
)

    context.update(
        friendly_name: friendly_name, 
        unique_name: unique_name, 
        attributes: attributes, 
    )
end

#urlString

Returns The absolute URL of the Channel resource.

Returns:

  • (String)

    The absolute URL of the Channel resource.



750
751
752
# File 'lib/twilio-ruby/rest/chat/v1/service/channel.rb', line 750

def url
    @properties['url']
end