Connects to the room (async — the native connect handshake is network-bound).
Disconnects from the room and releases native resources.
Drops all pending/queued outbound audio — flushes the agent's voice on barge-in.
Returns the current participant roster (including the bot).
Registers the inbound per-participant subscribed-audio callback. "Latest handler wins."
OptionalonRegisters the callback for a change in what the client shows of the avatar. Optional. "Latest handler wins."
Registers the room-disconnected callback (SFU closed / the bot was removed); reason is the disconnect reason when known.
Registers the participant-connected callback.
Registers the participant-disconnected callback (identity of the participant that left).
OptionalonRegisters the inbound video callback: sampled frames from people who let agents see them. Fires only when the client was created with NativeRoomClientOptions.Video. Optional: a wrapper without video omits it. "Latest handler wins."
OptionalonRegisters the callback for a camera or screen the client stopped reading. Optional. "Latest handler wins."
Publishes one raw PCM frame on the bot's audio track (the agent's voice).
OptionalpublishDecodes and publishes one piece of the agent's live avatar: the face on a camera track published at its first frame, the voice on the bot's audio track, paced together. It is the bot's only video out: the client publishes no raw camera frames and no screen share. Optional: a wrapper without avatars omits it.
Publishes a reliable message on the room data channel (the room-native "chat").
The live native room client the module hands back. The surface mirrors ILiveKitRoomSdk but in the native SDK's own (lower-cased) vocabulary; this adapter maps between the two. VERIFY against the native LiveKit Node SDK wrapper.