Class: Twilio::REST::Chat::V2::ServiceContext::UserInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/chat/v2/service/user.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, sid: nil) ⇒ UserInstance

Initialize the UserInstance

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 User resource is associated with.

  • sid (String) (defaults to: nil) —

    The SID of the User resource to fetch. This value can be either the sid or the identity of the User resource to fetch.



310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 310

def initialize(version, payload, service_sid: nil, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'service_sid' => payload['service_sid'],
      'attributes' => payload['attributes'],
      'friendly_name' => payload['friendly_name'],
      'role_sid' => payload['role_sid'],
      'identity' => payload['identity'],
      'is_online' => payload['is_online'],
      'is_notifiable' => payload['is_notifiable'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'joined_channels_count' => payload['joined_channels_count'] == nil ? payload['joined_channels_count'] : payload['joined_channels_count'].to_i,
      'links' => payload['links'],
      'url' => payload['url'],
  }

  # Context
  @instance_context = nil
  @params = {'service_sid' => service_sid, 'sid' => sid || @properties['sid'], }
end

Instance Method Details

#account_sid ⇒ String

Returns The SID of the Account that created the resource.

Returns:

  • (String) —

    The SID of the Account that created the resource



355
356
357
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 355

def 
  @properties['account_sid']
end

#attributes ⇒ String

Returns The JSON string that stores application-specific data.

Returns:

  • (String) —

    The JSON string that stores application-specific data



367
368
369
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 367

def attributes
  @properties['attributes']
end

#context ⇒ UserContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



340
341
342
343
344
345
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 340

def context
  unless @instance_context
    @instance_context = UserContext.new(@version, @params['service_sid'], @params['sid'], )
  end
  @instance_context
end

#date_created ⇒ Time

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



403
404
405
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 403

def date_created
  @properties['date_created']
end

#date_updated ⇒ Time

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



409
410
411
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 409

def date_updated
  @properties['date_updated']
end

#delete ⇒ Boolean

Delete the UserInstance

Returns:

  • (Boolean) —

    true if delete succeeds, false otherwise



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

def delete
  context.delete
end

#fetch ⇒ UserInstance

Fetch the UserInstance

Returns:



434
435
436
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 434

def fetch
  context.fetch
end

#friendly_name ⇒ String

Returns The string that you assigned to describe the resource.

Returns:

  • (String) —

    The string that you assigned to describe the resource



373
374
375
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 373

def friendly_name
  @properties['friendly_name']
end

#identity ⇒ String

Returns The string that identifies the resource's User.

Returns:

  • (String) —

    The string that identifies the resource's User



385
386
387
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 385

def identity
  @properties['identity']
end

#inspect ⇒ Object

Provide a detailed, user friendly representation



489
490
491
492
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 489

def inspect
  values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Chat.V2.UserInstance #{values}>"
end

#is_notifiable ⇒ Boolean

Returns Whether the User has a potentially valid Push Notification registration for the Service instance.

Returns:

  • (Boolean) —

    Whether the User has a potentially valid Push Notification registration for the Service instance



397
398
399
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 397

def is_notifiable
  @properties['is_notifiable']
end

#is_online ⇒ Boolean

Returns Whether the User is actively connected to the Service instance and online.

Returns:

  • (Boolean) —

    Whether the User is actively connected to the Service instance and online



391
392
393
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 391

def is_online
  @properties['is_online']
end

#joined_channels_count ⇒ String

Returns The number of Channels the User is a Member of.

Returns:

  • (String) —

    The number of Channels the User is a Member of



415
416
417
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 415

def joined_channels_count
  @properties['joined_channels_count']
end

Returns The absolute URLs of the Channel and Binding resources related to the user.

Returns:

  • (String) —

    The absolute URLs of the Channel and Binding resources related to the user



421
422
423
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 421

def links
  @properties['links']
end

#role_sid ⇒ String

Returns The SID of the Role assigned to the user.

Returns:

  • (String) —

    The SID of the Role assigned to the user



379
380
381
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 379

def role_sid
  @properties['role_sid']
end

#service_sid ⇒ String

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



361
362
363
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 361

def service_sid
  @properties['service_sid']
end

#sid ⇒ String

Returns The unique string that identifies the resource.

Returns:

  • (String) —

    The unique string that identifies the resource



349
350
351
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 349

def sid
  @properties['sid']
end

#to_s ⇒ Object

Provide a user friendly representation



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

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

#update(role_sid: :unset, attributes: :unset, friendly_name: :unset, x_twilio_webhook_enabled: :unset) ⇒ UserInstance

Update the UserInstance

Parameters:

  • role_sid (String) (defaults to: :unset) —

    The SID of the Role to assign to the User.

  • attributes (String) (defaults to: :unset) —

    A valid JSON string that contains application-specific data.

  • friendly_name (String) (defaults to: :unset) —

    A descriptive string that you create to describe the resource. It is often used for display purposes.

  • x_twilio_webhook_enabled (user.WebhookEnabledType) (defaults to: :unset) —

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:



457
458
459
460
461
462
463
464
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 457

def update(role_sid: :unset, attributes: :unset, friendly_name: :unset, x_twilio_webhook_enabled: :unset)
  context.update(
      role_sid: role_sid,
      attributes: attributes,
      friendly_name: friendly_name,
      x_twilio_webhook_enabled: x_twilio_webhook_enabled,
  )
end

#url ⇒ String

Returns The absolute URL of the User resource.

Returns:

  • (String) —

    The absolute URL of the User resource



427
428
429
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 427

def url
  @properties['url']
end

#user_bindings ⇒ user_bindings

Access the user_bindings

Returns:



476
477
478
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 476

def user_bindings
  context.user_bindings
end

#user_channels ⇒ user_channels

Access the user_channels

Returns:



469
470
471
# File 'lib/twilio-ruby/rest/chat/v2/service/user.rb', line 469

def user_channels
  context.user_channels
end