Room class

Properties

activePresenterId String?
It will be the id of the participant who started Presenting / Screen sharing in the room. If no participant is sharing the screen, at that time value of activePresenterId will be null.
no setter
activeSpeakerId String?
It will be the id of the participant who is actively speaking in the room. If no participant is speaking, at that time value of activeSpeakerId will be null.
no setter
camEnabled bool
Indicates whether the local participant’s WebCam is currently enabled.
no setter
hlsDownstreamUrl String?
Returns the downstream URL for the ongoing HLS session, if available.
no setter
hlsState String
Represents the current HLS state of the room.
no setter
id String
Unique id of the room where the participant has joined.
latefinal
livestreamState String
Represents the current livestream state of the room.
no setter
localParticipant Participant
The local participant in the room.
latefinal
micEnabled bool
Indicates whether the local participant’s microphone is currently enabled.
no setter
participants Map<String, Participant>
A collection of all remote participants in the room.
final
pinnedParticipants Map<String, ParticipantPinState>
A collection of all pinned participants in the room.
final
pubSub PubSub
Provides access to the Publisher–Subscriber (PubSub) feature for the room.
getter/setter pair
realtimeStore RealtimeStore
getter/setter pair
recordingState String
Represents the current recording state of the room.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
selectedCam VideoDeviceInfo?
Returns the currently selected WebCam device.
no setter
selectedCamId String?
Returns the device ID of the currently selected WebCam.
no setter
selectedMic AudioDeviceInfo?
Returns the currently selected microphone device.
no setter
selectedMicId String?
Returns the device ID of the currently selected microphone.
no setter
selectedSpeaker AudioDeviceInfo?
Returns the currently selected speaker device.
no setter
videoSDKTelemetery ↔ VideoSDKTelemetery?
getter/setter pair

Methods

changeCam(VideoDeviceInfo device, [CustomTrack? customTrack]) Future<void>
Changes the active WebCam device for the local participant.
changeMic(AudioDeviceInfo device, [CustomTrack? customTrack]) Future<void>
Changes the active audio input (microphone) device for the local participant.
changeMode(Mode requestedMode) Future<void>
Changes the media mode of the local participant.
disableAdaptiveSubscription() Future<void>
Disables Adaptive Subscription for the current meeting.
disableCam() Future<void>
Disables the WebCam device for the local participant.
disableScreenShare() Future<void>
Disables screen sharing for the local participant.
enableAdaptiveSubscription() Future<void>
Enables Adaptive Subscription for the current meeting.
enableCam([CustomTrack? customVideoTrack]) Future<void>
Enables the WebCam device for the local participant.
enableScreenShare({bool? enableAudio, DesktopCapturerSource? source}) Future<void>
Enables screen sharing for the local participant.
end() → void
Ends the current running room session.
fetchBase64File({required String url, required String token}) Future<String?>
Retrieves a file from VideoSDK’s temporary storage as a Base64 string.
getScreenShareSources() Future<List<DesktopCapturerSource>>
Retrieves all available screens and open application windows that can be shared.
join() Future<void>
Joins the VideoSDK Room.
leave() Future<void>
Leaves the current running room session.
muteMic() Future<void>
Disables (mutes) the microphone device for the local participant.
off(Events event, Function handler) → void
Removes a previously registered event listener.
on(Events event, Function handler) → void
Registers an event listener for a specific meeting event.
pauseAllStreams({String? kind}) Future<void>
Pauses active media streams in the current meeting.
requestMediaRelay(String meetingId, {String? token, List<String>? kinds}) Future<void>
Starts relaying selected media streams from the current meeting to another destination meeting.
resumeAllStreams({String? kind}) Future<void>
Resumes media streams that were previously paused in the meeting.
startHls({Map<String, dynamic>? config, PostTranscriptionConfig? postTranscriptionConfig}) Future<void>
Starts HLS (HTTP Live Streaming) for the current room session.
startLivestream(dynamic outputs, {Map<String, dynamic>? config, PostTranscriptionConfig? postTranscriptionConfig}) Future<void>
Starts livestreaming the current room session.
startRecording({String? webhookUrl, String? awsDirPath, Map<String, dynamic>? config, PostTranscriptionConfig? postTranscriptionConfig}) Future<void>
Starts recording the current room session.
startTranscription({TranscriptionConfig? transcriptionConfig}) Future<void>
Starts real-time transcription for the current room session.
startWhiteboard() Future<void>
It is used to initialize a whiteboard session.
stopHls() Future<void>
Stops the ongoing HLS (HTTP Live Streaming) session.
stopLivestream() Future<void>
Stops the ongoing room livestream.
stopMediaRelay(String meetingId) Future<void>
Stops the ongoing media relay to a destination meeting.
stopRecording() Future<void>
Stops the ongoing room recording.
stopTranscription() Future<void>
Stops the ongoing real-time transcription for the current room session.
stopWhiteboard() Future<void>
It is used to end a whiteboard session.
switchAudioDevice(AudioDeviceInfo device) Future<void>
Switches the audio output device for the local participant.
switchTo(String meetingId, {String? token}) Future<void>
Switches the local participant from the current meeting to another meeting seamlessly.
unmuteMic([CustomTrack? customAudioTrack]) Future<void>
Enables (unmutes) the microphone device for the local participant.
uploadBase64File({required String base64Data, required String token, required String fileName}) Future<String?>
Uploads a Base64-encoded file to VideoSDK’s temporary storage.