Inbound Call Routing: Route Selection & Failover | NetViaVoice
πŸ“ž +1 201 979 3825  |  πŸ‡΅πŸ‡° +92 333 5908806  |  βœ‰οΈ support@netviavoice.com
Call Routing Masterclass 2026

Inbound Call Routing:
Route Selection & Failover

The definitive guide to designing intelligent inbound call routing β€” DID matching, IVR trees, ring groups, time-based routing, and automatic failover that ensures no customer call is ever missed.

DIDDrives All Inbound Routing
AutoFailover Built Into SIP
24/7Time-Based Route Switching
0 secCustomer Wait on Failover
∞Routing Destinations Available
πŸ“‹ Article Summary

Inbound call routing is the system that determines what happens the instant a customer calls your business number β€” which department they reach, which phone rings, which IVR menu they hear, and what occurs when everyone is busy or offline. A well-designed inbound routing system ensures every call reaches the right person, at the right time, through the right destination β€” and automatically recovers when something goes wrong. This guide covers the complete architecture of inbound call routing: how DID matching works, the difference between ring groups, hunt groups, and queues, how to design time-based routing rules, how to build automatic failover chains that protect against downtime, and how to configure all of this in real PBX systems including FreePBX and Asterisk with NetViaVoice SIP trunks.

1. How Inbound Call Routing Works End-to-End

When a customer dials your business phone number, a precisely coordinated chain of events unfolds before their call reaches a human voice. Understanding this chain is the foundation of designing a routing system that works reliably at scale. The journey begins at your SIP trunk carrier's network and ends at a ringing phone on your team's desk β€” or their mobile, or a voicemail box, depending on the routing rules you have defined.

At the carrier level, the dialled number (your DID β€” Direct Inward Dialing number) is matched to your account in the carrier's routing table. The call is then delivered as an inbound SIP INVITE to your PBX via your SIP trunk. The SIP INVITE message contains the dialled number in the Request-URI or To header β€” this is the information your PBX uses to decide where to route the call. Your PBX compares this number against its configured inbound routes, finds the matching route, and executes the routing logic defined for that number.

The routing logic can be simple (ring extension 101) or highly sophisticated (play a greeting, check the time, if business hours route to IVR, if after hours play a message and go to voicemail, if voicemail full send a text to the manager). All of this happens automatically, in milliseconds, for every single inbound call. Getting it right means customers always reach the right destination. Getting it wrong means calls get lost, dropped, or sent to the wrong team. For the outbound routing counterpart that works alongside inbound configuration, read our guide: FreePBX Outbound Routes Guide.

πŸ“ž Inbound Call Journey: From Dial to Answer
πŸ“±Customer DialsYour DID number
β†’
🌐SIP CarrierRoutes to your trunk
β†’
πŸ”DID MatchPBX identifies number
β†’
πŸ”€Route LogicTime, IVR, conditions
β†’
☎️DestinationExtension / Queue
DID#1 Factor in Inbound Routing
IVRHandles Routing Without Agents
0 msRoute Decision Time
100%Coverage with Failover

Need Expertly Designed Inbound Call Routing?

NetViaVoice configures inbound routes, IVR systems, time-based routing, and failover chains for businesses on FreePBX, Asterisk, and 3CX β€” with our SIP trunks as the foundation.

2. DID Matching: How the PBX Identifies Your Call

Every inbound call is identified by the DID β€” the specific number the caller dialled. Your PBX uses this number to look up which inbound route applies. This matching process is the gateway to all routing decisions. Configure it incorrectly and all calls will either fail to route, route to a default destination, or trigger the wrong routing logic.

DID FormatExampleTypical CarrierFreePBX Inbound DID Field
10-digit US2125550100Most US carriers2125550100
11-digit US (with 1)12125550100Some US/CA carriers12125550100
E.164+12125550100International SIP+12125550100
UK (with country code)442071234567UK carriers442071234567
Any / blank(empty)Catch-allLeave DID blank in FreePBX

Key Troubleshooting Tip: The most common inbound routing failure is a DID format mismatch. Your carrier delivers the number in E.164 format (+12125550100) but your inbound route has it as 10-digit (2125550100). Use Asterisk CLI verbose logging or FreePBX's Admin β†’ Asterisk Logfiles to see exactly what DID format is arriving in the SIP INVITE β€” then match your inbound route to that format exactly.

