nomoVM
Blog

VICIdial AMD not working? 7 causes and fixes

VICIdial AMD not working usually means one of three things: it hangs up on live people, it sends voicemail to agents, or it returns NOTSURE too often. Here are seven common causes and what to do about each.

By the nomoVM team · Published 2026-11-12 · Updated 2026-11-12

1. The campaign isn't sending calls to AMD

Symptom: no AA statuses at all. Check: the campaign's Routing Extension must be the AMD extension (8369 by default), not 8368. Then confirm the extension exists: asterisk -rx "dialplan show 8369@default".

2. Default timings don't fit your traffic

Symptom: live people dropped as AA, often people who said "Hello?" and paused. Asterisk's defaults allow 2.5 s of initial silence and end on long silence after a short greeting. People on mobiles often pause longer. Raising initial_silence and after_greeting_silence drops fewer people but sends more voicemail to agents and adds dead air. See amd.conf settings explained.

3. NOTSURE calls go the wrong way

Symptom: many calls with AMDSTATUS NOTSURE. AMD() returns NOTSURE when it hits total_analysis_time without deciding. In VICIdial, check what VD_amd.agi does with NOTSURE in your version and campaign settings; if it treats them as machines, you're dropping every unclear person. Shortening total_analysis_time reduces dead air but makes more NOTSURE.

4. The silence threshold is wrong for your lines

Symptom: voicemail passed as human on noisy lines, or people missed on quiet ones. silence_threshold (default 256) decides what counts as silence. Line noise above it never counts as silence, so the greeting never "ends"; quiet voices below it count as silence.

5. Codec, jitter and audio problems

Symptom: AMD behaves differently on one carrier. Compressed codecs (G.729), packet loss and comfort noise change what AMD hears. Compare AA rates by carrier in your reports, and prefer G.711 (ulaw/alaw) on trunks used for AMD campaigns.

6. Call screening and recorded hellos

Symptom: agents hear "the person you're calling is using a screening service" or a robotic "Hello?". These are built to pass as people, and timing rules can't tell. See call screening detection.

7. Timing rules have reached their limit

If you've tuned and still lose live people, the problem is the method: silence and word counts can't separate a hesitant person from a short greeting. nomoVM for VICIdial keeps your routing and replaces the decision with an acoustic model; on our hand-labelled test it sent 94.9% of live people to agents. Because it falls back to your existing AMD() on any error, it's safe to try on one campaign.

Quick checklist

  • Routing Extension set to the AMD extension
  • The AMD extension exists and reloads without errors
  • NOTSURE handling is what you intend
  • Trunks for AMD campaigns use G.711
  • AA and drop rates compared per carrier and per campaign
  • A sample of AA calls listened to by a person, to see what's really being dropped

Stop sending voicemail to your agents

30,000 calls a month free. No card, no setup fee. Your dialer falls back to Asterisk AMD() on its own if anything goes wrong.