Route Selections (ARS) Module Documentation
Table of Contents
- Module Overview (Technical)
- Module Overview (Commercial/Business)
- Module Overview (End User/Administrator)
- Configuration Fields Reference
- ARS Routing Logic
- Common Scenarios & Examples
- Limitations & Important Notes
- Troubleshooting Tips
- Glossary
---
1. Module Overview (Technical)
What Is ARS?
ARS (Automatic Route Selection) enables time-based and priority-based outbound route selection. It creates profiles that link Outbound Routes with optional Time Groups, allowing the system to automatically select the best route based on time of day and priority.
Architecture
Key Tables
| Table | Purpose | |
|---|---|---|
public.ars_profiles | ARS profile definitions | |
public.ars_routes | Route associations within profiles | |
public.outbound_routes | Referenced outbound routes | |
public.time_groups | Optional time-based restrictions |
Key Files
| File | Description | |
|---|---|---|
admin/apps/web/src/modules/ars/ | Frontend module | |
admin/apps/web/src/i18n/en/ars.json | English translations |
Integration Points
ARS profiles are assigned via:
- Class of Service: All extensions with that CoS use the profile
- Extension-level override: Specific extension settings
---
2. Module Overview (Commercial/Business)
Business Value
ARS enables intelligent, time-aware routing:
| Without ARS | With ARS | |
|---|---|---|
| Same route all day | Different routes by time | |
| No cost optimization | Cheapest route by time | |
| Manual route changes | Automatic selection | |
| Single route fallback | Multiple route failover |
Use Cases
- Cost Optimization
- Use alternative carrier after hours (better night rates)
- Regional Routing
- Route international via international carrier
- Holiday Routing
- Emergency route on holidays
- Failover Configuration
- Backup route (Priority 2) if primary fails
- Load Balancing
- Time-based distribution
Feature Highlights
| Feature | Benefit | |
|---|---|---|
| Multiple Routes | Chain routes with priorities | |
| Time Groups | Time-based route activation | |
| Priority Ordering | Control route evaluation order | |
| Enable/Disable | Toggle routes without deletion | |
| Profile Assignment | Apply to CoS or extensions |
3. Module Overview (End User/Administrator)
What Can You Do?
- Create ARS profiles with multiple routes
- Assign Time Groups to routes for time-based selection
- Set priorities for route evaluation order
- Enable/disable individual routes within profiles
- Assign profiles to Class of Service or extensions
Administrator Workflow
Quick Tips
---
4. Configuration Fields Reference
Profile Fields
| Field | Description | Example | Required | |
|---|---|---|---|---|
| Profile Name | Unique identifier | Standard Outbound | Yes | |
| Description | Purpose notes | Default routing | No | |
| Enabled | Profile active status | On/Off | Yes |
Route Fields
| Field | Description | Example | Required | |
|---|---|---|---|---|
| Outbound Route | The route to use | Primary Carrier | Yes | |
| Time Group | When route is active | Business Hours | No | |
| Priority | Evaluation order | 1, 2, 3... | Yes | |
| Enabled | Route active status | On/Off | Yes |
Priority Explanation
| Priority | Meaning | |
|---|---|---|
| 1 | Checked first | |
| 2 | Checked if Priority 1 doesn't match | |
| 3 | Checked if Priority 1 & 2 don't match | |
| ... | Continue down the list | |
| Last (no Time Group) | Fallback if nothing else matches |
5. ARS Routing Logic
Route Selection Algorithm
Time Group Matching
Time Groups define when a route is active:
- Within Time Group: Route is available
- Outside Time Group: Route is skipped
- No Time Group: Route is always available (fallback)
---
6. Common Scenarios & Examples
Scenario 1: Business Hours vs. After Hours
Profile: "Time-Based Routing"| Priority | Outbound Route | Time Group | Purpose | |
|---|---|---|---|---|
| 1 | Primary Carrier | Business Hours (8am-6pm) | Cheapest daytime | |
| 2 | Night Carrier | After Hours (6pm-8am) | Night rate savings | |
| 3 | Backup Carrier | (none) | Fallback if both fail |
Scenario 2: Regional Carrier Selection
Profile: "Geographic Routing"| Priority | Outbound Route | Time Group | Purpose | |
|---|---|---|---|---|
| 1 | US Carrier | (none) | Handles US numbers | |
| 2 | International Carrier | (none) | Handles international |
Scenario 3: Weekend/Holiday Routing
Profile: "Holiday Aware"| Priority | Outbound Route | Time Group | Purpose | |
|---|---|---|---|---|
| 1 | Holiday Route | Holidays | Special holiday routing | |
| 2 | Weekend Route | Weekends | Weekend carrier | |
| 3 | Primary Carrier | Business Hours | Normal business | |
| 4 | Backup Carrier | (none) | Fallback |
Scenario 4: Cost-Based Failover
Profile: "Primary + Backup"| Priority | Outbound Route | Time Group | Purpose | |
|---|---|---|---|---|
| 1 | Cheapest Carrier | (none) | Try cheapest first | |
| 2 | Premium Carrier | (none) | If cheapest fails |
7. Limitations & Important Notes
Technical Limitations
Best Practices
- Always Add Fallback: Include route without Time Group
- No Time Gaps: Ensure Time Groups cover all hours
- Test Time Groups: Verify transitions at boundaries
- Priority Order: Most specific first, fallback last
- Monitor Failures: Track which routes are used
Route Selection Notes
---
8. Troubleshooting Tips
Common Issues
| Symptom | Possible Cause | Solution | |
|---|---|---|---|
| Wrong route selected | Priority order incorrect | Adjust priorities | |
| Calls failing at certain times | Time Group gap | Add fallback route | |
| ARS not being used | Profile not assigned | Check CoS/extension | |
| Always uses fallback | Time Groups misconfigured | Verify time ranges |
Diagnostic SQL
List ARS profiles: Check profile routes:---
9. Glossary
| Term | Definition | |
|---|---|---|
| ARS | Automatic Route Selection—time/priority-based routing | |
| ARS Profile | Collection of routes with priorities | |
| Outbound Route | Carrier/trunk configuration for outbound calls | |
| Time Group | Schedule defining when a route is active | |
| Priority | Order in which routes are evaluated (lower = first) | |
| Fallback Route | Route without Time Group (always available) | |
| Class of Service | Permission group that can have ARS profile assigned |
Lua Handler Status
⚡ No Dedicated Handler Required
ARS is a configuration module. The ARS profile data is consumed by the main outbound routing engine (route_with_fallback.lua) when processing outbound calls. No dedicated ARS Lua handler exists or is needed.
---
Documentation last updated: January 2026