Troubleshooting
Start here: did the call reach us?
Almost every telephony problem splits on one question — is there a row in the call log?
Open Integrations → Exotel → View Call Logs and look for the call by time.
| What it means | Where to look | |
|---|---|---|
| No row at all | The call never got as far as a call record | Calls that don’t arrive |
Row exists, No Answer or Ringing | The call arrived but no agent picked up | Calls that arrive but aren’t answered |
Row exists, Completed | The call worked; the conversation was the problem | The agent answered but behaved wrongly |
Filter by the number and set both date fields to today. Far quicker than paging through everything.
Calls that don’t arrive
No call-log row means the call was stopped before a record was opened. Four causes, in the order worth checking.
The number is suspended
Check its status badge. Suspended means the monthly rental couldn’t be charged, and incoming calls are being rejected. Nothing about the agent or the routing is wrong.
Add credits and it reactivates on the next daily run. See Billing & suspension.
An access mode is blocking the caller
If the number is Authorized Only, only whitelisted numbers get through, and rejections leave no trace in the log.
Check the Authorized Callers panel actually contains the caller. Remember each number has its own list.
Authorized Only with an empty whitelist rejects everyone. If you switched a working number to Authorized Only and calls stopped immediately, this is why.
No agent is attached
A number with Not attached under Agent has nothing to route a call to. See Connect an agent.
Call routing was never configured
Attaching an agent both records the binding and registers call routing with the provider. If routing wasn’t registered the number won’t receive anything, even though it looks attached.
This shouldn’t happen any more — attach now fails and rolls back if routing can’t be configured, so you’d have seen an error rather than a success. But a number attached before that change could be in this state.
The fix either way is the same: detach the agent and attach it again. If routing can’t be registered you’ll be told so explicitly.
Calls that arrive but aren’t answered
A row exists but reads No Answer, or sits at Ringing, with duration 0:00.
The caller hung up
The most common cause, and not a fault. No Answer with a very short gap between Started and Ended means the caller gave up during ring.
If it’s happening a lot, the agent may be slow to pick up — check the voice pipeline settings in Voice configuration.
The attached agent has no voice mode
An agent can be attached without Voice enabled — the attach dialog badges it No voice mode rather than blocking you. It won’t handle a call.
Enable Voice on the agent, publish it, redeploy, and re-attach.
The agent isn’t running
The number points at an agent inside a deployment. If that deployment isn’t active, there’s nothing to answer. Check it under Deployments.
It’s still settling
A call can read Ringing for a few minutes before its outcome is confirmed. A reconciliation sweep runs every ten minutes. If it’s been longer than that, it’s genuinely abandoned.
The agent answered but behaved wrongly
The call completed, so telephony did its job — the problem is in the conversation.
Open the call and click View run. That gives you the full execution trace: what the agent decided, which tools it called, what came back. Nearly every “the agent said the wrong thing” question is answered there. For the wider view — every run across the deployment rather than this one call — see Deployments → Monitoring.
Two telephony-specific causes worth ruling out:
The caller got the wrong permissions
If the agent couldn’t see data it should have, or saw data it shouldn’t, the caller resolved to an identity you didn’t expect.
Check whether the number has a service account, and what its telephony-caller role actually grants — that role is created empty, so an account can exist and still reach nothing. See Caller identity.
A known caller wasn’t recognised
The caller’s number has to match a user registered in the project. Matching compares the last ten digits, so formatting isn’t the problem — a different handset is.
Number states
Stuck on Provisioning
Should take seconds. If it persists, check the Connection Status card on the Exotel page — if the provider is unreachable, provisioning can’t complete.
Stuck on Releasing
The provider call didn’t complete. It’ll be retried. If it stays for more than a few hours, raise it with support — and don’t provision a replacement in the meantime, in case it resolves.
Error
The card shows the reason. Most often a provider-side rejection during provisioning or attach.
Things that are working as designed
Worth knowing so you don’t go hunting:
- No call recordings. Audio is bridged live and never stored. The run trace is the record of what happened.
- Rejected calls leave no log row. Access-mode blocks happen before a record is opened.
- Numbers can’t be renamed. The friendly name is set once, at provisioning.
- You’ll rarely see Busy, Failed or Cancelled. The provider doesn’t distinguish them; abandoned calls surface as No Answer.
- No email when a number is suspended. The in-app warning is the only notification.
- Unattached numbers still bill. Detaching stops calls, not charges.
Getting help
Have these to hand:
- The Call SID from the call’s detail panel — the provider’s own identifier for the call.
- The Provider Number ID from the number’s detail page.
- The time of the call, with timezone.
- What the caller heard, and what you expected.