The provider's own session id, available after start().
The gateway-generated avatar session id, available after start().
Start the avatar session.
Subclasses should override this method and call super.start(agentSession, room) at the
top of their implementation. Subclasses may widen the return type (e.g. returning a
session id), matching the # type: ignore[override] escape hatch used in Python.
An avatar session provisioned through LiveKit Inference.
Unlike BYOK avatar plugins, this calls the LiveKit Inference gateway with LiveKit credentials; the gateway creates the provider session with LiveKit's wholesale key. Media and RPC still flow in-room over DataStream, exactly as the BYOK plugins do.