3. Routing Destinations: Extension, IVR, Ring Group & Queue

Once the DID is matched, the call is sent to a destination. Choosing the right destination type is one of the most impactful routing decisions you will make. Each destination type serves a different purpose and customer experience:

πŸ“ž

Direct Extension

Routes the call immediately to a specific phone or softphone. Best for direct lines to known individuals (receptionist, CEO direct line). No menu, no waiting β€” just ringing.

Fastest for direct lines
🌐

IVR / Auto-Attendant

Plays a recorded greeting and menu. Callers press digits to self-route to the right department. Best for businesses with multiple departments and high call volumes.

Most professional
πŸ“£

Ring Group

Rings multiple extensions simultaneously or sequentially. Best for small teams where any available agent can answer. Simpler than a queue β€” no position announcements.

Best for small teams
⏳

Call Queue

Places callers on hold with music, position announcements, and estimated wait time. Routes to next available agent. Best for high-volume inbound call centres.

Call centre grade
πŸ“±

Follow-Me / Find-Me

Tries multiple numbers in sequence or simultaneously β€” office phone, then mobile, then voicemail. Ensures mobile workers never miss important calls.

Best for mobile workers
πŸ“

Voicemail

Routes directly to a voicemail box. Used as a final destination in failover chains or after business hours. Can trigger email notification with audio attachment.

Always-available fallback

4. Ring Strategies: Sequential, Simultaneous & Memory Hunt

Within ring groups and hunt groups, the ring strategy controls the order and method in which agents' phones are rung. Choosing the right strategy significantly affects both agent workload distribution and customer wait time:

Ring StrategyHow It WorksBest ForCustomer Experience
Ringall (Simultaneous)All extensions ring at once β€” first to answer gets the callSmall teams, urgent linesFastest answer time
Hunt / SequentialRing extension 1, wait N seconds, try extension 2, etc.Tiered support teamsModerate wait
Round RobinDistributes calls evenly β€” each agent gets equal shareSales teams, even workloadFair distribution
Memory HuntRound robin but remembers where it left off last callCall centres needing continuityMost balanced
RandomRings a random available agent each timeTeams with equal skillsUnpredictable but fair
Linear PriorityAlways tries the top agent first, escalates only if unavailableDedicated account managersPreferred contact first
Least Recently CalledRoutes to agent who received a call longest agoLarge agent poolsMost rested agent answers

5. Time-Based Routing: Business Hours, After-Hours & Holidays

One of the most important routing layers for any business is time-based routing β€” automatically sending calls to different destinations based on the time of day, day of week, or specific holidays. A law firm should not route calls to the same IVR at 2 AM as it does at 2 PM. A retail support line should automatically switch to after-hours voicemail without anyone having to remember to change a setting.

πŸ• Time-Based Routing Architecture

Business Hours Route

Monday–Friday, 9:00 AM – 6:00 PM: Route to main IVR β†’ Sales queue or Support queue based on digit pressed β†’ Agent answers

After Hours Route

Evenings and weekends: Play after-hours greeting β†’ Offer option to leave voicemail or reach emergency extension β†’ Voicemail or on-call mobile

Lunch Break Route (Optional)

12:00 PM – 1:00 PM: Play temporary routing message β†’ Offer callback option β†’ Route to reduced-staff ring group or voicemail

Holiday Route

Public holidays: Play holiday greeting with return date β†’ Voicemail β†’ Email notification to manager with recording

Emergency Override

Any time: Designated override extension or PIN-activated redirect β†’ Immediate routing to on-call person's mobile regardless of time condition

In FreePBX, this is implemented using the Time Conditions module. In Asterisk, it uses GotoIfTime() in extensions.conf. In 3CX, it uses Office Hours settings per DID. All three systems support calendar-based holiday exceptions.

6. IVR Design: Building an Intelligent Call Tree

An IVR (Interactive Voice Response) system is the automated voice menu that greets callers and helps them self-route to the right destination. A well-designed IVR reduces agent workload, speeds up call resolution, and creates a professional brand impression. A poorly designed IVR frustrates callers and increases abandonment rates.

