Back to Blog
migrate from asterisk

How to Migrate From Asterisk: A Phased Enterprise Plan

A phased plan to migrate from Asterisk: when to move, what to back up, how to convert dialplans, trunks and AGI/AMI logic, and how to cut over with rollback.

How to Migrate From Asterisk: A Phased Enterprise Plan

An enterprise should migrate from Asterisk when the platform no longer meets operational requirements, when its release series approaches end of life, or when integration and scaling work consumes more engineering time than the customer experience justifies. The safest method is a phased migration: inventory and back up the system, map each function to the destination, convert dialplan logic and integrations, test in parallel with the live system, and cut over in waves with a tested rollback path.

This guide sets out that sequence for IT, operations and customer experience leaders, including the decisions that most often determine whether a cutover is uneventful or disruptive.

Voiceracx
Plan Your Next Contact Center
Explore how VOICERAcx automates voice and digital conversations while integrating with your CRM, telephony, and existing business systems.

TL;DR

  • Decide on architecture, not fashion. Migrate when scaling, integration or support burden justifies it, or when your Asterisk series is no longer maintained.
  • Inventory and back up first. Configuration, the internal database, other databases and logs must be captured before any change.
  • Convert by function. Separate identity, routing, services, media, devices and operations, and assign an owner and test method to each.
  • Cut over in waves. Keep the source live, test with low-risk users, and retain a fallback until each wave is verified.
  • Retire Asterisk last. Decommission only after stable operation, verified integrations and retained records.

When migration is justified

Migration is a business decision before it is a technical one. Asterisk release series reach end of life on a published schedule, after which they receive neither bug fixes nor security patches; the official Asterisk versions page lists which series are currently supported and alternates between standard and Long Term Support releases. A system running an unsupported series carries a security and compliance exposure that is difficult to defend in a regulated environment.

Support status is only one trigger. Teams commonly reach a decision point when the following conditions accumulate:

  • Engineers spend growing time configuring CRM integrations, call routing and complex IVR scenarios, a pattern described in a vendor migration case study that also notes that moving to a managed platform can shift installation administration, monitoring and third-line support away from the internal team.
  • Channel volume is growing and the business needs WhatsApp, SMS, email and web conversations handled alongside voice, which a telephony-centric dialplan was not designed to coordinate.
  • Auditability requirements demand role-based access control, centralized recording and analytics, and documented governance that custom scripts do not provide.
  • Dependence on one or two engineers who understand the dialplan has become an operational risk.

The opposite case deserves equal honesty. One engineering team cautions that if Asterisk already satisfies requirements, a migration can add substantial risk without commensurate customer value, and that evaluation should weigh workload, media needs, queues, IVR, APIs, existing skills and rewrite cost. If a version upgrade resolves the problem, upgrade. If the problem is the architecture, migrate.

Choose the destination by type

Asterisk deployments are migrated to four broad kinds of destination, and each implies a different amount of rework.

Destination type Best suited to Principal migration effort
Another open-source telephony engine Teams with strong in-house VoIP skills that want to keep self-hosting Rewriting dialplan logic and re-implementing AGI and AMI integrations
Hosted business PBX Organizations needing extensions, voicemail and basic queues with minimal administration Rebuilding users, devices and call flows; limited custom logic
Cloud contact center platform Operations that run queues, IVR, recording and CRM-driven routing at scale Mapping routing and IVR logic; integrating CRM and telephony
AI-native omnichannel platform Enterprises automating service, sales and collections across voice and digital channels Redesigning conversation flows; connecting CRM, telephony and governance controls

Consultants who handle these projects advise that migration should be used to remove accumulated complexity instead of replicating every legacy quirk. That advice applies to every destination type: a dialplan that grew for fifteen years rarely needs to be reproduced line by line.

Inventory and back up before any change

The first working phase produces two artifacts: a complete inventory and a verified backup.

The Asterisk backup guidance identifies what to preserve: the Asterisk configuration, its internal database, any other databases it uses, and its logs and reports. Treat that list as the minimum. A practical inventory for an enterprise also records:

  1. Identity: extensions, users, voicemail boxes, authentication credentials and role assignments.
  2. Routing: inbound routes by dialed number, time conditions, queues, ring groups, and any failover logic.
  3. Services: IVR menus, voicemail-to-email, conferencing, call recording, paging and any feature codes.
  4. Media: codecs in use, transcoding, fax or T.38 requirements, music on hold and recorded prompts.
  5. Devices and trunks: desk phones, softphones, gateways, SIP trunks, carrier IP allow lists and registration details.
  6. Integrations: every AGI script, AMI client, ARI application, database lookup and CRM connector, with the owner of each.
  7. Operations: monitoring, alerting, log retention, reporting and the call recordings subject to retention rules.

One published migration approach separates identity, routing, services, media, devices and operations, with an owner and a test method for each before cutover. Adopting that structure turns an undifferentiated project into a checklist that can be assigned and audited.

