Class: Twilio::REST::IpMessaging::V1::ServiceContext::ChannelContext::MemberInstance

Inherits:
Twilio::REST::InstanceResource show all
Defined in:
lib/twilio-ruby/rest/ip_messaging/v1/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.



568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 568

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'],
    }

    # 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:

  • (String)


611
612
613
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 611

def 
    @properties['account_sid']
end

#channel_sidString

Returns:

  • (String)


617
618
619
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 617

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:



596
597
598
599
600
601
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 596

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:

  • (Time)


635
636
637
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 635

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns:

  • (Time)


641
642
643
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 641

def date_updated
    @properties['date_updated']
end

#deleteBoolean

Delete the MemberInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



672
673
674
675
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 672

def delete

    context.delete
end

#fetchMemberInstance

Fetch the MemberInstance

Returns:



680
681
682
683
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 680

def fetch

    context.fetch
end

#identityString

Returns:

  • (String)


629
630
631
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 629

def identity
    @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



710
711
712
713
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 710

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

#last_consumed_message_indexString

Returns:

  • (String)


653
654
655
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 653

def last_consumed_message_index
    @properties['last_consumed_message_index']
end

#last_consumption_timestampTime

Returns:

  • (Time)


659
660
661
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 659

def last_consumption_timestamp
    @properties['last_consumption_timestamp']
end

#role_sidString

Returns:

  • (String)


647
648
649
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 647

def role_sid
    @properties['role_sid']
end

#service_sidString

Returns:

  • (String)


623
624
625
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 623

def service_sid
    @properties['service_sid']
end

#sidString

Returns:

  • (String)


605
606
607
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 605

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



703
704
705
706
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 703

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

#update(role_sid: :unset, last_consumed_message_index: :unset) ⇒ MemberInstance

Update the MemberInstance

Parameters:

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

Returns:



690
691
692
693
694
695
696
697
698
699
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 690

def update(
  role_sid: :unset, 
  last_consumed_message_index: :unset
)

    context.update(
        role_sid: role_sid, 
        last_consumed_message_index: last_consumed_message_index, 
    )
end

#urlString

Returns:

  • (String)


665
666
667
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb', line 665

def url
    @properties['url']
end