Asterisk · migration
Monitoring or whisper breaks after PJSIP migration
Listen, whisper, or barge functions stop working after moving from chan_sip to PJSIP.
Source and affected scope
- Listen, whisper or barge differs after a PJSIP migration; actual monitoring architecture varies.
Before you start
- Authorized isolated lab and consenting test participants; record server/build and before-state.
- Never publish real phone numbers, network addresses, credentials, call audio or database rows.
- Only conduct monitoring with authorization and the informed consent required for all test participants.
Diagnose the reported problem
Step 1Identify the implementation and target
Record VICIdial/Asterisk versions, actual conference engine, supervisor mode and exact agent channel during a consented synthetic call. Inspect CLI help and active channels; do not assume monitoring joins the agent’s conference.
Find the actual dialplan or manager action used by the installed monitoring path and compare its channel selector and options with the installed version. ChanSpy is one possible implementation, not a claim that every VICIdial build uses it.
- Before you use it
- Run only on an authorized isolated lab or approved read-only diagnostic session; substitute placeholders. Preserve sensitive data privately.
Identify the implementation and target asterisk -rx 'core show channels concise'asterisk -rx 'core show application ChanSpy'Reader-run example · not executed for this guideThis example has no recorded result here. Follow its preparation, expected result and stop conditions before using it.
- Success looks like
- The supervisor action, agent channel name (for example PJSIP/test-agent-00000001) and selected target can be correlated.
- Stop if
- If the target is not established, do not guess a channel prefix or enable barge.
- Expected observation
- The supervisor action, agent channel name (for example PJSIP/test-agent-00000001) and selected target can be correlated.
- If this check fails
- If the target is not established, do not guess a channel prefix or enable barge.
Step 2Separate listening, whisper and barge
With all three participants consenting, make one mode selection at a time and use distinct test phrases. Record who actually hears each phrase and whether the target channel remains active.
A fictional result where the supervisor hears both parties but the agent does not hear a whisper points toward the action/target/mode path; it does not prove a specific PJSIP defect.
- Expected observation
- Mode and observed audience are recorded separately.
- If this check fails
- Unexpected audience: stop immediately and do not repeat until permissions and topology are checked.
Correct the confirmed cause
Use this branch only when your diagnostic observations match the affected scope above. The lab result states which outcomes were actually tested.
Step 3Fix the verified selection or option
Have the authorized owner correct only the observed channel selector, installed monitoring configuration or permission mismatch; record old values first.
- Expected observation
- The selected mode targets the intended live synthetic agent channel.
- If this check fails
- Do not replace a production dialplan or switch conference engines to force a result.
Verify the outcome
- Repeat listen, whisper and barge separately under consent; verify the intended and unintended audience for each and compare with the baseline.
Recover or roll back
- Restore the recorded configuration and permissions using the approved workflow; verify the old behavior and retain non-sensitive test notes.
Screenshot evidence
No native screenshot is attached to this guide.
- Asterisk ChanSpy application · Primary documentation; checked 2026-11-07
Actions to avoid
Do not mix chan_sip and PJSIP fixes or migrate a live cluster without a rollback test.