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.



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

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:



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

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.



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

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:



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

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:



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

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:



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

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:



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

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



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

def delete(
    x_twilio_webhook_enabled: :unset
)

    context.delete(
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#fetchMemberInstance

Fetch the MemberInstance

Returns:



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

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:



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

def identity
    @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



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

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:



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

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:



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

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:



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

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:



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

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.



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

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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:



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

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.



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

def url
    @properties['url']
end