Class: Twilio::REST::Chat::V1::ServiceContext::UserInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/chat/v1/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 resource is associated with.

  • sid (String) (defaults to: nil)

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


274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 274

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'].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_sidString

Returns The SID of the Account that created the resource.

Returns:

  • (String)

    The SID of the Account that created the resource


319
320
321
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 319

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


331
332
333
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 331

def attributes
  @properties['attributes']
end

#contextUserContext

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

Returns:


304
305
306
307
308
309
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 304

def context
  unless @instance_context
    @instance_context = UserContext.new(@version, @params['service_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


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

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


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

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Delete the UserInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise


405
406
407
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 405

def delete
  context.delete
end

#fetchUserInstance

Fetch the UserInstance

Returns:


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

def fetch
  context.fetch
end

#friendly_nameString

Returns The string that you assigned to describe the resource.

Returns:

  • (String)

    The string that you assigned to describe the resource


337
338
339
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 337

def friendly_name
  @properties['friendly_name']
end

#identityString

Returns The string that identifies the resource's User.

Returns:

  • (String)

    The string that identifies the resource's User


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

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation


438
439
440
441
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 438

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

#is_notifiableBoolean

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


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

def is_notifiable
  @properties['is_notifiable']
end

#is_onlineBoolean

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


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

def is_online
  @properties['is_online']
end

#joined_channels_countString

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

Returns:

  • (String)

    The number of Channels this User is a Member of


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

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


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

def links
  @properties['links']
end

#role_sidString

Returns The SID of the assigned to the user.

Returns:

  • (String)

    The SID of the assigned to the user


343
344
345
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 343

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


325
326
327
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 325

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


313
314
315
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 313

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation


431
432
433
434
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 431

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

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

Update the UserInstance

Parameters:

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

    The SID of the Role assigned to this 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.

Returns:


418
419
420
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 418

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

#urlString

Returns The absolute URL of the User resource.

Returns:

  • (String)

    The absolute URL of the User resource


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

def url
  @properties['url']
end

#user_channelsuser_channels

Access the user_channels

Returns:


425
426
427
# File 'lib/twilio-ruby/rest/chat/v1/service/user.rb', line 425

def user_channels
  context.user_channels
end