Skip to main content

Agent Track Toggle

A toggle for the agent session's audio track.

Usage

Code
'use client';
import { useSession } from '@livekit/components-react';
import { AgentSessionProvider } from '@/components/agents-ui/agent-session-provider';
import { AgentTrackToggle } from '@/components/agents-ui/agent-track-toggle';
const TOKEN_SOURCE = TokenSource.sandboxTokenServer(
process.env.MY_LK_SANDBOX_TOKEN_SERVER_ID
);
export function Demo() {
const session = useSession(TOKEN_SOURCE);
return (
<AgentSessionProvider session={session}>
<AgentTrackToggle
variant="default"
source="microphone"
pressed={pressed}
pending=false
/>
</AgentSessionProvider>
);
}

Features

  • Toggles the capture of a clients media input (microphone, camera, screen share)
  • Supports 3 styles: default, outline, and livekit
  • Supports 5 sizes: icon, sm, md, lg, and xl

Installation

pnpm dlx shadcn@latest add @agents-ui/agent-track-toggle

Props

Prop nameTypeDefault
ref?
any
key?
any
variant?
enum
default
source
enum
pending?
boolean
pressed?
boolean
defaultPressed?
boolean
onPressedChange?
function
...props?
ComponentProps<'button'>