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.



317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 317

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:



360
361
362
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 360

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.



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

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:



366
367
368
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 366

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:



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

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:



384
385
386
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 384

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:



390
391
392
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 390

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



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

def delete(
    x_twilio_webhook_enabled: :unset
)

    context.delete(
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#fetchMemberInstance

Fetch the MemberInstance

Returns:



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

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:



378
379
380
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 378

def identity
    @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



485
486
487
488
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 485

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:



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

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:



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

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:



396
397
398
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 396

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:



372
373
374
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 372

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.



354
355
356
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 354

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



478
479
480
481
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 478

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:



455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
# File 'lib/twilio-ruby/rest/chat/v2/service/channel/member.rb', line 455

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.



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

def url
    @properties['url']
end