How to set up inbound campaigns
VICIdial inbound — DIDs, in-groups, IVR, agent assignment, after-hours fallback.
VICIdial handles inbound calls through In-Groups. Calls land on a DID → route to an in-group → distributed to logged-in agents.
Wire your DID
Admin → Inbound DIDs → Add a New DID:
- DID: the phone number (digits only, no formatting)
- Active = Y
- Route =
INGROUP - In-Group: which queue handles this DID
The carrier-side configuration (their inbound webhook / SIP URI) needs to point at your VICIdial server's public IP on port 5060.
Create the in-group
Admin → In-Groups → Add a New In-Group:
- Group ID: short name
- Group Name: human-readable
- Active = Y
- Closer Campaign: optional, for warm-transfer flows
- MOH (music on hold): pick one
- Queue Priority: 1-99, higher = faster pickup
Assign agents to the in-group
Admin → User → [agent] → Closer Campaigns → check the in-group.
Agent must log in + select the in-group from their available campaigns dropdown.
IVR tree
For "press 1 for X" menus, use Asterisk dial-plan. Edit /etc/asterisk/extensions-vicidial.conf (or a custom context file):
[inbound-main]
exten => s,1,Answer()
exten => s,n,Background(welcome-press-1-or-2)
exten => 1,1,Goto(custom-sales,s,1)
exten => 2,1,Goto(custom-support,s,1)
exten => t,1,Goto(custom-sales,s,1) ; timeout default
[custom-sales]
exten => s,1,Goto(default,8300,1) ; in-group SALES (id 8300)
[custom-support]
exten => s,1,Goto(default,8400,1) ; in-group SUPPORT
Reload: asterisk -rx "dialplan reload".
After-hours fallback
In the in-group config:
- Drop Call URL: send to voicemail or external number when no agents are available
- Drop Time: max wait before fallback fires
- No-Answer URL: where calls go if no in-group agents are logged in
For 24/7 routing with after-hours to a different system, use the dial-plan's time-of-day branch:
exten => s,1,GotoIfTime(09:00-17:00|mon-fri|*|*?day-context|s|1:night-context|s|1)
Skill-based routing
Configure agent skills (Admin → Skills) + in-group required skill score. Calls route to agents whose skill matches.
Reports
Admin → Reports → In-Group Stats. Shows answered / abandoned / wait time per in-group.