Class: Twilio::REST::Chat::V2::ServiceContext::ChannelContext::MemberInstance

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

Instance Method Summary collapse

Constructor Details

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

Initialize the MemberInstance

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

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



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

def initialize(version, payload , service_sid: nil, channel_sid: nil, sid: nil)
    super(version)
    
    
    # Marshaled Properties
    @properties = { 
        'sid' => payload['sid'],
        'account_sid' => payload['account_sid'],
        'channel_sid' => payload['channel_sid'],
        'service_sid' => payload['service_sid'],
        'identity' => payload['identity'],
        'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
        'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
        'role_sid' => payload['role_sid'],
        'last_consumed_message_index' => payload['last_consumed_message_index'] == nil ? payload['last_consumed_message_index'] : payload['last_consumed_message_index'].to_i,
        'last_consumption_timestamp' => Twilio.deserialize_iso8601_datetime(payload['last_consumption_timestamp']),
        'url' => payload['url'],
        'attributes' => payload['attributes'],
    }

    # Context
    @instance_context = nil
    @params = { 'service_sid' => service_sid  || @properties['service_sid']  ,'channel_sid' => channel_sid  || @properties['channel_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 Member resource.

Returns:



680
681
682
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 680

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.



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

def attributes
    @properties['attributes']
end

#channel_sidString

Returns The SID of the [Channel](www.twilio.com/docs/chat/channels) the Member resource belongs to.

Returns:



686
687
688
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 686

def channel_sid
    @properties['channel_sid']
end

#contextMemberContext

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

Returns:



665
666
667
668
669
670
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 665

def context
    unless @instance_context
        @instance_context = MemberContext.new(@version , @params['service_sid'], @params['channel_sid'], @params['sid'])
    end
    @instance_context
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:



704
705
706
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 704

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:



710
711
712
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 710

def date_updated
    @properties['date_updated']
end

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the MemberInstance

Parameters:

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

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



748
749
750
751
752
753
754
755
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 748

def delete(
  x_twilio_webhook_enabled: :unset
)

    context.delete(
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#fetchMemberInstance

Fetch the MemberInstance

Returns:



760
761
762
763
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 760

def fetch

    context.fetch
end

#identityString

Returns The application-defined string that uniquely identifies the resource’s [User](www.twilio.com/docs/chat/rest/user-resource) within the [Service](www.twilio.com/docs/chat/rest/service-resource). See [access tokens](www.twilio.com/docs/chat/create-tokens) for more info.

Returns:



698
699
700
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 698

def identity
    @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



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

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

#last_consumed_message_indexString

Returns The index of the last [Message](www.twilio.com/docs/chat/rest/message-resource) in the [Channel](www.twilio.com/docs/chat/channels) that the Member has read.

Returns:



722
723
724
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 722

def last_consumed_message_index
    @properties['last_consumed_message_index']
end

#last_consumption_timestampTime

Returns The [ISO 8601](en.wikipedia.org/wiki/ISO_8601) timestamp of the last [Message](www.twilio.com/docs/chat/rest/message-resource) read event for the Member within the [Channel](www.twilio.com/docs/chat/channels).

Returns:



728
729
730
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 728

def last_consumption_timestamp
    @properties['last_consumption_timestamp']
end

#role_sidString

Returns The SID of the [Role](www.twilio.com/docs/chat/rest/role-resource) assigned to the member.

Returns:



716
717
718
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 716

def role_sid
    @properties['role_sid']
end

#service_sidString

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

Returns:



692
693
694
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 692

def service_sid
    @properties['service_sid']
end

#sidString

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

Returns:

  • (String)

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



674
675
676
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 674

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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

#update(role_sid: :unset, last_consumed_message_index: :unset, last_consumption_timestamp: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, x_twilio_webhook_enabled: :unset) ⇒ MemberInstance

Update the MemberInstance

Parameters:

Returns:



775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 775

def update(
  role_sid: :unset, 
  last_consumed_message_index: :unset, 
  last_consumption_timestamp: :unset, 
  date_created: :unset, 
  date_updated: :unset, 
  attributes: :unset, 
  x_twilio_webhook_enabled: :unset
)

    context.update(
        role_sid: role_sid, 
        last_consumed_message_index: last_consumed_message_index, 
        last_consumption_timestamp: last_consumption_timestamp, 
        date_created: date_created, 
        date_updated: date_updated, 
        attributes: attributes, 
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#urlString

Returns The absolute URL of the Member resource.

Returns:

  • (String)

    The absolute URL of the Member resource.



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

def url
    @properties['url']
end