πŸ“Š Caller Abandonment Rate by IVR Menu Depth
1-level menu (3–4 options)
~8%
2-level menu (nested options)
~18%
3-level menu (deep nesting)
~35%
4+ level menu (enterprise labyrinths)
~58%

βœ… IVR Best Practices for 2026

  • Keep it shallow: Maximum 2 levels deep β€” most callers hang up by the 3rd menu level
  • Limit options: 4–5 choices per menu maximum β€” "Press 1 for Sales, Press 2 for Support, Press 3 for Billing, Press 0 for Operator"
  • Always offer 0 for operator: Some callers want a human immediately β€” give them an exit route
  • State the option before the number: "For Sales, press 1" β€” not "Press 1 for Sales" (caller waits to know if relevant)
  • Keep greeting under 10 seconds: Callers skip long intros β€” get to the menu quickly
  • Handle timeouts: If no digit pressed within 5 seconds, repeat the menu or default to operator
  • Handle invalid input: If caller presses wrong digit, play "that was not a valid option" and repeat

7. Inbound Call Failover: Automatic Recovery Architecture

Failover is the routing mechanism that automatically redirects inbound calls when the primary destination is unavailable. A call that cannot be answered because of a system outage, a busy queue, or an unavailable agent is a lost customer β€” and potentially a lost sale or unresolved support issue. Intelligent failover design ensures this never happens.

βœ…

Normal State: Primary Route Active

Call arrives on DID β†’ matches inbound route β†’ routes to IVR or ring group β†’ agent answers within ring timeout. All systems functioning normally.

⚠️

Failover Trigger: Primary Unavailable

Ring group timeout exceeded (e.g., 30 seconds, no answer) β†’ Queue full or wait time exceeds threshold β†’ SIP trunk returns 503 β†’ System outage detected.

πŸ”„

Failover Layer 1: Secondary Destination

Call automatically routes to failover destination β€” secondary ring group, overflow agent pool, or mobile phone. Caller hears brief hold music, not a dropped call.

πŸ“±

Failover Layer 2: Mobile / External Forward

If Layer 1 also fails β€” call forwards to a mobile number or external PSTN destination. Even a total system outage can be covered with a carrier-level forwarding rule.

πŸ“

Final Fallback: Voicemail with Notification

If no agent is reachable at any layer β€” voicemail records the message and sends instant email/SMS notification to the team. No call is ever silently lost.

Failover TypeTrigger ConditionDestinationConfiguration Location
Ring Group TimeoutAll extensions ring unanswered for N secondsVoicemail, IVR, or another ring groupFreePBX: Ring Group β†’ Destination if no answer
Queue TimeoutCaller waits longer than max queue timeVoicemail, external number, or different queueFreePBX: Queue β†’ Failover Destination
Trunk FailoverSIP trunk returns 503 or is unregisteredSecondary SIP trunk or PSTN failoverFreePBX: Outbound route secondary trunk
Time ConditionCall arrives outside business hoursAfter-hours IVR, voicemail, or on-call mobileFreePBX: Time Conditions module
Carrier-Level FailoverYour entire PBX is unreachable (internet down)Mobile number or PSTN backup lineNetViaVoice portal: DID forwarding rules

Best Practice: Configure a carrier-level failover rule directly in your NetViaVoice portal as a last-resort backup. This forwards inbound calls to your mobile number if your PBX becomes completely unreachable β€” protecting you against internet outages, server crashes, and power failures that would otherwise drop all inbound calls.

8. Configuring Inbound Routes in FreePBX (Step-by-Step)

1

Navigate to Inbound Routes

Log into the FreePBX Admin GUI. Go to Connectivity β†’ Inbound Routes. Click + Add Inbound Route.

2

Set the DID Number

In the "DID Number" field, enter the number exactly as your SIP carrier delivers it. Check Asterisk CLI logs to confirm the format. Use the "ANY" / blank DID only as a catch-all for numbers with no specific route.

3

Configure the Set Destination

Under "Set Destination", choose where to send the call: Extensions, Ring Groups, IVR, Queues, Time Conditions, Voicemail, or Announcement. For most businesses, setting the destination to a Time Condition is the recommended first step β€” so calls route differently during and after business hours automatically.

