Dipak D. Kuthe · Originally published May 30, 2026
Start with one test agent, one approved outbound destination, and one inbound test number. Verify that the agent can sign in, complete each call with two-way audio, and save a disposition before adding more seats or enabling automatic dialing. Record where each test fails so the team can distinguish a campaign problem from a carrier or media problem.
Choose a documented installation path and size the workload
VICIdial manages users, campaigns, inbound groups, leads, dispositions, and reporting. Asterisk handles telephony, including endpoint and carrier call legs. The web interface serves agents and administrators, and the database holds configuration and operational data. Recordings may need separate storage and retention controls. ViciBox is the official VICIdial installation image and documents both single-server and clustered deployments. Choose the stable release listed by the project, read its version-specific installation guide and current security notices, and confirm the OS and bundled components are maintained before exposing any service. The documentation landing page may describe a beta. Match the manual to the actual release. Rocky Linux and older package-by-package walkthroughs are outside this verified deployment path. VICIdial features · Official ViciBox distribution · ViciBox documentation and security notices
If your organization requires Rocky Linux, review the Rocky Linux 9 compatibility and migration options before sizing the host. The assessment covers platform support and migration choices. It does not provide a verified Rocky Linux installation procedure.
Size for peak simultaneous call legs, including outbound attempts and agent connections, plus codec transcoding, recording writes, database load, and network headroom. Confirm carrier channel limits, permitted destinations, and call-rate limits separately. A shared virtualization host or storage system can remain a single point of failure even when application roles run in separate VMs. Use a pilot to set measurable acceptance thresholds for CPU headroom, disk write performance, and call quality before committing to a seat count.
Configure a single-agent pilot
- Carrier: Obtain the carrier’s signaling and media requirements, authentication method, number format, caller ID permissions, and test destinations. Some trunks use outbound registration and others use IP-based authentication. Use a test trunk or a limited route where available. Keep credentials out of tickets and examples.
- Phone and agent: Configure one supported phone or softphone and its VICIdial phone record. Give the test agent a separate user account with access to the pilot campaign. The web agent login and the phone leg serve different purposes. Check both before troubleshooting the trunk.
- Campaign: Start with manual dialing and only approved test numbers. Set the campaign’s permitted users, calling rules, outbound route, and dispositions. Use a test list if required by your release and workflow. Keep predictive dialing and real lead lists disabled until operational and compliance checks are complete.
- Inbound: Map the test DID to the intended inbound group and confirm that the logged-in agent is eligible and ready to receive its calls. Test the no-agent or overflow destination separately. A successful outbound call does not verify inbound routing. VICIdial inbound and outbound features · Asterisk outbound registration
Expected outbound flow: the agent signs in, establishes the phone leg, places one manual test call, checks two-way audio, hangs up, and saves a disposition. Expected inbound flow: the carrier delivers the DID, Asterisk and VICIdial route it to the intended inbound group, and an eligible agent answers and saves the outcome. Verify the resulting report and recording only where recording is approved and enabled.
Separate SIP signaling from the audio path
SIP establishes and manages sessions. RTP carries audio in many deployments. A call can connect successfully even when its media path is broken. Restrict signaling and media to the carrier’s documented sources and destinations and the paths your endpoints require. Keep admin, database, and management services off the public internet where possible. Use appropriate TLS and media encryption where supported by both ends. Check jitter, packet loss, and congestion on the affected call path. Local QoS cannot guarantee prioritization across the public internet.
For PJSIP behind NAT, check the local network definitions, advertised signaling and media addresses, and whether Asterisk should remain in the media path. Verify the actual configured RTP range and firewall policy rather than copying example ports. Remote softphones and WebRTC may need different traversal settings. Asterisk removed chan_sip in version 21. Use the driver and configuration method supported by the installed VICIdial/Asterisk combination, and identify which files the management system generates before changing anything. Asterisk PJSIP NAT guidance · Asterisk chan_sip status
Troubleshoot a call in order
| Symptom | First check | What a passing check establishes |
|---|---|---|
| Agent signs in to the web interface but cannot take calls | Verify campaign permissions, agent readiness, and the phone leg. | The agent can join the intended campaign and their phone can carry the test call. |
| Outbound call fails before answer | Check the dialed format, selected route, and carrier response. For a registration-based PJSIP trunk, verify registration separately. | The carrier accepts the approved test call. Registration alone does not prove this. |
| Test DID rings the wrong group or no agent answers | Check the DID mapping, group eligibility, and fallback behavior. | The intended agent receives the call, and the no-agent case reaches the configured destination. |
| Call connects but audio is one-way | Compare negotiated media addresses with the intended NAT and firewall paths. Use authorized diagnostic data and redact identifiers. | Audio works in both directions on a repeated controlled test. |
On an authorized Asterisk console, these are read-only diagnostics. Use the PJSIP command only on a build with the corresponding module and outbound registration configured. Commands were checked against documentation and were not run against a VICIdial system.
core show version
pjsip show registrations
For an IP-authenticated trunk, absence from the registration list can be expected. Use the carrier response and controlled call outcome to verify service. Asterisk CLI help · Asterisk registration status
Set acceptance criteria and rehearse rollback
Restrict who can edit carriers, export leads, or retrieve recordings. Limit allowed destinations and spend where the carrier supports it. Monitor unusual destinations or call volumes, agent login failures, inbound reachability, database health, disk space, and recording failures. Back up the application database, managed configuration, and recordings required by policy. Protect backup access and test a restore in an isolated network with outbound dialing disabled. Check calling hours, consent, do-not-call, abandoned-call, and recording requirements for the campaign before enabling automation.
Illustrative pilot. CoreSecTech did not deploy VICIdial or run this call test.
A test call connects after a planned network change, but the remote test recipient cannot hear the agent. Pause the pilot and save the timestamp, call identifier, and sanitized signaling and media observations. Compare the advertised media address and approved firewall path with the pre-change baseline. If the change caused the regression, restore the exact previous network or trunk setting through its owning configuration system. Follow the release-specific maintenance procedure if the affected transport needs a restart. Repeat the manual outbound and inbound test calls and verify audio both ways, hangup, disposition, and any approved recording. Keep the campaign paused if those checks fail. If a database or schema change was involved, follow the rehearsed version-matched restore plan and reconcile records created after the backup before reopening service. Office network verification guide