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

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

  • service_sid (String) (defaults to: nil)

    The SID of the Service the resource is associated with.

  • channel_sid (String) (defaults to: nil)

    The unique ID of the Channel for the member.

  • sid (String) (defaults to: nil)

    The Twilio-provided string that uniquely identifies the Member resource to fetch.


294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 294

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


345
346
347
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 345

def 
  @properties['account_sid']
end

#channel_sidString

Returns The unique ID of the Channel for the member.

Returns:

  • (String)

    The unique ID of the Channel for the member


351
352
353
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 351

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:


325
326
327
328
329
330
331
332
333
334
335
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 325

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

Returns:

  • (Time)

    The RFC 2822 date and time in GMT when the resource was created


369
370
371
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 369

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The RFC 2822 date and time in GMT when the resource was last updated.

Returns:

  • (Time)

    The RFC 2822 date and time in GMT when the resource was last updated


375
376
377
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 375

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Delete the MemberInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise


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

def delete
  context.delete
end

#fetchMemberInstance

Fetch the MemberInstance

Returns:


406
407
408
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 406

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


363
364
365
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 363

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation


441
442
443
444
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 441

def inspect
  values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Chat.V1.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


387
388
389
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 387

def last_consumed_message_index
  @properties['last_consumed_message_index']
end

#last_consumption_timestampTime

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

Returns:

  • (Time)

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


393
394
395
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 393

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


381
382
383
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 381

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


357
358
359
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 357

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


339
340
341
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 339

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation


434
435
436
437
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 434

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

#update(role_sid: :unset, last_consumed_message_index: :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.

Returns:


428
429
430
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 428

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 The absolute URL of the Member resource.

Returns:

  • (String)

    The absolute URL of the Member resource


399
400
401
# File 'lib/twilio-ruby/rest/chat/v1/service/channel/member.rb', line 399

def url
  @properties['url']
end