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



369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 369

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'] == nil ? payload['max_participants'] : payload['max_participants'].to_i,
        'max_participant_duration' => payload['max_participant_duration'] == nil ? payload['max_participant_duration'] : payload['max_participant_duration'].to_i,
        'max_concurrent_published_tracks' => payload['max_concurrent_published_tracks'] == nil ? payload['max_concurrent_published_tracks'] : payload['max_concurrent_published_tracks'].to_i,
        'record_participants_on_connect' => payload['record_participants_on_connect'],
        'video_codecs' => payload['video_codecs'],
        'media_region' => payload['media_region'],
        'audio_only' => payload['audio_only'],
        'empty_room_timeout' => payload['empty_room_timeout'] == nil ? payload['empty_room_timeout'] : payload['empty_room_timeout'].to_i,
        'unused_room_timeout' => payload['unused_room_timeout'] == nil ? payload['unused_room_timeout'] : payload['unused_room_timeout'].to_i,
        'large_room' => payload['large_room'],
        'url' => payload['url'],
        'links' => payload['links'],
    }

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

Instance Method Details

#account_sidString



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

def 
    @properties['account_sid']
end

#audio_onlyBoolean



526
527
528
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 526

def audio_only
    @properties['audio_only']
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



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

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

#date_createdTime



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

def date_created
    @properties['date_created']
end

#date_updatedTime



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

def date_updated
    @properties['date_updated']
end

#durationString



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

def duration
    @properties['duration']
end

#empty_room_timeoutString



532
533
534
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 532

def empty_room_timeout
    @properties['empty_room_timeout']
end

#enable_turnBoolean



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

def enable_turn
    @properties['enable_turn']
end

#end_timeTime



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

def end_time
    @properties['end_time']
end

#fetchRoomInstance

Fetch the RoomInstance



563
564
565
566
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 563

def fetch

    context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



611
612
613
614
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 611

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

#large_roomBoolean



544
545
546
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 544

def large_room
    @properties['large_room']
end


556
557
558
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 556

def links
    @properties['links']
end

#max_concurrent_published_tracksString



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

def max_concurrent_published_tracks
    @properties['max_concurrent_published_tracks']
end

#max_participant_durationString



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

def max_participant_duration
    @properties['max_participant_duration']
end

#max_participantsString



490
491
492
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 490

def max_participants
    @properties['max_participants']
end

#media_regionString



520
521
522
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 520

def media_region
    @properties['media_region']
end

#participantsparticipants

Access the participants



591
592
593
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 591

def participants
    context.participants
end

#record_participants_on_connectBoolean



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

def record_participants_on_connect
    @properties['record_participants_on_connect']
end

#recording_rulesrecording_rules

Access the recording_rules



584
585
586
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 584

def recording_rules
    context.recording_rules
end

#recordingsrecordings

Access the recordings



598
599
600
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 598

def recordings
    context.recordings
end

#sidString



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

def sid
    @properties['sid']
end

#statusRoomStatus



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

def status
    @properties['status']
end

#status_callbackString



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

def status_callback
    @properties['status_callback']
end

#status_callback_methodString



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

def status_callback_method
    @properties['status_callback_method']
end

#to_sObject

Provide a user friendly representation



604
605
606
607
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 604

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

#typeRoomType



484
485
486
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 484

def type
    @properties['type']
end

#unique_nameString



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

def unique_name
    @properties['unique_name']
end

#unused_room_timeoutString



538
539
540
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 538

def unused_room_timeout
    @properties['unused_room_timeout']
end

#update(status: nil) ⇒ RoomInstance

Update the RoomInstance



572
573
574
575
576
577
578
579
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 572

def update(
    status: nil
)

    context.update(
        status: status, 
    )
end

#urlString



550
551
552
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 550

def url
    @properties['url']
end

#video_codecsArray<VideoCodec>



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

def video_codecs
    @properties['video_codecs']
end