← Back to Features
PearlPBX2

Live Operator Dashboard

Real-time queue and agent monitoring — no page reloads, no polling, pure WebSocket.

The PearlPBX2 operator dashboard streams live call center state directly from Asterisk via Django Channels and Redis. Every agent status change, queue entry, and active call update appears in the browser instantly — without refreshing the page. Supervisors get a unified view of every running queue, every connected agent, and every call in progress.

Key highlights

Queue occupancy displayed per second — see waiting callers the moment they enter

Agent status board: Available, Busy, Paused, Offline — updated over WebSocket

Active call control: supervisors can monitor, whisper, or barge from the UI (coming soon)

14-day CDR activity chart renders on page load using Chart.js

Zero page reloads — full UI state kept alive via persistent WebSocket connection

Architecture: Browser ──WebSocket──► Django Channels ◄── Redis ◄── Asterisk AMI

How it works

  • Asterisk AMI events (AgentLogin, QueueCallerJoin, Hangup, etc.) are captured by a Dashboard Listener process
  • The listener publishes events to Redis pub/sub channels
  • Django Channels consumers subscribe to Redis and forward events over WebSocket to connected browsers
  • The browser JavaScript layer applies incremental state patches — no full page renders needed
  • On reconnect, the server replays the current full state snapshot so the UI is immediately consistent

What you see

  • Per-queue cards: queue name, callers waiting, average wait time, service level percentage
  • Per-agent rows: extension, full name, current status, time in current status, calls handled today
  • Active calls panel: caller ID, destination queue, duration, option to listen or barge
  • Call volume chart (Chart.js line chart): inbound vs outbound over the last 14 days
  • Quick stats bar: total calls today, answered, missed, average handle time

Ready to see it in action?

Request a live demo or explore pricing for hosted and self-hosted options.