useLiveKitRoom
The useLiveKitRoom hook is used to implement the LiveKitRoom or your custom implementation of it. It returns a Room instance and HTML props that should be applied to the root element of the component.
Import
import { useLiveKitRoom } from "@livekit/components-react";
Usage
const { room, htmlProps } = useLiveKitRoom();return <div {...htmlProps}>...</div>;
Properties
string | undefinedRequiredURL to the LiveKit server. For example: wss://<domain>.livekit.cloud To simplify the implementation, undefined is also accepted as an intermediate value, but only with a valid string url can the connection be established.
string | undefinedRequiredA user specific access token for a client to authenticate to the room. This token is necessary to establish a connection to the room. To simplify the implementation, undefined is also accepted as an intermediate value, but only with a valid string token can the connection be established.
AudioCaptureOptions | booleanOptionalPublish audio immediately after connecting to your LiveKit room.
booleanOptionalIf set to true a connection to LiveKit room is initiated.
RoomConnectOptionsOptionalDefine options how to connect to the LiveKit server.
() => voidOptional(reason?: DisconnectReason) => voidOptional(error: Error) => voidOptional(error: Error) => voidOptional(failure?: MediaDeviceFailure, kind?: MediaDeviceKind) => voidOptionalRoomOptionsOptionalOptions for when creating a new room. When you pass your own room instance to this component, these options have no effect. Instead, set the options directly in the room instance.
RoomOptionalOptional room instance. By passing your own room instance you overwrite the options parameter, make sure to set the options directly on the room instance itself.
ScreenShareCaptureOptions | booleanOptionalPublish screen share immediately after connecting to your LiveKit room.
number | undefinedOptionalVideoCaptureOptions | booleanOptionalPublish video immediately after connecting to your LiveKit room.
Returns
{room: Room | undefined;htmlProps: HTMLAttributes<T>;}