Creates an instance of FFCRtcVideoRoom.
Optionalopts: FFCRtcVideoRoomOptionsOptional configuration options for the video room.
Gets the active speakers in the room.
An array of FFCParticipant instances representing the active speakers.
Checks if audio playback is allowed in the room.
true if audio playback is allowed, otherwise false.
Checks if video playback is allowed in the room.
true if video playback is allowed, otherwise false.
Checks if end-to-end encryption (E2EE) is enabled.
true if E2EE is enabled, otherwise false.
Checks if the room is currently recording.
true if the room is recording, otherwise false.
Gets the local participant in the room.
The local participant as an FFCLocalParticipant.
Gets the metadata associated with the room.
The room metadata as a string, or undefined if not set.
Gets the name of the room.
The name of the room.
Gets the number of participants in the room.
The number of participants.
Gets the number of publishers in the room.
The number of publishers.
Gets the options used to configure the room.
The room options as FFCInternalRtcVideoRoomOptions.
Gets the remote participants in the room.
A map of participant IDs to FFCRemoteParticipant instances.
Gets the current connection state of the room.
The connection state as an FFCConnectionState.
Connects to the room.
The URL of the room's signaling server.
The token for authenticating the connection.
Optionalopts: FFCRtcVideoRoomConnectOptionsOptional connection options.
A promise that resolves when the connection is established.
Disconnects from the room.
Whether to stop all tracks when disconnecting.
A promise that resolves when the disconnection is complete.
Gets the active device for a specific media kind.
The type of media device (e.g., "audioinput").
The device ID of the active device, or undefined if not set.
Gets a participant by their identity.
The participant as an FFCParticipant, or undefined if not found.
Gets the room's SID (Session Identifier).
A promise that resolves to the room's SID.
Prepares the connection to the room.
The URL of the room's signaling server.
Optionaltoken: stringThe token for authenticating the connection.
A promise that resolves when the connection is prepared.
Starts audio playback in the room.
A promise that resolves when audio playback starts.
Starts video playback in the room.
A promise that resolves when video playback starts.
Switches the active device for a specific media kind.
The type of media device (e.g., "audioinput").
The ID of the device to switch to.
Whether to match the device ID exactly.
A promise that resolves to true if the device was switched successfully, otherwise false.
StaticgetRetrieves the local media devices available on the system.
Optionalkind: MediaDeviceKindThe type of media device(https://developer.mozilla.org/en-US/docs/Web/API/MediaDeviceInfo/kind) to retrieve (e.g., "audioinput").
Whether to request permissions for the devices.
A promise that resolves to an array of MediaDeviceInfo objects.
The
FFCRtcVideoRoomclass provides an interface for managing and interacting with a WebRTC video room. It extendsEventEmitterto emit various events related to room state, participants, tracks, and more.