Class: Twilio::REST::Video::V1::RoomContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/video/v1/room.rb,
lib/twilio-ruby/rest/video/v1/room/participant.rb,
lib/twilio-ruby/rest/video/v1/room/room_recording.rb,
lib/twilio-ruby/rest/video/v1/room/transcriptions.rb,
lib/twilio-ruby/rest/video/v1/room/recording_rules.rb,
lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb,
lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb,
lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb,
lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb

Defined Under Namespace

Classes: ParticipantContext, ParticipantInstance, ParticipantInstanceMetadata, ParticipantList, ParticipantListResponse, ParticipantPage, ParticipantPageMetadata, RecordingRulesInstance, RecordingRulesList, RecordingRulesListResponse, RecordingRulesPage, RecordingRulesPageMetadata, RoomRecordingContext, RoomRecordingInstance, RoomRecordingInstanceMetadata, RoomRecordingList, RoomRecordingListResponse, RoomRecordingPage, RoomRecordingPageMetadata, TranscriptionsContext, TranscriptionsInstance, TranscriptionsInstanceMetadata, TranscriptionsList, TranscriptionsListResponse, TranscriptionsPage, TranscriptionsPageMetadata

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ RoomContext

Initialize the RoomContext



343
344
345
346
347
348
349
350
351
352
353
354
355
356
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 343

def initialize(version, sid)
    super(version)
    

    # Path Solution
    @solution = { sid: sid,  }
    @uri = "/Rooms/#{@solution[:sid]}"

    # Dependents
    @recording_rules = nil
    @participants = nil
    @transcriptions = nil
    @recordings = nil
end

Instance Method Details

#fetchRoomInstance

Fetch the RoomInstance



360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 360

def fetch

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    payload = @version.fetch('GET', @uri, headers: headers)
    RoomInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#fetch_with_metadataRoomInstance

Fetch the RoomInstanceMetadata



379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 379

def 

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    response = @version.('GET', @uri, headers: headers)
    room_instance = RoomInstance.new(
        @version,
        response.body,
        sid: @solution[:sid],
    )
    .new(
        @version,
        room_instance,
        response.headers,
        response.status_code
    )
end

#inspectObject

Provide a detailed, user friendly representation



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

def inspect
    context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
    "#<Twilio.Video.V1.RoomContext #{context}>"
end

#participants(sid = :unset) ⇒ ParticipantList, ParticipantContext

Access the participants

Raises:

  • (ArgumentError)


474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 474

def participants(sid=:unset)

    raise ArgumentError, 'sid cannot be nil' if sid.nil?

    if sid != :unset
        return ParticipantContext.new(@version, @solution[:sid],sid )
    end

    unless @participants
        @participants = ParticipantList.new(
            @version, room_sid: @solution[:sid], )
    end

 @participants
end

#recording_rulesRecordingRulesList, RecordingRulesContext

Access the recording_rules



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

def recording_rules
  unless @recording_rules
    @recording_rules = RecordingRulesList.new(
            @version, room_sid: @solution[:sid], )
  end
  @recording_rules
end

#recordings(sid = :unset) ⇒ RoomRecordingList, RoomRecordingContext

Access the recordings

Raises:

  • (ArgumentError)


512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 512

def recordings(sid=:unset)

    raise ArgumentError, 'sid cannot be nil' if sid.nil?

    if sid != :unset
        return RoomRecordingContext.new(@version, @solution[:sid],sid )
    end

    unless @recordings
        @recordings = RoomRecordingList.new(
            @version, room_sid: @solution[:sid], )
    end

 @recordings
end

#to_sObject

Provide a user friendly representation



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

def to_s
    context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
    "#<Twilio.Video.V1.RoomContext #{context}>"
end

#transcriptions(ttid = :unset) ⇒ TranscriptionsList, TranscriptionsContext

Access the transcriptions

Raises:

  • (ArgumentError)


493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 493

def transcriptions(ttid=:unset)

    raise ArgumentError, 'ttid cannot be nil' if ttid.nil?

    if ttid != :unset
        return TranscriptionsContext.new(@version, @solution[:sid],ttid )
    end

    unless @transcriptions
        @transcriptions = TranscriptionsList.new(
            @version, room_sid: @solution[:sid], )
    end

 @transcriptions
end

#update(status: nil) ⇒ RoomInstance

Update the RoomInstance



405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 405

def update(
    status: nil
)

    data = Twilio::Values.of({
        'Status' => status,
    })

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    payload = @version.update('POST', @uri, data: data, headers: headers)
    RoomInstance.new(
        @version,
        payload,
        sid: @solution[:sid],
    )
end

#update_with_metadata(status: nil) ⇒ RoomInstance

Update the RoomInstanceMetadata



431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
# File 'lib/twilio-ruby/rest/video/v1/room.rb', line 431

def (
  status: nil
)

    data = Twilio::Values.of({
        'Status' => status,
    })

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    response = @version.('POST', @uri, data: data, headers: headers)
    room_instance = RoomInstance.new(
        @version,
        response.body,
        sid: @solution[:sid],
    )
    .new(
        @version,
        room_instance,
        response.headers,
        response.status_code
    )
end