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

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



349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb', line 349

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



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

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



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

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



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

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:



381
382
383
384
385
386
387
388
389
390
391
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb', line 381

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



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

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



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

def date_updated
  @properties['date_updated']
end

#delete(x_twilio_webhook_enabled: :unset) ⇒ Boolean

Delete the MemberInstance

Parameters:

  • x_twilio_webhook_enabled (member.WebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise



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

def delete(x_twilio_webhook_enabled: :unset)
  context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
end

#fetchMemberInstance

Fetch the MemberInstance

Returns:



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

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



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

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



528
529
530
531
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb', line 528

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



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

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



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

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



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

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



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

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



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

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



521
522
523
524
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb', line 521

def to_s
  values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.IpMessaging.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:



507
508
509
510
511
512
513
514
515
516
517
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb', line 507

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



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

def url
  @properties['url']
end