VoIP.info Troubleshooting

Asterisk AMI AbsoluteTimeout fires early, late or on the wrong channel

Find the first divergence across action availability, channel identity, time units, timer policy, T and h dialplan handling, request events and final hangup.

Reviewed 2026-10-25Current branch-23-generated, Asterisk 22 and Certified Asterisk 22.8 AbsoluteTimeout action references, the current TIMEOUT function, special-extension, HangupRequest, SoftHangupRequest, Hangup and AMI v2 references were reviewed October 25, 2026; installed release, manager permission, live channel identity, timer origin and replacement behavior, dialplan ownership, bridge topology, endpoint signaling and downstream workflow remain deployment-specific; no PBX, manager session, action, timer, dialplan, channel, bridge, event stream, endpoint, packet, media stream or live call was inspected or testedAdvancedDocumentation based · not lab tested

Freeze one timer request and symptom

Record node, release, manager identity, ActionID, Channel, Uniqueid, Linkedid, bridge peers, channel creation time, action time, timeout value and unit, raw response, observed request and hangup events, context, extension, priority and synchronized timestamps.

Classify the symptom as unknown or denied action, wrong or vanished channel, early termination, late termination, no termination, wrong dialplan path, other leg surviving unexpectedly or final event missing. Do not combine several calls into one timeline.

Confirm availability, permission and channel lifetime first

Check the running AMI action inventory, installed branch and manager write authority. Resolve the channel again immediately before sending the action and require the same Uniqueid; a reused channel label, transferred leg, Local-channel optimization or completed call invalidates a stale target.

An unknown action, denied request or missing channel is not a timer-precision defect. Keep least privilege and do not substitute broad CLI command authority for a missing action permission.

Normalize seconds and competing timeout owners

AbsoluteTimeout documents seconds. Compare that field with the dialplan TIMEOUT(absolute), Dial or Originate timing, queue, bridge, endpoint, carrier and application limits without assuming they share units or start points. Record which component ended the channel first.

The action page does not specify a remaining-time query or replacement semantics. If multiple writers set a lifetime, preserve their order and raw values, then reproduce only on a disposable call rather than guessing from the final duration.

Trace T, h and handler execution in the loaded dialplan

Inspect the exact context loaded for the target channel. Uppercase T handles absolute-timeout expiry, lowercase t handles response timeout, and h performs cleanup after hangup. Reconcile generated FreePBX ownership before editing Asterisk files directly.

A correct timeout can appear late when cleanup blocks, or appear absent when the expected T extension is not in the channel's context. Preserve NewExten and hangup-handler events where available, but do not treat missing filtered events as proof that code did not run.

Correlate request events with final Hangup

Match HangupRequest or SoftHangupRequest and final Hangup by exact Uniqueid, not caller ID or Linkedid alone. Preserve cause, cause text, technology cause and event-filter state. A request can precede cleanup; final disposal is the later channel boundary.

Then inspect every bridge peer. Ending the timed channel does not guarantee that a transferred, masqueraded, Local or other linked leg ended, and a surviving peer does not prove the timer missed its target.

Retest one bounded correction and stop

Correct only the first demonstrated cause: target identity, permission, unit conversion, competing writer, dialplan ownership, event visibility or blocking cleanup. Retest one disposable call with synchronized clocks and a safe timeout, then compare the same evidence tuple.

Do not shorten active production calls, loop timer actions or claim precision from one wall-clock observation. No PBX, manager action, timer, dialplan, channel, bridge, event stream, endpoint, packet, media stream or live call was inspected or tested.

Sources & applicability

Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.

Examples require adaptation to your topology. No live PBX or hardware testing is claimed.