This dashboard shows callers who have been unable to reach a human. It tracks frustration signals from each call — not just call volume — to identify who needs a callback most urgently.
"Unresolved" means the caller did not get transferred to a human. It does NOT mean they were unhappy — many calls resolve fine through the AI (schedule checks, info questions). That's why we use weighted scoring instead of raw counts.
Each unresolved call gets a score from 0 to 4 based on what happened:
| Score | What happened | Example |
|---|---|---|
| 4 | Transfer attempted, nobody answered | Caller asked to speak to someone, got transferred, but it rang out |
| 3 | Caller requested escalation | "I need to speak to a manager" — AI triggered escalation but it failed |
| 3 | Quick hangup (under 30 seconds) | Caller hung up almost immediately — likely frustrated or redialing |
| 2 | System failure | AI hung up, call timed out, or answering machine detected |
| 1 | Normal call (30s to 5 min) | Caller talked to AI then hung up — might need follow-up |
| 0 | Long call (5+ min, no escalation) | Full conversation with AI — likely got what they needed |
The Score (24h) column adds up these per-call scores over the last 24 hours.
3+ failed transfers or 4+ escalation attempts. Immediate callback required.
Multiple failed attempts to reach a human. Callback within the hour.
At least one significant failed attempt. Check in when possible.
One routine unresolved call. Monitor, likely OK.
| Column | What it means |
|---|---|
| Caller | Name given to the AI during the call |
| Phone | Caller's phone number (click to dial) |
| Type | employee, customer, prospect, other, or internal_transfer |
| Urgency | Frustration level based on 24h weighted score (see above) |
| Score (24h) | Sum of per-call frustration scores in the last 24 hours |
| Calls (24h) | Number of unresolved calls in the last 24 hours |
| Escalations | How many times they asked to speak to a human (24h) |
| Last Call | How long ago their most recent unresolved call was |
All pressure resets to zero the moment a caller successfully reaches a human via transfer. One successful connection clears the slate. If someone appears on this dashboard, it means nobody has spoken to them yet (or not since their recent calls).
Handles voice calls, records how each call ended (hangup, transfer, timeout), and fires transfer webhook events when a bridge succeeds or fails.
Workflow automation — receives call webhooks, identifies callers, queries pressure data, and passes it to the AI agent in real-time.
Database — stores all call records and runs the pressure detection SQL view that calculates scores on every page refresh.
When a caller rings in, the AI receives their pressure score. Critical/High callers skip triage and go straight to transfer.