Overview
An Outbound Rule decides which SIP trunk carries an outbound call placed by an extension. Each rule combines four things: who is allowed to use it (extensions or extension groups), what numbers it applies to (dialing patterns or dialed-digit length), which trunks carry the call (with Prioritized or Random selection), and any digit transformations (strip, prepend) and Caller ID that VeloPBX should apply before sending the call out.
Outbound Rules are the building blocks for least-cost routing, carrier failover, and policy-based controls such as blocking after-hours international calls.
In the Web Portal, go to Call Manager → Outbound Rules:
https://pbx.fortis-tele.com:8887
Creating an Outbound Rule
Step 1 — Add a new rule
- Call Manager → Outbound Rules
- Click Add
Step 2 — Basic information and priority
| Field | Description | Example |
|---|---|---|
| Name | A friendly label for the rule | Outbound — Default |
| Priority | The rule’s evaluation order. Lower number = higher priority. | 1 |
| Routing Strategy | How VeloPBX picks among the trunks listed for this rule | Prioritized / Randomly |
If a call matches several Outbound Rules, the rule with the highest priority (lowest number) wins. If multiple rules share the same priority, any one of them may be selected.
Routing Strategy options:
| Strategy | Behavior |
|---|---|
| Prioritized | Try the trunks in the configured order. On failure, fall through to the next trunk. |
| Randomly | Pick a trunk at random. On failure, pick another at random. |
Step 3 — Conditions: when this rule applies
Under Apply this rule to the following calls, configure one or more matching conditions. A call must satisfy every configured condition for the rule to apply.
| Condition | Description | Example |
|---|---|---|
| Calls to numbers starting with prefix | Dialed number begins with one of the listed prefixes. Separate multiple prefixes with semicolons. | 00;123;88 |
| Calls from extension(s) | Limit the rule to a specific extension or range of extensions | 100-120 |
| Calls to numbers with certain digits | Match by total length of the dialed number. Separate multiple lengths with semicolons. | 8;10;12 |
| Calls from extension group(s) | Limit the rule to specific extension groups |
Common patterns:
| Pattern | Meaning |
|---|---|
0 | Calls dialed with a leading 0 (the typical external-call prefix) |
00 | International calls (when 00 is the international prefix) |
9 | Some legacy plans use 9 as the trunk-access prefix |
Step 4 — Choose the trunks
In the Make outbound calls on section, select up to six trunks to use for this rule. The order matters when Routing Strategy is set to Prioritized.
| Setting | Description |
|---|---|
| Trunk 1 … Trunk 6 | Up to six SIP trunks; ordering controls failover sequence under Prioritized strategy |
Step 5 — Transform the dialed number (optional)
Before VeloPBX sends the call out on the chosen trunk, you can rewrite the called number:
| Transform | Description | Example |
|---|---|---|
| Strip Digits | Remove the first N digits of the dialed number | Strip 2 from 00 442012345678 → 442012345678 |
| Prepend | Add a string to the front of the dialed number | Prepend +44 to 2012345678 → +442012345678 |
Combine the two when the user-friendly dial format and the format your provider expects differ. Most carriers expect E.164 (+CCAREASUBSCRIBER).
Step 6 — Outbound Caller ID
| Setting | Description |
|---|---|
| Outbound Caller ID | The number presented to the called party for calls routed by this rule |
You can override the Caller ID at multiple layers (rule, trunk, extension). The most specific value wins.
Step 7 — Save
Click Save.
Office Hours and Holidays
Open the Office Hours tab inside the rule to control when the rule is active.
| Option | Behavior |
|---|---|
| Use default Global Office Hours | The rule follows the tenant-wide schedule |
| Use Specific Office Hours | Define a custom schedule that applies only to this rule |
Important: If a call is placed outside the configured Office Hours, the rule is blocked and the outbound call fails, even if every other condition matches. This is the standard mechanism for after-hours policy enforcement.
You can also restrict the rule by holidays. Use the Holidays section to pick one or more entries from the tenant’s Global Holiday List. During those holidays the rule is blocked, regardless of the Office Hours setting.
To allow outbound calls at all times, do not select any holidays and configure Office Hours to cover every day.
Least-Cost Routing (LCR)
LCR uses prefix matching plus rule priority to send calls out over the cheapest trunk that can deliver them.
Pattern:
- Create one Outbound Rule per destination class (local, mobile, international, etc.) with the appropriate prefixes.
- For each rule, list the trunks in cost order with Routing Strategy = Prioritized. Cheapest trunk first.
- If the cheapest trunk is down or the call fails, VeloPBX automatically moves to the next trunk in the list.
- Use Priority between rules to handle overlapping prefixes — for example, a specific country code rule (Priority 1) wins over a generic international rule (Priority 10).
Sample Configurations
Example 1 — Default rule for all outbound calls
| Setting | Value |
|---|---|
| Name | Outbound — Default |
| Priority | 10 |
| Prefix | (none — match all) |
| Trunk | {{TRUNK_NAME}} |
| Caller ID | +374 60 123456 |
Example 2 — International calls on a dedicated trunk
| Setting | Value |
|---|---|
| Name | International |
| Priority | 5 |
| Prefix | 00 |
| Trunk | International-Trunk |
| Strip Digits | 2 (remove the 00) |
| Prepend | + |
Example 3 — Sales team only, premium trunk
| Setting | Value |
|---|---|
| Name | Sales — Premium |
| Priority | 1 |
| Calls from extension(s) | 200-220 |
| Trunk | Premium-Trunk |
| Caller ID | +374 60 123456 |
Next Step
Last updated: 2026-05-01