Cheat Sheet — Scripts & Commands
Every script and command you can run from your VICIdial telephony server, in one page. Run as root (or with sudo).
First time installing? See Install AMDY — standard AMD for the full step-by-step.
Install / re-install
| Your system | Command |
|---|---|
| Vicibox 9 / 10 / 11 / 12 | bash <(curl -s -k https://download.amdy.io/installamd.sh) |
| Vicibox 7 / 8 | bash <(curl -s -k https://download.amdy.io/installamd8.sh) |
| CentOS / AlmaLinux / Rocky | bash <(curl -s https://download.amdy.io/installamdcentos.sh) |
| Ubuntu / Debian | bash <(curl -s https://download.amdy.io/installamddebian.sh) |
| Press-1 campaigns (any system) | bash <(curl -s https://download.amdy.io/installamdpress1.sh) |
Playback variant (plays insert.wav to caller — see playback-audio) |
bash <(curl -sL https://download.amdy.io/installamd-audio.sh) --audio <file_or_url> --strip-silence |
Verify the install
One-shot check — confirms AGI, modules, and AMDY reachability in one command:
curl -s https://download.amdy.io/check-aiamd.sh | bash
Or step through manually:
# 1. AGI script is in place
ls -la /var/lib/asterisk/agi-bin/amd.py
# 2. AGI starts (waits silently for input; Ctrl+C to exit)
/var/lib/asterisk/agi-bin/amd.py
# 3. Python modules load
python3 -c "import websocket, mysql.connector, asterisk.agi; print('All modules loaded successfully')"
Check network connectivity to AMDY
Full check — probes every AMDY proxy IP, 10 runs:
curl -sk https://download.amdy.io/proxy_check.py | python3 - --runs 10
Healthy output ends with All IPs healthy.
Quick probe — single connection to port 2700:
telnet api.amdy.io 2700
Connected = good. Connection refused / hang / timeout = firewall blocking outbound 2700.
Show current AMDY IPs (useful before opening firewall rules):
dig A api.amdy.io
Watch live AMD activity
Color-coded live AMD log — green = HUMAN, red = AUDIO streaming, yellow = MACHINE/AMD, cyan = FAS/HONEYPOT, magenta = PROCESSING_ERROR / SERVER_TIMEOUT:
curl -sL https://download.amdy.io/amd-tail.sh | bash
The script auto-finds today's AMD log file and tails it with color coding. Press Ctrl+C to stop.
Or run the raw tail (no colors):
tail -f /var/log/astguiclient/AMD_log$(date +%Y%m%d).txt
You should see one line per answered call with its classification (HUMAN, MACHINE, FAS, etc.).
When something's wrong — fastest path
- Run the one-shot check — covers install + reachability in one command:
curl -s https://download.amdy.io/check-aiamd.sh | bash - If that's clean and calls still fail, run
telnet api.amdy.io 2700andtail -fthe log during a test call. - Pick the matching guide for your symptom: - Install issues → Setup & installation - Connection errors → Connection problems - Wrong detection results → Detection accuracy - Agent / call experience → Agent & call experience
- Status meanings → Understanding AMD statuses & timing
- Still stuck → Contacting support
Firewall recommendation
If you control the firewall on the dialer's server, the most resilient configuration is:
- Outbound to port 2700: open for all destinations (or at minimum the 9 IPs returned by
dig A api.amdy.io) - Established connection rule: allow
ESTABLISHED,RELATEDtraffic back
This survives AMDY adding new proxy IPs without breaking calls.