VICIfast
Glossary

Carrier

VICIdial's name for a configured SIP trunk — the upstream provider that carries your calls.

A carrier in VICIdial is a configured upstream provider that carries your calls — in the wider industry the same thing is called a SIP trunk. VICIdial keeps them under Admin → Carriers, and the distinction between the two words is mostly that "carrier" is what the admin screen says.

What a carrier definition contains

Three things, and it helps to understand that they are separate:

  • The Asterisk peer configuration. VICIdial writes this block straight into the Asterisk SIP or PJSIP configuration. It carries the provider's host, transport, codecs, and authentication.
  • The registration string, if the provider expects you to register. Providers that authenticate by source IP instead do not need one, and a stray registration string is a common cause of a trunk that looks configured but never comes up.
  • The dial plan entry. This is the pattern that decides which dialed numbers leave through this carrier, and what the number looks like when it does — stripping or adding a leading 1, prefixing an access code, normalising to E.164.

Get the peer right and calls authenticate. Get the dial plan wrong and they authenticate and still fail, usually with a 404 from the provider because you sent it a number in a format it does not accept.

Running more than one

Multiple carriers can be active at once, and most serious operations run at least two. Routing between them is done with dial prefixes: a campaign's dial_prefix sends its automatic dialing down one route, manual_dial_prefix can send agent-initiated calls down another, and three_way_dial_prefix covers transfers. Pointing those at different carriers is how you separate cheap bulk outbound from the route you want your transfers and callbacks to take.

The practical reasons to have a second carrier are failover when one has an outage, keeping a cleaner route for calls where answer rate matters, and having somewhere to move if a number range starts getting flagged.

Inbound

Inbound needs the reverse of outbound's credentials: the provider needs to know where to send calls, and your server needs to accept them. That usually means allowing the carrier's signalling IPs through the firewall and matching them to a peer, then routing the DID to an in-group.

See also