4

Configure a Time Condition (Recommended)

Go to Applications β†’ Time Conditions. Create a condition for business hours (e.g., Monday–Friday, 9:00–18:00). Set the "Match" destination to your IVR or ring group, and the "No Match" destination to your after-hours voicemail or announcement. Return to the inbound route and set its destination to this Time Condition.

5

Configure Ring Group / Queue with Failover

In your Ring Group (Applications β†’ Ring Groups), set the ring strategy, add the extensions, configure ring time (recommended: 20–30 seconds), and critically β€” set the "Destination if no answer" to your voicemail or after-hours IVR. This is your Tier 1 failover.

6

Apply Config and Test

Click Apply Config. Test by calling each DID from an external phone at different times. Verify business hours routing, after-hours routing, and ring group timeout failover all behave as expected. For DTMF-related issues in IVR routing, see our guide: FreePBX DTMF Configuration.

9. Multi-DID Routing: One Trunk, Many Numbers, Many Destinations

One of the greatest advantages of SIP Trunking is the ability to run dozens or hundreds of DID numbers over a single trunk connection β€” each with completely independent routing logic. A single NetViaVoice SIP trunk can simultaneously handle:

DID NumberPurposeRouting DestinationTime Condition
+1 (212) 555-0100Main business lineAuto-attendant IVRBusiness hours β†’ IVR / After hours β†’ Voicemail
+1 (212) 555-0101Sales direct lineSales ring groupAll hours β†’ Ring group β†’ Sales voicemail
+1 (800) 555-0199Customer support toll-freeSupport queueBusiness hours β†’ Queue / After hours β†’ Callback form
+1 (212) 555-0150VIP client lineAccount manager directAlways β†’ Account manager find-me/follow-me
+44 (20) 7123 4567UK local presenceUK language IVR β†’ US teamUK business hours (EST adjusted) β†’ UK team
+1 (212) 555-0175Marketing campaign trackingSales ring groupAll hours β†’ CRM-tagged routing

10. Monitoring & Reporting Inbound Route Performance

Configuring inbound routes is not a one-time task β€” it requires ongoing monitoring to identify bottlenecks, missed calls, and routing inefficiencies. The key metrics to track for every inbound route are:

πŸ“Š Key Inbound Routing Metrics to Monitor
Call Answer Rate
Target: 90%+ answered
Abandoned Before Answer
<8%
Average Ring Time Before Answer
Target: <15s
IVR Digit Press Rate
78%+ should self-route
Calls Reaching Failover
<5%

For comprehensive NAT and routing configuration that underpins reliable call delivery, also review our guide on 3CX NAT Configuration and our complete FreePBX SIP Trunk Setup Guide β€” both of which affect whether inbound calls are delivered correctly before routing even begins.

11. Frequently Asked Questions

❓ What is inbound call routing and how does it work in FreePBX? β–Ό

Inbound call routing is the system your PBX uses to determine where to send a call the moment it arrives from your SIP trunk. In FreePBX, inbound call routing works through the Inbound Routes module (Connectivity β†’ Inbound Routes). Each inbound route is defined by the DID number it matches β€” the specific phone number the caller dialled. When a call arrives, FreePBX reads the DID from the SIP INVITE message and finds the matching inbound route. It then executes the routing destination defined for that route β€” which could be an extension, a ring group, an IVR (auto-attendant), a call queue, a time condition, or a voicemail box.

The power of FreePBX's inbound routing comes from layering these destinations. A typical professional setup routes the incoming call first to a Time Condition (which checks if it is business hours or after hours), then to an IVR (where callers self-route by pressing digits), then to a Ring Group (where multiple phones ring simultaneously), with a Voicemail destination if no agent answers within the timeout period.

❓ What is the difference between a ring group and a call queue in FreePBX? β–Ό

