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

  • service_sid (String) (defaults to: nil)

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

  • channel_sid (String) (defaults to: nil)

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

  • sid (String) (defaults to: nil)

    The SID of the Member resource to fetch. This value can be either the Member’s ‘sid` or its `identity` value.



356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 356

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,
      'channel_sid' => channel_sid,
      'sid' => sid || @properties['sid'],
  }
end

Instance Method Details

#account_sidString

Returns The SID of the Account that created the resource.

Returns:

  • (String)

    The SID of the Account that created the resource



408
409
410
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 408

def 
  @properties['account_sid']
end

#attributesString

Returns The JSON string that stores application-specific data.

Returns:

  • (String)

    The JSON string that stores application-specific data



468
469
470
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 468

def attributes
  @properties['attributes']
end

#channel_sidString

Returns The SID of the Channel for the member.

Returns:

  • (String)

    The SID of the Channel for the member



414
415
416
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 414

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:



388
389
390
391
392
393
394
395
396
397
398
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 388

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 ISO 8601 date and time in GMT when the resource was created.

Returns:

  • (Time)

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



432
433
434
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 432

def date_created
  @properties['date_created']
end

#date_updatedTime

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

Returns:

  • (Time)

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



438
439
440
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 438

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the MemberInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise



482
483
484
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 482

def delete
  context.delete
end

#fetchMemberInstance

Fetch a MemberInstance

Returns:



475
476
477
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 475

def fetch
  context.fetch
end

#identityString

Returns The string that identifies the resource’s User.

Returns:

  • (String)

    The string that identifies the resource’s User



426
427
428
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 426

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



530
531
532
533
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 530

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

Returns:

  • (String)

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



450
451
452
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 450

def last_consumed_message_index
  @properties['last_consumed_message_index']
end

#last_consumption_timestampTime

Returns The ISO 8601 based timestamp string that represents the datetime of the last Message read event for the Member within the Channel.

Returns:

  • (Time)

    The ISO 8601 based timestamp string that represents the datetime of the last Message read event for the Member within the Channel



456
457
458
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 456

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



444
445
446
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 444

def role_sid
  @properties['role_sid']
end

#service_sidString

Returns The SID of the Service that the resource is associated with.

Returns:

  • (String)

    The SID of the Service that the resource is associated with



420
421
422
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 420

def service_sid
  @properties['service_sid']
end

#sidString

Returns The unique string that identifies the resource.

Returns:

  • (String)

    The unique string that identifies the resource



402
403
404
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 402

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



523
524
525
526
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 523

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) ⇒ MemberInstance

Update the MemberInstance

Parameters:

Returns:



510
511
512
513
514
515
516
517
518
519
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 510

def update(role_sid: :unset, last_consumed_message_index: :unset, last_consumption_timestamp: :unset, date_created: :unset, date_updated: :unset, attributes: :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,
  )
end

#urlString

Returns The absolute URL of the Member resource.

Returns:

  • (String)

    The absolute URL of the Member resource



462
463
464
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 462

def url
  @properties['url']
end