Call details
Click any row in the Calls list and you land here: one call, every number the system stored about it, split into panels. The example is the demo call #3254795 (device 1010 → a German mobile number, answered, 12 seconds).
This page is limited to admin and accountant — a reseller, partner or customer never sees it, even for a call of their own. Everything else in this section (the Calls list, Active Calls, Statistics) is visible more broadly; call‑by‑call detail is not.
General
The raw facts of the call: source and destination number, the resolved destination (flag + country/network name), Status (ANSWERED / NO ANSWER / BUSY / FAILED…) and the numeric Hangupcause. Duration is the whole call including ringing; Billsec is only the billed, connected part — the two differ on every call that rang before being answered.
Originator (customer) & Terminator (provider)
Two mirrored panels: what the customer was charged, and what the provider (carrier) charged the operator for terminating the call.
| Field | Meaning |
|---|---|
User Rate / Provider Rate | The per‑minute (or per‑increment) rate that applied, from the customer's tariff and the provider's tariff respectively. |
User Price | What this call cost the customer — the number that hits their balance/invoice. |
Provider Price | What this call cost the operator to buy from the provider — the self‑cost. |
Reseller panel | Filled in only when a reseller's own customer made the call — their rate and price sit between the user's and the provider's. |
DID panel | Filled in only for inbound calls to a DID: the number, a forwarded‑call DID if the call was redirected, and the three DID‑specific prices. |
Attempts (cause routing)
If the routing engine had to try more than one provider — the first was busy, unreachable, or rejected the call — every attempt is listed here, one row per dial leg, in order.
| Column | Meaning |
|---|---|
Provider | Which carrier this attempt was sent to. |
DIALSTATUS | Asterisk's own outcome for that leg (e.g. ANSWER, BUSY, CONGESTION). |
Q.850 | The hangup cause of that specific attempt, by name — see Hangup causes explained. |
Rule / Decision | Which routing rule fired and what it decided (skip to the next provider, stop, etc.) — this is the cause‑routing engine's own reasoning, useful when a call "should have" gone to a different carrier. |
SIPCHANINFO, PCAP and call log
Further down: a SIPCHANINFO panel (SIP‑From, URI, User‑Agent, P‑Asserted‑Identity, T.38 passthrough…), a PCAP / SIP ladder card that can capture the SIP message flow for a call still within Asterisk's rotating capture window, and a Call log card that can pull the matching trace from the Asterisk log while it hasn't rotated away yet. All three are diagnostic — useful when troubleshooting one specific call, not needed for everyday billing questions.
Most SIPCHANINFO fields read as a dash for a call routed purely through PJSIP endpoints without a proxy hop in between — that is expected, not missing data.
Check
For a call that "shouldn't have cost that much", compare User Price against User Rate × billed time first; for "why did it fail", read Hangupcause and, if there is more than one row in Attempts, each attempt's own Q.850 and Decision in order.