The VICIdial install.pl Script, Step by Step
A walkthrough of what the VICIdial install script does: the prompts it asks, the database it builds, the scripts it copies, the crontab, and the conf files it writes.
Once Asterisk is compiled and your dependencies are in place, the VICIdial install script is the step that turns a pile of source code into a working dialer. It is an interactive Perl script: it asks questions, then does the wiring based on your answers. Knowing what it does behind each prompt makes the whole thing far less mysterious.
The prompts
The script opens by asking where things live and how to reach them: the paths to your web root, your Asterisk config directory, and your Asterisk sound files, plus your database host, name, and login. It also asks which server role this box plays. Answer carefully. A wrong path here is the kind of mistake that surfaces hours later as a script that cannot find its files.
Setting up the database
With your answers in hand, the script connects to MySQL or MariaDB and loads the VICIdial schema: the tables for campaigns, leads, agents, dispositions, and the long list of settings the dialer reads at runtime. It seeds default rows so the admin pages have something to show on first login. If the database credentials are wrong, the script stops here, which is actually helpful, since a half-loaded database is worse than none.
flowchart TD
A[Run install script] --> B[Answer path and DB prompts]
B --> C[Connect to database]
C --> D[Load schema and seed rows]
D --> E[Copy PHP and Perl scripts]
E --> F[Write conf files and dialplan]
F --> G[Add keepalive crontab]
G --> H[Dialer ready to test]Copying the scripts
Next it places the application files: the PHP pages for admin and agent screens go to your web root, and the Perl background scripts and AGI (Asterisk Gateway Interface) scripts go to their working directories. The AGI scripts are the ones Asterisk reaches into during a live call to decide routing, so their placement and permissions have to be exact for call control to work.
One thing the script does not do is guess. It uses the answers you typed, nothing more, so a path that does not exist or a database it cannot reach stops it rather than papering over the problem. That is a feature. If the run fails partway, read the last lines it printed; they almost always name the exact file or permission that blocked it. Fix that one thing and run it again rather than starting the whole install over.
Conf files and dialplan
The script then writes the Asterisk side of the wiring. It lays down the starting Conf file set and the Dialplan entries that let VICIdial originate and route calls. These are templates with your server details filled in; you can refine them later, but the defaults are enough to place a first test call.
The crontab
Finally it adds the Keepalive entries to the system crontab. These jobs launch the dialing engine and the background workers and restart them if they crash. This is the step people miss when they install pieces by hand. Without it, every page works but the dialer never dials. When the script finishes, the crontab is what brings the box to life.
To see where this step sits in the larger sequence, read our complete VICIdial install guide. Once the script has run, your next stop is wiring a carrier, covered in choosing a SIP carrier.
If answering install prompts and chasing path mistakes is not how you want to start, VICIfast runs all of this for you and provisions a dialer in under 40 seconds. See VICIfast pricing.
About VICIfast LLC
VICIfast LLC operates a managed VICIdial hosting + BYOI service for outbound and inbound call centers. We run the dialers, the carriers, the recordings pipeline, and the compliance plumbing so operators don’t have to.
Citing this article
VICIfast Engineering. “The VICIdial install.pl Script, Step by Step”. VICIfast LLC, June 29, 2026. Retrieved from https://vicifast.com/blog/vicidial-install-script-walkthrough
Have questions?
Related posts
You might be interested in
VICIfast newsletter
Liked this? Get the next one in your inbox.
We ship the kind of stuff you just read — concrete, numbers-first, no drip. One email when a new post goes live. Unsubscribe in one click.
Comments
No comments yet — be the first.