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 that created the Member resource.

Returns:

  • (String)

    The SID of the Account that created the Member resource.



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 the Member resource belongs to.

Returns:

  • (String)

    The SID of the Channel the Member resource belongs to.



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

Returns:

  • (Time)

    The date and time in GMT when the resource was created specified in ISO 8601 format.



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

Returns:

  • (Time)

    The date and time in GMT when the resource was last updated specified in ISO 8601 format.



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 within the Service. See access tokens for more info.

Returns:

  • (String)

    The application-defined string that uniquely identifies the resource's User within the Service. See access tokens for more info.



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 in the Channel that the Member has read.

Returns:

  • (String)

    The index of the last Message in the Channel that the Member has read.



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 timestamp of the last Message read event for the Member within the Channel.

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 assigned to the member.

Returns:

  • (String)

    The SID of the Role assigned to the member.



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 the Member resource is associated with.

Returns:

  • (String)

    The SID of the Service the Member resource is associated with.



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:

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

    The SID of the Role to assign to the member. The default roles are those specified on the Service.

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

    The index of the last Message that the Member has read within the Channel.

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

    The ISO 8601 timestamp of the last Message read event for the Member within the Channel.

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

    The date, specified in 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 parameter should only be used when a Member is being recreated from a backup/separate source.

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

    The date, specified in ISO 8601 format, to assign to the resource as the date it was last updated.

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

    A valid JSON string that contains application-specific data.

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

    The X-Twilio-Webhook-Enabled HTTP request header

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