VoIP.info Troubleshooting

Asterisk AMI Monitor action is missing or its recording file is wrong

Find the first divergence across Asterisk version, res_monitor availability, manager authority, channel identity, rename and pause state, stop ordering, mixing, storage and decoded audio.

Reviewed 2026-10-25Asterisk 20 Monitor, ChangeMonitor, PauseMonitor, UnpauseMonitor and StopMonitor AMI action references, the Asterisk 20 Monitor application, the Asterisk 21 removal notice, and current branch-23-generated MixMonitor, StopMixMonitor and CoreShowChannel references were reviewed October 25, 2026; res_monitor was deprecated in Asterisk 16 and removed in Asterisk 21, so legacy Monitor actions must not be represented as current-branch capabilities; installed release, vendor patches, loaded modules, action inventory, manager permissions, exact channel identity, monitor directory, filenames, formats, file ownership, storage, mix command, audio contents, retention and generated FreePBX dialplan remain deployment-specific; no PBX, module, manager account, action, channel, file, packet, recording, processor, endpoint or live call was inspected or testedAdvancedDocumentation based · not lab tested

Freeze one legacy action and one file symptom

Record node, full Asterisk version, package source, loaded res_monitor state, manager identity and permissions, action inventory, ActionID, exact Channel, Uniqueid, Linkedid, bridge, request, response, File, Format, Mix, monitor directory and synchronized timestamps. Preserve ChangeMonitor, PauseMonitor, UnpauseMonitor and StopMonitor attempts in order.

Classify the first symptom as unknown action, denied action, wrong or vanished channel, already monitored, file-open failure, wrong name, missing interval, resume failure, stop mismatch, raw legs not mixed, mixed target missing, file still open, decode failure or wrong audio. Do not collapse these boundaries into “recording failed.”

Stop when the version explains the missing action

Asterisk 21 removed res_monitor after its earlier deprecation, so Monitor-family actions should not be expected there or on later current branches. If the exact running version is 21 or later and the action inventory lacks Monitor, this is a migration requirement rather than a module-repair task.

Do not download an old module, widen AMI permissions or force-load an ABI-mismatched binary. Move the workflow to documented MixMonitor controls and validate the replacement against the installed branch and application owner.

On Asterisk 20 or earlier, prove module, authority and target

If the node is actually on a supporting legacy branch, confirm res_monitor is loaded, the exact action is present and the manager identity has only the required write authority. Resolve the channel again immediately before the request and require the expected Uniqueid.

An unknown action belongs to availability; a permission error belongs to authorization; a missing or replaced channel belongs to identity. Correct that first divergence before changing directories, codecs or mix commands. Never substitute broad AMI Command access for a missing dedicated action.

Reconstruct rename, pause, resume and stop order

Match every lifecycle request and response by ActionID and timestamp. Confirm ChangeMonitor named the intended active channel and safe new base, PauseMonitor preceded the expected gap, UnpauseMonitor targeted the same live session, and StopMonitor ended that session before file inspection.

A channel transfer, Local optimization, hangup or replacement can end the original monitor while the business call continues. A response alone does not prove that a new filename exists, that paused media is absent, that resume wrote frames or that the stopped file is closed and durable.

Inspect raw legs, mixer and final artifact separately

Preserve actual directory listings, owners, permissions, free space, open handles, raw leg names, target name, sizes, checksums, format probe, duration and decode result. If Mix was enabled, establish whether the built-in mixer or MONITOR_EXEC was selected, when it ran, its arguments, exit result and raw-file cleanup.

A missing mixed target can follow a mixer or path failure even when raw legs exist. A nonzero target can still contain the wrong leg, interval or participants. File presence, successful decoding and authorized listening are separate evidence and none alone proves retention or compliance.

Repair the earliest proved boundary and retest migration

On a supported legacy node, correct only the demonstrated permission, module, channel, filename, directory, storage, ordering or mixer fault and repeat one disposable authorized call. On Asterisk 21 or later, implement and test the documented MixMonitor lifecycle instead of recreating removed res_monitor behavior.

Include one transfer and one policy-negative case. Do not test on sensitive production calls or claim compatibility from documentation alone. No PBX, module, manager account, action, channel, file, packet, recording, processor, endpoint 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.