Freeze one node, transaction and contradiction
Record node, build, process start context, loaded fax modules, manager identity, action, ActionID, response, every matching event, list completion, session number, channel identifiers, dialplan application, filename, terminal variables and the first contradictory timestamp.
Classify the symptom as unknown action, denied action, incomplete list, empty completed list, vanished session, detail-action failure, conditional field absent, counter mismatch, missing progress event or disagreement with a terminal application result. Do not merge several sessions or restarts into one incident.
Prove module and action support before interpreting data
Confirm res_fax and the intended fax technology module are loaded for the exact responding process, and inventory the manager commands visible to the authenticated identity. FAXSession can fail when the technology used by that session has no handler even though fax transmission itself exists.
If the action is absent or denied, repair module availability or authorization first. Do not infer session failure from an unsupported observation surface.
Repeat a bounded completed active-session list
Run FAXSessions with a fresh ActionID, retain every FAXSessionsEntry, wait for the matching FAXSessionsComplete, and compare Total with the retained row count. Capture while the target fax is demonstrably in progress and repeat at a documented interval.
A fax can finish between the dialplan, progress-event and inventory samples. An empty completed list after completion is not stale; a list without its completion event is not a trustworthy zero.
Resolve session identity and conditional detail fields
Use the numerical SessionNumber from the list or an established FAXOPT(sessionid) join for FAXSession. Keep it separate from channel name, Uniqueid, Linkedid and filename. Compare operation and state before requiring optional fields: technology, operation and lifecycle state determine which details can appear.
Treat changing page counts and state as snapshots. A filename or session match does not prove that the TIFF/F artifact is readable or that notification and delivery completed.
Reconcile statistics inside one process lifetime
Sample FAXStats before and after one authorized test, retaining CurrentSessions, ReservedSessions, TransmitAttempts, ReceiveAttempts, CompletedFAXes and FailedFAXes with process identity and timestamps. Compare deltas only when no unrelated fax traffic or restart invalidates attribution.
Counters and an active-session list observe different scopes and moments. A session can leave the list and increment a terminal counter; cumulative counts can also include other traffic. Use terminal FAXSTATUS, FAXERROR, pages, rate, resolution and mode for the individual dialplan result.
Repair the first owner and verify the full boundary
Correct only the demonstrated owner: module support, AMI authorization, event filtering, collector list completion, sampling window, identifier join, dialplan result handling, TIFF/F storage or notification pipeline. Re-run one bounded transaction and retain both runtime and terminal observations.
Verify file readability and downstream delivery separately when required, then remove test artifacts under the owning system policy. No PBX, module, manager session, fax session, TIFF/F file, notification, packet, media stream or document delivery was inspected or tested.
Sources & applicability
Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.
- Asterisk FAXSession AMI action ↗
- Asterisk FAXSessions AMI action ↗
- Asterisk FAXStats AMI action ↗
- Asterisk FAXSession AMI event ↗
- Asterisk FAXSessionsEntry AMI event ↗
- Asterisk FAXSessionsComplete AMI event ↗
- Asterisk FAXStats AMI event ↗
- Asterisk FAXStatus AMI event ↗
- Asterisk ReceiveFAX dialplan application ↗
- Asterisk SendFAX dialplan application ↗
- Asterisk FAXOPT dialplan function ↗
- Asterisk AMI v2 specification ↗
- Asterisk network security guidance ↗
Examples require adaptation to your topology. No live PBX or hardware testing is claimed.