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



327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 327

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



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

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



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

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

#date_createdTime



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

def date_created
  @properties['date_created']
end

#date_updatedTime



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

def date_updated
  @properties['date_updated']
end

#durationString



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

def duration
  @properties['duration']
end

#enable_turnBoolean



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

def enable_turn
  @properties['enable_turn']
end

#end_timeTime



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

def end_time
  @properties['end_time']
end

#fetchRoomInstance

Fetch a RoomInstance



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

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



514
515
516
517
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 514

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


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

def links
  @properties['links']
end

#max_participantsString



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

def max_participants
  @properties['max_participants']
end

#media_regionString



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

def media_region
  @properties['media_region']
end

#participantsparticipants

Access the participants



501
502
503
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 501

def participants
  context.participants
end

#record_participants_on_connectBoolean



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

def record_participants_on_connect
  @properties['record_participants_on_connect']
end

#recordingsrecordings

Access the recordings



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

def recordings
  context.recordings
end

#sidString



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

def sid
  @properties['sid']
end

#statusroom.RoomStatus



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

def status
  @properties['status']
end

#status_callbackString



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

def status_callback
  @properties['status_callback']
end

#status_callback_methodString



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

def status_callback_method
  @properties['status_callback_method']
end

#to_sObject

Provide a user friendly representation



507
508
509
510
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 507

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

#typeroom.RoomType



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

def type
  @properties['type']
end

#unique_nameString



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

def unique_name
  @properties['unique_name']
end

#update(status: nil) ⇒ RoomInstance

Update the RoomInstance



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

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

#urlString



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

def url
  @properties['url']
end

#video_codecsroom.VideoCodec



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

def video_codecs
  @properties['video_codecs']
end