Restore the backup onto a spare host before relying on it. A backup that has never been restored is an assumption, not a safeguard. Record the Asterisk version, the modules loaded and the SIP driver in use, because those facts determine how much conversion is required.

Migrating dialplans, extensions and trunks

Check the SIP driver first

The legacy chan_sip driver was deprecated in Asterisk 17, released in October 2019, and removed in Asterisk 21; PJSIP is the standard SIP driver. If your system still runs on sip.conf, the SIP configuration must be rewritten regardless of destination. Asterisk ships a conversion script, sip_to_pjsip.py, which provides a basic conversion and is intended as a starting example, not a guarantee for every configuration. Review its output manually, especially authentication, NAT settings and trunk registration.

Extensions and users

Export users and extensions into a neutral format such as CSV or JSON, with the extension number, display name, voicemail settings, device type and group memberships. Import into the destination in bulk where the platform supports it. Preserve extension numbers during the first waves; renumbering users during a platform change multiplies support calls.

Dialplan logic

Dialplan code in extensions.conf mixes several concerns: number matching, business rules, queue entry and data lookups. Convert it by function, not by syntax:

  • Number matching and normalization: document the dialing patterns, then recreate them as destination-native rules.
  • Time-based routing: capture business hours, holidays and overrides as data, and verify time zone handling.
  • Queues and agent logic: map skills, priorities, wrap-up times, overflow and announcements.
  • IVR menus: redraw each menu as a flow diagram, remove unused branches, and rebuild. Our guidance on IVR design practice covers weekly iteration, and the comparison of IVA versus IVR helps determine which menus should become conversational.
  • Routing rules: where routing depends on customer data, evaluate intelligent call routing instead of reproducing static priority tables.

Trunks and numbers

SIP trunks are usually the lowest-risk element technically and the highest-risk operationally, because number porting and carrier configuration involve third parties with their own lead times. Confirm with each carrier the authentication method, the permitted source IP addresses, the codec list and the emergency calling requirements. Where possible, add the new platform as an additional destination for a small set of test numbers instead of moving the main numbers first.

AGI, AMI and ARI integrations

These interfaces are where most custom effort resides. The Asterisk documentation describes AGI as a synchronous interface between the dialplan and an external program, and AMI as an asynchronous, event-driven interface that reports channel state and controls where channels execute. The destination will not expose identical interfaces, so each integration needs a decision:

Existing integration Typical replacement
AGI script performing a CRM or database lookup Native CRM connector or an API call inside the flow
AMI listener feeding a wallboard or screen pop Platform events, webhooks or an agent desktop with CRM integration
Click-to-call through AMI Originate Telephony integration inside the CRM or agent desktop
Outbound campaigns driven by scripts A managed dialer with consent, calling-window and detection controls

For CRM-embedded telephony, review dependencies carefully: some CRM vendors are retiring older computer telephony integration frameworks, as covered in our note on moving off Open CTI. For outbound, see the guidance on compliant outbound dialing strategy and answering machine detection.

Execute the cutover in phases

A wave-based approach limits the blast radius of any defect. A published six-phase playbook recommends starting with low-risk test users, then production departments, main lines, and finally critical emergency (E911) routes. The same source describes parallel testing, in which the source platform stays live while teams test calls and integrations, with fallback to the source system if a wave fails. Another practitioner summary holds that validation before the switch defines success, and that incremental movement is the key to stability.

A workable wave plan for an enterprise:

  1. Wave 0, internal pilot: the project team and a few volunteers use the new platform daily on test numbers.
  2. Wave 1, low-risk department: a team whose calls are not revenue-critical, such as internal support.
  3. Wave 2, production departments: queues and IVR flows for primary customer-facing groups, during a low-volume window.
  4. Wave 3, main numbers: the published numbers of the business, after carrier readiness is confirmed.
  5. Wave 4, emergency and special routes: emergency calling and any regulated routes, verified against the requirements that apply in each jurisdiction.

Set exit criteria for each wave in advance: call completion rate, audio quality, integration success rate, and the number of open defects. Do not start the next wave until the current one meets them.

Test, secure and prepare rollback

What to test

  • Call paths: every inbound number, every IVR option, every queue overflow, after-hours and holiday behavior.
  • Media: codec negotiation, one-way audio, DTMF recognition, fax and recording quality.
  • Integrations: CRM screen pops, record creation, call logging, authentication failures and timeouts. Test failure modes deliberately, such as a CRM outage, because that is when fallback logic matters.
  • Load: peak concurrent calls and chat sessions, including simultaneous outbound campaigns.
  • Recording and reporting: confirm recordings are stored, searchable and retained according to policy, and that reports reconcile with the source system.

Security and governance verification

