Reader setup
Before you choose
List your constraints, required evidence and stop rules before you score options.
- A running VICIdial or Asterisk lab you can point at a candidate provider
- A written requirements list
- A synthetic test fixture
- What you will prove
- A comparable evidence record for each candidate.
- Safety boundary
- No provider is ranked, qualified, or approved by this article.
Reader path
How to use this article
- Use it when: You are comparing options and need decision evidence before approval.
- Expected result: Turn options into explicit acceptance criteria and documented stop conditions.
- Start here: Score what is mandatory, keep unknowns visible, then decide only when risks are understood.
Evaluate routes, not marketing claims
Fast answer: there is no universally best Session Initiation Protocol (SIP) trunk, a carrier connection that carries calls, where a carrier is the phone company providing it. Score each candidate against the same approved workload, route, support and failure tests, then choose based on evidence relevant to your jurisdictions and call profile.
Some vocabulary first, because these terms decide the scores. A codec is the audio compression format both ends agree on, commonly G.711 (written PCMU or PCMA) or G.729. DTMF is the touch-tone digits a caller presses, which have to be signaled in a way both ends understand, usually the method defined in RFC 2833. TLS encrypts the SIP signaling and SRTP encrypts the audio, so a provider offering one without the other still leaves half the call readable. An INVITE is the SIP message that starts a call. An SBC, or session border controller, is equipment at the edge of your network that polices and normalizes SIP traffic between you and the provider.
Do not copy a provider marketing comparison into an operator decision. Prices, availability, qualification rules and capabilities change; obtain current written terms directly from each candidate and retain them with procurement rather than publishing unverified figures.
Terms are defined in vicidial-terminology-for-complete-beginners.
- Prerequisite: have approved synthetic test routes and a written workload definition.
- Non-goal: do not select, rank or cut over a provider from this article.
- Define regions, traffic type, caller-ID policy and concurrency test scope.
- Use the same observation window and stop criteria for every candidate.
Visual walkthrough
Follow three real demo screens
Captured on an isolated VICIdial demo: Administration screens on September 24, 2026, and the idle Agent screen on August 11, 2026. Each caption states its own capture time, and every sanitized image helps you recognize a related screen; none proves that this article's call, command, or result occurred.Find carrier administration

Open Carrier Listings

Check the allowed SIP-stack setting

Score points 1–6: admission, signaling and media
Use six separately scored checks: 1) account/onboarding eligibility; 2) region and number portability fit; 3) registration or IP-auth model; 4) TLS/SRTP or approved signaling/media options; 5) codec, DTMF and fax requirements; 6) caller-ID and identity-header handling. Confirm your own PJSIP bind port and channel driver first, before scoring point 3: chan_sip and chan_pjsip register differently, and a candidate's registration or IP-auth instructions assume you already know which driver and port your own install runs. Mark unsupported, untested and conditional separately—zero is not the same as unknown.
Use the card with one candidate at a time. OBSERVED means your controlled test demonstrated the condition; DOCUMENTED means the provider said so but you did not test it. A successful INVITE does not prove a usable production trunk.
- Capture sanitized SIP response classes and timing.
- Verify DTMF through the exact agent/call flow.
- Confirm caller-ID behavior only on authorized numbers.
CANDIDATE: provider label1 onboarding: OBSERVED | DOCUMENTED | NOT TESTED3 authentication model: OBSERVED | DOCUMENTED | NOT TESTED4 TLS/SRTP: OBSERVED | DOCUMENTED | NOT TESTED5 codec + DTMF: OBSERVED | DOCUMENTED | NOT TESTEDSTOP: required point is NOT TESTED or unsupportedThis sample is a template or reading aid, not a terminal command. There is no output to show.
- Before you run it
- Copy once per candidate; CANDIDATE is a non-sensitive procurement label.
- Success looks like
- Every required point has controlled evidence or an explicit exclusion.
- Stop if
- Stop comparison when a required point is untested or ambiguous.
Score points 7–12: operations and commercial fit
Complete the matrix with: 7) concurrency and rate-limit behavior; 8) geographic routing and quality observability; 9) emergency/service and regulatory constraints where applicable; 10) support escalation and incident communications; 11) failover, maintenance and change notice; 12) contract, billing model, porting and data-handling terms. These are decision criteria, not a vendor ranking.
Ask each provider to identify what it will measure and support at the edge versus what remains your SBC, network, Asterisk or VICIdial responsibility. Do not assume a provider supplies end-to-end diagnosis or capacity guarantees.
- Attach current vendor answers and dated terms to the evaluation record.
- Use legal/procurement review for jurisdictional and contract questions.
- Record dependencies and exclusions alongside every score.
Run an equivalent controlled lab test
Use a version-pinned VICIdial/Asterisk lab with a dedicated campaign and synthetic endpoints. Validate registration/authentication, inbound/outbound routing, transfers, recordings where approved, failover and recovery without placing unsolicited or customer calls.
Use the outcome log below after each candidate run. RESPONSE CLASS is a sanitized protocol/result category, not a raw SIP trace, and UNKNOWN means the evidence is insufficient. This lab's evidence demonstrates selected VICIdial and WebRTC checks, not a benchmark or qualification of any SIP vendor.
CANDIDATE: provider labelTEST: synthetic outbound audio + DTMFRESULT: PASS | FAIL | UNKNOWNRESPONSE CLASS: sanitized categoryROLLBACK: retain prior approved routeSTOP: unexpected destination or unresolved media failureThis sample is a template or reading aid, not a terminal command. There is no output to show.
- Before you run it
- Use after an approved synthetic run; provider label replaces CANDIDATE and contains no endpoint or account data.
- Success looks like
- A PASS has controlled audio and DTMF evidence plus a retained rollback route.
- Stop if
- Stop traffic expansion for FAIL, UNKNOWN, or an unexpected destination.
Keep a reversible carrier cutover
Select a candidate only after the matrix, logs and support interaction are independently reviewed. Keep the existing approved route available during a bounded cutover where contracts and topology permit, and define the exact signals that stop traffic expansion.
Rollback is a documented routing reversal, not an unplanned DNS or configuration edit. Verify new calls, queued work, caller-ID policy and monitoring after each transition; never assume old and new carriers behave identically.
- Version-control sanitized route configuration changes.
- Test primary and fallback paths after every carrier change.
- Re-evaluate after major pricing, policy, software or routing changes.
Evidence ledger
Verification basis
- VICIdial's PJSIP support documentation (PJSIP_SUPPORT.txt) covers carrier configuration; it contains no provider comparison, price or qualification result.
- No provider was tested, ranked or recommended in this article.
Primary references
Sources
- VICIdial PJSIP SupportVICIdial · accessed September 23, 2026
- Configuring Asterisk PJSIPAsterisk · accessed September 23, 2026