Set Class of Service¶
Class of Service (COS) controls which features and outbound routes a given extension is allowed to use. Use it to block long-distance / international from front-desk extensions, restrict feature codes, or limit who can park calls.
Before You Start¶
- You've identified the restriction you want (e.g. "no international from extension 1010").
- You've created the relevant outbound routes that COS will gate.
Steps¶
- Go to User Attributes → Class of Service.
- Click + Add Class of Service.
- Configure the COS:
- Name — e.g.
Front Desk(limited) orManager(unlimited). - Description — optional.
- Allow Outbound Routes — check the routes this COS is allowed to use; uncheck the rest.
- Allow Feature Codes — toggle each feature code (Call Park, DND, Call Forward, Conference, Pickup, etc.).
- Allow Time Conditions Override —
Yes/No. - Allow Misc Applications — toggle the Misc Apps this COS may dial.
- Name — e.g.
- Click Submit.
- Click Apply Config.
- Apply COS to extensions:
- Open User Attributes → Extensions → click the extension.
- On the Other (or Advanced) tab, find Class of Service and pick the COS.
- Submit, Apply Config.
Use Case Examples¶
- No international from front desk: Create a COS named
No Internationalthat disallows the International outbound route. Apply to front-desk extensions. - Conference rooms can't dial out: Create a COS that disallows ALL outbound routes. Apply to conference-room phones.
- Lobby phone, internal only + 911: Allow only the Emergency outbound route. Apply.
Verify¶
From an extension assigned the restricted COS, dial a number that should be blocked. UnifiedBX should respond with a busy/congestion tone or a "you are not authorized" prompt. Watch the dialplan log:
asterisk -rvvvv
# Should show "COS: extension X not allowed to use route Y"
Then dial a number that should work to confirm allowed routes still pass.
Common Issues¶
- All extensions still get all routes. No COS is assigned, OR the default COS is permissive. Check the extension's COS field.
- Emergency calls blocked. Critical bug — always allow the Emergency outbound route on every COS, no matter how restrictive otherwise.
- Feature code toggle not honored. The feature code is "globally enabled" in System Attributes → Feature Codes which overrides COS for some codes. Disable globally and re-allow per-COS instead.
- COS not appearing in the extension dropdown. Apply Config wasn't clicked after creating the COS.