Confirm that administrative access follows role-based access control, that credentials are unique and rotated, that SIP signaling and media are encrypted where the carrier supports it, and that administrative actions are logged. Check data residency and retention against your regulatory obligations, and consult your compliance or legal team for requirements specific to your sector, particularly for payment card data and call recording consent, which vary by jurisdiction.

Rollback

A rollback plan is a tested procedure, not an intention. Keep Asterisk running and unchanged throughout the waves. Document how to point numbers or trunks back to it, who authorizes the decision, the maximum time the rollback takes, and how calls and records created on the new platform are reconciled. Rehearse it once before the main numbers move. Teams that skip parallel testing under deadline pressure are the ones that discover their failure modes in production.

Common migration problems and how to prevent them

Problem Prevention
Undocumented dialplan behavior discovered after cutover Trace live calls and review logs before design; interview the people who maintain the system
Integrations that depended on AGI or AMI stop working Inventory every script and assign a replacement and an owner
Number porting delays Start carrier requests early and use test numbers during the pilot
One-way audio or DTMF failures Test codecs, NAT and DTMF mode with every device type in Wave 0
Loss of call history and recordings Export and archive records before decommissioning; verify retention
Replicating legacy complexity Redesign flows during the migration and retire unused branches
Staff not trained Train agents and supervisors on the new desktop before their wave

Our perspective

We see Asterisk migrations succeed when the project is framed as a move from a telephony system to a customer engagement platform, not as a like-for-like replacement of a PBX. Voice is rarely the only channel an enterprise must serve; WhatsApp, SMS, email and web conversations arrive in the same customer journey, and a dialplan was not built to coordinate them.

Our perspective

VOICERAcx is designed for that outcome. It offers unified omnichannel automation with natural AI conversation, no-code agent setup, and integration with CRM, telephony and existing business systems, so that AGI and AMI logic can be replaced by governed integrations in place of custom scripts. For regulated organizations, we offer cloud, private cloud and on-premise deployment, which keeps data control in the hands of the enterprise and supports compliance and auditability requirements throughout the migration and after it.

Our recommendation is consistent: migrate in waves, keep the source live until each wave is verified, and use the migration to simplify routing and IVR design rather than carry its history forward.

— Voiceracx

Where VOICERAcx fits in an Asterisk migration

Enterprises replacing Asterisk-based service operations can use AI Voice Agents and AI Chat Agents to take over the IVR and routine inquiry handling that dialplans and AGI scripts previously managed, and Vee Enterprise for deployments that require governance and private or on-premise control.

Voiceracx

For teams that want to evaluate before committing, published self-serve plans include a Free plan at $0 per month, Basic at $199 per month, Standard at $249 per month, Advance at $399 per month and Pro at $999 per month, along with a Pay As You Go option and a chat session fee of $0.18 per chat session. Outbound campaigns that previously ran on scripts can move to Vee Dialer.

After cutover: stabilize and retire Asterisk

Decommissioning is the final phase and should be a decision with documented evidence, not a date on a plan. Retire the old system only when the new platform has run through at least one full business cycle, including peak periods and month-end processes, with integrations verified and no open severity-one defects. Confirm that call recordings, logs and reports have been archived according to your retention policy, and that carriers and number registrations no longer reference the old system.

Five checks before retiring the old system

Operational readiness also covers the surrounding network and carrier services: resilient connectivity, backup links and a clear support model. Organizations that need to review business VoIP telephony and connectivity alongside the platform change can address both in the same project plan. Keep a final snapshot of the Asterisk configuration and database in secure storage for the period your audit requirements specify, then power down the host.

FAQ

How long does it take to migrate from Asterisk?

Duration depends on the number of integrations, queues and IVR flows, not on the number of extensions. A simple extension-and-trunk system can move in weeks, while an environment with many AGI scripts, CRM integrations and carrier ports needs a longer, wave-based schedule. Plan the timeline from the inventory, and add time for number porting.

Can we migrate without downtime?

Yes, when the source system stays live while the new platform is tested in parallel and numbers move in waves. Each wave needs defined exit criteria and a rehearsed fallback to the source system. Residual risk is concentrated at the moment numbers are repointed, so schedule that during a low-volume window.

Do we need to replace chan_sip before migrating?

If you are moving off Asterisk, the destination will use its own configuration, but the sip.conf settings still document your trunks, devices and authentication. Chan_sip was removed in Asterisk 21, so any upgrade path inside Asterisk requires PJSIP. Use your existing configuration as the source of truth for the inventory.

What should we back up before starting?

Back up the Asterisk configuration, the internal database, any other databases it uses, and its logs and reports, as the official backup guidance describes. Add call recordings, prompts and custom scripts. Restore the backup to a test host to confirm it works.

What replaces AGI and AMI integrations?

On a modern platform, native CRM connectors, APIs and webhooks replace most AGI lookups and AMI listeners. Each script should be mapped to a replacement and an owner during the inventory phase. Retire scripts that no longer serve a business purpose rather than rebuilding them.

Sources