Freeze the release, driver and failed request
Record node, exact Asterisk branch and maintenance release, package or build provenance, upgrade path, loaded SIP modules, configuration owner, AMI user, ActionID, raw request and response, and the first changed timestamp. Classify the symptom as unknown action, denied action, empty legacy list, missing peer detail, stale registry view, collector parse failure, absent PJSIP object or call behavior that differs after migration.
Do not start by recreating a legacy action name. First establish whether the upgraded release can contain chan_sip at all.
Apply the documented removal boundary
chan_sip was deprecated in Asterisk 17 and removed in 21. The legacy SIPpeers, SIPshowpeer, SIPpeerstatus and SIPshowregistry pages are generated from Asterisk 20, not the current branch. On 21 or later, their absence is expected unless the product has made a separately documented downstream change.
On 20 or earlier, distinguish module not built, module not loaded, configuration failure and AMI authorization from a genuinely empty peer inventory. ListCommands shows what the authenticated manager user can invoke; it is not a package inventory.
Validate the old snapshot only where chan_sip exists
Where chan_sip is supported and loaded, issue SIPpeers with a unique ActionID, collect every Peerlist row and require PeerlistComplete before declaring the inventory empty or complete. Use SIPshowpeer only for one exact Peer; keep its text-format response separate from the list transaction.
If rows arrive without completion, or a collector loses framing, report an incomplete observation. Do not convert socket quiet or one missing row into proof that the peer disappeared.
Rebuild the operational question on PJSIP
Inventory current endpoints with PJSIPShowEndpoints, then inspect the specific endpoint, AoR, contacts, authentication, identify rule, transport and registration objects needed for the symptom. Preserve the completion boundary for each event list and keep endpoint configuration separate from contact reachability and registration state.
A legacy peer name may map to several PJSIP objects or to no direct equivalent. Compare intent, matching rules and relationships rather than copying a display label or a text field.
Review conversion output and effective ownership
If sip_to_pjsip.py was used, capture its source directory, included files, version, options, output and warnings. Compare the candidate output with the generated or hand-owned configuration actually loaded by Asterisk or FreePBX. The conversion helper is a starting point, not evidence that authentication, NAT, transports, inbound matching or outbound registration is correct.
Respect the configuration owner. On a GUI-managed PBX, repair the supported object model and regenerate through its normal workflow rather than editing generated files as an undocumented shortcut.
Repair the first demonstrated boundary and retest narrowly
Correct only the proved boundary: unsupported legacy integration, missing module on a supported release, AMI permissions, collector framing, configuration conversion, endpoint relationships, registration, identify matching, transport or routing. Repeat the exact inventory and detail checks on the same node and record their completion boundaries.
In an authorized maintenance window, validate registration, one inbound route, one outbound route, identity handling, answer, two-way audio and release as separate outcomes. No system, migration, endpoint, registration or call was tested for this diagnostic.
Sources & applicability
Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.
- Asterisk 20 SIPpeers AMI action ↗
- Asterisk 20 SIPshowpeer AMI action ↗
- Asterisk 20 SIPpeerstatus AMI action ↗
- Asterisk 20 SIPshowregistry AMI action ↗
- Asterisk chan_sip configuration status ↗
- Asterisk 21 changes ↗
- Asterisk module deprecations ↗
- Asterisk chan_sip to res_pjsip migration ↗
- Asterisk PJSIPShowEndpoints AMI action ↗
- Asterisk ListCommands AMI action ↗
- Asterisk AMI v2 specification ↗
- Asterisk network security guidance ↗
Examples require adaptation to your topology. No live PBX or hardware testing is claimed.