/agent-console/agents) and the Agent Desk Metrics cards in the admin dashboard (/dashboard/agent-desk).
Supervisor Dashboard
The supervisor dashboard is gated by the supervisor role (redirects to/agent-console otherwise) and polls fetchSupervisorDashboard every 5 seconds. It renders two tables:
- Agents — Name, Email, Role, and a Status badge (
available→ success,on_call→ primary,busy/disconnected→ danger). - Active Calls — Call ID, Caller, assigned agent, Status, and per-call actions.
Monitoring actions
| Action | API | Behavior |
|---|---|---|
| Listen | supervisorListen | joins the room receive-only (audio off) |
| Barge in | supervisorBargeIn | joins with mic; BargeMicToggle mutes/unmutes |
| Force End | supervisorForceEnd | confirm dialog, then tears the call down |
MonitorPanel that connects to a LiveKitRoom with the returned token; for barge, audio publishing is enabled. Listen/Barge are disabled unless the call status is assigned or active, or another join is in flight.
Agent Desk Metrics
Agent Desk Metrics is the admin-side summary (under/dashboard, gated by the ADK flag). It calls fetchAgentDeskMetrics once and renders five stat cards:
| Card | Field |
|---|---|
| Queue Depth | queue.waiting |
| Active Calls | queue.active |
| Agents Available | agents.available |
| Agents On Call | agents.busy |
| Calls Handled Today | today_calls |
Related docs
Agent console
The agent-side workspace being monitored.
Agent Desk (CXB API)
Queue, rooms, listen/barge, and force-end server-side.