All docs

Troubleshooting common issues

First-aid for the dozen problems we see most. SIP audio, hung campaigns, agent login loops.

Hit the symptom that matches yours.

"Calls connect, but no audio one or both directions"

90% of the time it's NAT/RTP firewall. Check:

sudo firewall-cmd --list-all

You should see UDP 10000-20000 in ports. If not:

sudo firewall-cmd --permanent --add-port=10000-20000/udp
sudo firewall-cmd --reload

Then verify your carrier's nat= setting in the carrier definition.

"All circuits busy" on every test call

Carrier authentication failing. Tail the Asterisk log:

sudo tail -f /var/log/asterisk/messages | grep -i sip

Look for REGISTER attempts. The response code tells you the problem:

  • 403 — wrong credentials. Re-paste from your carrier.
  • 407 — needs auth challenge. Make sure secret is set.
  • 404 — wrong host. Recheck the SIP server hostname.

"Agent login loop" — agent logs in, gets bumped back to the login page

Cookie/SSL issue. Two common causes:

  1. Mixed http/https — agent is at https://your-server but the agent endpoints are http. Force HTTPS in Apache config.
  2. Session timeout too aggressive — Admin → System Settings → vicidial_session_timeout is too low.

Campaign won't dial — agents are available, dial level is set, nothing happens

Top reasons in order:

  1. The list has no NEW leads (all called). Check Admin → Lists → status counts.
  2. Local Call Time is outside dialing hours for the leads' time zones.
  3. Carrier Active is N.
  4. Use Internal DNC = Y and the leads are all on DNC.

"The deploy timer says ACTIVE but the admin URL won't load"

Wait 30s — DNS propagation. If still failing after a minute:

  • Confirm the DNS record exists at your domain registrar (we manage this for you if you used the cloudflare integration).
  • Try the IP directly: https://<your-ipv4>:<port>/<random>/admin.php. Cert will fail; that's expected. If it serves, DNS is the issue.

Recordings missing

Recordings live at /var/spool/asterisk/monitorDONE. If empty:

  1. Recording Override on the campaign needs to be ALLFORCE (or one of the other recording values).
  2. /var/spool/asterisk/monitorDONE needs write permissions for the asterisk user.
  3. Disk space — recordings fill fast. df -h /var/spool to check.

Slow agent UI / slow report queries

VICIdial's web UI gets slow when vicidial_log grows past ~5M rows. Mitigations:

  • Archive old log data via the built-in AST_archive_data.pl cron (already running on every box).
  • Check MySQL slow-log: sudo tail -f /var/log/mysql/mariadb-slow.log.
  • Resize to a larger plan — more vCPU + more RAM helps a lot at scale.

SSH says "permission denied (publickey)"

You added a public key in /dashboard, but:

  • Check the dashboard says "synced" (green pill). If "pending sync", click Re-sync to server.
  • Verify your ssh client is using the matching private key: ssh -v root@your-server.example.com shows which keys it tried.
  • The server's SSH host key changed (after a re-provision). Run ssh-keygen -R <hostname> to clear the old fingerprint.

When to open a support ticket

If after the above the issue persists, open a ticket from /dashboard/support. Attach:

  • Your server hostname or id
  • Timestamp of the failure (UTC)
  • Exact error message
  • Screenshot or log excerpt

We'll look at the box.