Class: Twilio::REST::Video::V1::RoomInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/video/v1/room.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, sid: nil) ⇒ RoomInstance

Initialize the RoomInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • sid (String) (defaults to: nil)

    The sid



307
308
309
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
335
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 307

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

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'status' => payload['status'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'account_sid' => payload['account_sid'],
      'enable_turn' => payload['enable_turn'],
      'unique_name' => payload['unique_name'],
      'status_callback' => payload['status_callback'],
      'status_callback_method' => payload['status_callback_method'],
      'end_time' => Twilio.deserialize_iso8601_datetime(payload['end_time']),
      'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
      'type' => payload['type'],
      'max_participants' => payload['max_participants'].to_i,
      'record_participants_on_connect' => payload['record_participants_on_connect'],
      'video_codecs' => payload['video_codecs'],
      'media_region' => payload['media_region'],
      'url' => payload['url'],
      'links' => payload['links'],
  }

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

Instance Method Details

#account_sidString

Returns The account_sid.

Returns:

  • (String)

    The account_sid



374
375
376
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 374

def 
  @properties['account_sid']
end

#contextRoomContext

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

Returns:



341
342
343
344
345
346
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 341

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

#date_createdTime

Returns The date_created.

Returns:

  • (Time)

    The date_created



362
363
364
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 362

def date_created
  @properties['date_created']
end

#date_updatedTime

Returns The date_updated.

Returns:

  • (Time)

    The date_updated



368
369
370
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 368

def date_updated
  @properties['date_updated']
end

#durationString

Returns The duration.

Returns:

  • (String)

    The duration



410
411
412
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 410

def duration
  @properties['duration']
end

#enable_turnBoolean

Returns The enable_turn.

Returns:

  • (Boolean)

    The enable_turn



380
381
382
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 380

def enable_turn
  @properties['enable_turn']
end

#end_timeTime

Returns The end_time.

Returns:

  • (Time)

    The end_time



404
405
406
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 404

def end_time
  @properties['end_time']
end

#fetchRoomInstance

Fetch a RoomInstance

Returns:



459
460
461
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 459

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



494
495
496
497
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 494

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

Returns The links.

Returns:

  • (String)

    The links



452
453
454
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 452

def links
  @properties['links']
end

#max_participantsString

Returns The max_participants.

Returns:

  • (String)

    The max_participants



422
423
424
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 422

def max_participants
  @properties['max_participants']
end

#media_regionString

Returns The media_region.

Returns:

  • (String)

    The media_region



440
441
442
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 440

def media_region
  @properties['media_region']
end

#participantsparticipants

Access the participants

Returns:



481
482
483
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 481

def participants
  context.participants
end

#record_participants_on_connectBoolean

Returns The record_participants_on_connect.

Returns:

  • (Boolean)

    The record_participants_on_connect



428
429
430
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 428

def record_participants_on_connect
  @properties['record_participants_on_connect']
end

#recordingsrecordings

Access the recordings

Returns:



474
475
476
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 474

def recordings
  context.recordings
end

#sidString

Returns The sid.

Returns:

  • (String)

    The sid



350
351
352
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 350

def sid
  @properties['sid']
end

#statusroom.RoomStatus

Returns The status.

Returns:

  • (room.RoomStatus)

    The status



356
357
358
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 356

def status
  @properties['status']
end

#status_callbackString

Returns The status_callback.

Returns:

  • (String)

    The status_callback



392
393
394
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 392

def status_callback
  @properties['status_callback']
end

#status_callback_methodString

Returns The status_callback_method.

Returns:

  • (String)

    The status_callback_method



398
399
400
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 398

def status_callback_method
  @properties['status_callback_method']
end

#to_sObject

Provide a user friendly representation



487
488
489
490
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 487

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

#typeroom.RoomType

Returns The type.

Returns:

  • (room.RoomType)

    The type



416
417
418
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 416

def type
  @properties['type']
end

#unique_nameString

Returns The unique_name.

Returns:

  • (String)

    The unique_name



386
387
388
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 386

def unique_name
  @properties['unique_name']
end

#update(status: nil) ⇒ RoomInstance

Update the RoomInstance

Parameters:

  • status (room.RoomStatus) (defaults to: nil)

    The status

Returns:



467
468
469
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 467

def update(status: nil)
  context.update(status: status)
end

#urlString

Returns The url.

Returns:

  • (String)

    The url



446
447
448
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 446

def url
  @properties['url']
end

#video_codecsroom.VideoCodec

Returns The video_codecs.

Returns:

  • (room.VideoCodec)

    The video_codecs



434
435
436
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 434

def video_codecs
  @properties['video_codecs']
end