Ring groups and call queues serve similar purposes β€” routing inbound calls to multiple agents β€” but they handle caller experience very differently:

  • Ring Group: Rings one or more extensions and if no one answers within the ring timeout, routes to a failover destination. There is no waiting β€” the caller either gets answered within the ring timeout or is redirected. No position announcements, no hold music queue, no agent status management. Simple and fast for small teams.
  • Call Queue: Places the caller in a virtual waiting line. Callers hear hold music, periodic position announcements ("You are caller number 3..."), and estimated wait times. The queue routes to the next available agent when one becomes free. Agents can log in and out of the queue. Provides full reporting on wait times, abandonment rates, and agent performance.

When to use which: Use a ring group for small teams (2–8 agents) with low-to-medium call volumes where a simple answer-or-failover approach is sufficient. Use a call queue when you have high call volumes that regularly exceed agent capacity, require callers to wait in order, or need detailed reporting. Most businesses start with ring groups and upgrade to queues as they scale.

❓ How do I set up automatic failover for inbound calls when my internet goes down? β–Ό

Protecting inbound calls against a total internet outage requires failover at the carrier level β€” not just the PBX level. If your internet connection is down, your PBX is unreachable and cannot process any routing rules. This means your PBX-based failover logic is irrelevant during an outage.

The solution is to configure failover directly with your SIP trunk provider (NetViaVoice) at the DID level:

  • Log into your NetViaVoice customer portal
  • Navigate to your DID number settings
  • Configure a Backup Forwarding Number β€” typically your mobile phone or a secondary PSTN line
  • Set the failover trigger: "If SIP registrar is unreachable for X seconds, forward to [mobile number]"
  • NetViaVoice detects that your SIP trunk registration has lapsed (internet down) and automatically routes all inbound calls to your mobile number

This carrier-level failover activates within 30–60 seconds of your PBX going offline and requires no action on your part. It is the ultimate last-resort protection for business continuity.

❓ How do I route calls differently during business hours vs after hours in FreePBX? β–Ό

Time-based routing in FreePBX is handled by the Time Conditions module. Here is the complete setup process:

  • Go to Applications β†’ Time Conditions β†’ Add Time Condition
  • Name it (e.g., "Business Hours") and configure the hours and days: Mon–Fri, 9:00–18:00
  • Set Match destination: your business hours IVR or ring group
  • Set No Match destination: your after-hours announcement and voicemail
  • Go to your Inbound Route (Connectivity β†’ Inbound Routes β†’ your DID)
  • Set the "Set Destination" to your Time Condition
  • Click Submit β†’ Apply Config

For holiday exceptions, create separate Time Groups (Admin β†’ Time Groups) for specific dates and add them to your Time Condition. FreePBX evaluates holiday time groups before standard day-of-week conditions, so holidays will override normal business hours automatically.

For DTMF IVR digit routing that follows your time-based routing, see our guide: FreePBX DTMF Configuration.

❓ Why are inbound calls going to the wrong extension or not routing at all? β–Ό

Inbound call routing failures have four main causes, each with a specific diagnostic and fix:

  • DID Format Mismatch (most common): The DID in your inbound route does not match the format your carrier delivers. Enable Asterisk verbose logging (asterisk -rx "core set verbose 5"), make a test call, and look for the DID in the console output. Copy that exact format into your inbound route's DID field.
  • No matching inbound route: The call arrives on a DID you have not configured a route for. FreePBX falls back to the default destination (often voicemail or disconnect). Create a specific inbound route for the DID, or set a sensible default route with a blank DID field as a catch-all.
  • Time Condition misconfiguration: Your Time Condition routing incorrectly β€” calls going to after-hours during business hours. Verify the Time Condition's hours, days, and timezone setting (Admin β†’ Admin β†’ Display Timezone). FreePBX time conditions evaluate server time β€” ensure your Asterisk server's system clock is correct.
  • Ring group timeout too short: Agents are not answering in time and calls are routing to the failover destination before agents have a real chance to answer. Increase the ring group ring time to at least 20–25 seconds.

For SIP trunk setup issues that can prevent inbound delivery entirely, see: FreePBX SIP Trunk Setup Guide.

πŸ“ž Design Your Perfect Inbound Routing System

NetViaVoice provides expert inbound call routing design, FreePBX configuration, IVR setup, and failover engineering for businesses of all sizes β€” all backed by our reliable SIP Trunking infrastructure in 160+ countries. Every inbound call deserves to reach the right person. Let us make that happen.