ReadonlyEventsThe room's cancelable event bus (Before-events + notifications).
ReadonlyStateThe current room-state snapshot.
ReadonlyState$The room-state snapshot: the current value on subscribe, then every change.
ReadonlyStatusThe current connection status.
Shares something else: stops the current share, then asks the browser's picker again, with request as above.
Optionalrequest: DisplayCaptureSurface | DisplayCaptureOptionsJoins the room and brings the local participant online with the requested media. Only a failed connection fails
the join; a microphone or camera that fails to start is left off and reported as a device error.
Optionaloptions: LiveKitRoomConnectOptionsLeaves the room. Resolves false when a beforeDisconnect handler canceled it.
OptionaluserInitiated: booleanLeaves the room and releases everything; the controller is not used again.
The device in use for a kind, or null when unknown or not connected.
Lists the devices of a kind.
Sends a text message to the room on the data channel. Resolves true when the message went out, and false when it
did not: no room, a beforeSendData handler canceled it, or the send failed (also raised as an error of kind
data).
Optionaltopic: stringApplies a camera background effect; resolves false when it cannot be applied.
Turns the local camera on or off.
Turns the local microphone on or off.
Turns the noise filter on or off; resolves false when it cannot be applied.
Starts or stops sharing. request is the kind of surface the browser's picker offers first, or the share's
/media options: a surface preference, or one panel of the page to share alone (Panel) with its name
(PanelLabel).
Optionalrequest: DisplayCaptureSurface | DisplayCaptureOptionsResumes audio playback after a browser autoplay block (call from a user gesture).
Moves a kind to another device.
Toggles the camera and resolves the new state.
Toggles the microphone and resolves the new state.
Toggles screen sharing and resolves the new state.
What a meeting room UI drives: the connection, the local microphone, camera and screen share, the data channel, effects, devices, and the room's state and events. LiveKitRoomController is the LiveKit implementation; another implementation (a test fake, a simulated room) runs the same UI without a LiveKit server.