Ctrl K
ring2all.com

Feature Codes Module Documentation

Table of Contents

  1. Module Overview (Technical)
  2. Module Overview (Commercial/Business)
  3. Module Overview (End User/Administrator)
  4. Configuration Fields Reference
  5. Feature Categories Reference
  6. Common Scenarios & Examples
  7. Limitations & Important Notes
  8. Troubleshooting Tips
  9. Glossary
  10. Suggested UI Improvements

---

1. Module Overview (Technical)

What Are Feature Codes?

Feature Codes are dial-activated shortcuts that trigger specific telephony features. When a user dials a code like 67 (anonymous calling) or 72 (call forward), the PBX executes the corresponding feature logic.

Architecture

Plaintext
┌─────────────────────────────────────────────────────────────────┐
│                    Feature Codes System                         │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  User dials: *72 (Call Forward All)                             │
│       │                                                         │
│       ▼                                                         │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │              Dialplan Feature Code Lookup                │   │
│  │  SELECT * FROM feature_codes                             │   │
│  │  WHERE (custom_number = '*72' OR default_number = '*72') │   │
│  │    AND enabled = true                                    │   │
│  └──────────────────────────────────────────────────────────┘   │
│       │                                                         │
│       ▼                                                         │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │              Execute Feature Handler                     │   │
│  │                                                          │   │
│  │  ├─ call_forward_all → prompt for destination           │   │
│  │  ├─ dnd_toggle → toggle DND status in database          │   │
│  │  ├─ agent_login → log agent into queue                  │   │
│  │  ├─ voicemail_access → transfer to voicemail            │   │
│  │  └─ etc.                                                │   │
│  │                                                          │   │
│  └──────────────────────────────────────────────────────────┘   │
│       │                                                         │
│       ▼                                                         │
│  Play confirmation tone or prompt → Hangup                      │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Key Tables

TablePurpose
public.feature_codesCode definitions (default_number, custom_number, enabled)
public.feature_categoriesCategory groupings

Key Files

FileDescription
admin/apps/web/src/modules/featureCodes/Frontend module
admin/apps/web/src/i18n/en/featureCodes.jsonEnglish translations
telephony/freeswitch/conf/dialplan/default/Feature code dialplan entries
---

2. Module Overview (Commercial/Business)

Business Value

Feature Codes provide standardized telephony shortcuts:

BenefitDescription
Industry StandardUses familiar codes (67, 72, etc.)
User EmpowermentUsers control their own settings
No Training NeededMany codes are universal
CustomizableOverride default codes per organization

Key Categories

CategoryExample Features
Call ForwardingForward all, forward busy, DND
Call CenterAgent login/logout, queue toggle
Spy ModesListen, whisper, barge
Business ServicesWakeup call, hotdesking, paging
RecordingsVoicemail access, custom recording
Test ServicesEcho test, time announcement
---

3. Module Overview (End User/Administrator)

What Can You Do?

  • Enable/disable feature codes globally
  • Customize dial codes (change 67 to 777 if needed)
  • View all available features by category
  • Search for specific features

Administrator Workflow

Plaintext
┌─────────────────────────────────────────────────────────────────┐
│                 Managing Feature Codes                          │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  1. Select Category                                             │
│     └─ Call Forwarding                                         │
│                                                                 │
│  2. View Feature Codes in Category                              │
│     ├─ Toggle No Answer Forwarding (*92) [✓ Enabled]           │
│     ├─ Toggle DND (*76) [✓ Enabled]                            │
│     ├─ Toggle Follow Me (*21) [✗ Disabled]                     │
│     └─ Clear All Settings (*73) [✓ Enabled]                    │
│                                                                 │
│  3. Customize a Code                                            │
│     ├─ Feature: Toggle DND                                     │
│     ├─ Default: *76                                            │
│     └─ Custom: *77 (override to use *77 instead)               │
│                                                                 │
│  4. Save Changes                                                │
│     └─ Users can now dial *77 to toggle DND                    │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Quick Tips

TIP
Leave Custom Blank: If you want the default code, leave the custom number field empty.
TIP
Disable Unused Features: Disable codes you don't want users to access.
CAUTION
Code Conflicts: Custom codes must not conflict with extensions or other feature codes.

---

4. Configuration Fields Reference

Feature Code Fields

FieldDescriptionExample
Feature CodeName of the featureToggle DND
Default NumberStandard dial code76
Custom NumberOverride code77 (leave blank for default)
DescriptionWhat the feature doesToggle Do Not Disturb on/off
EnabledWhether users can use itOn/Off

Category List

CategoryDescription
BlacklistBlock/unblock callers
Business ServicesWakeup, reminders, hotdesking
Call Center FeaturesAgent login, queue management
Call ForwardingForward calls, DND
Call Forward FeaturesSet/cancel forwarding destinations
On Call FeaturesTransfer, pickup, recording
Call Park FeaturesPark and retrieve calls
Do Not DisturbDND toggle and cancel
DirectoryDial-by-name directory
Recordings & AnnouncementsVoicemail access, custom recordings
Spy ModesListen, whisper, barge
Test ServicesEcho, time, volume tests
---

5. Feature Categories Reference

Blacklist

FeatureDefault CodeDescription
Add to Blacklist30Add a number to blocked callers list
Remove from Blacklist31Remove a number from blocked list
Blacklist Last Caller32Block the last person who called you

Business Services

FeatureDefault CodeDescription
Wakeup Call (Self)68Schedule a wakeup call to your extension
Remote Wakeup69Schedule wakeup call to another extension
Lock/Unlock Phone55Secure your extension with PIN
Hotdesking Login/Logout80Login to a shared phone
Anonymous Calling67Hide your caller ID
Paging8Page a group of extensions

Call Center Features

FeatureDefault CodeDescription
Queue Toggle50Join/leave a specific queue
Queue Pause Toggle51Pause/resume in a queue
Global Queue Toggle52Join/leave all queues
Global Pause Toggle53Pause/resume in all queues
Agent Login54Log into the call center
Agent Logout55Log out of the call center
Agent Status59Hear your current status

Call Forwarding

FeatureDefault CodeDescription
Toggle No Answer92Enable/disable forward on no answer
Set No Answer Dest93Set destination for no answer
Toggle DND76Enable/disable Do Not Disturb
Toggle Follow Me21Enable/disable Follow Me
Clear All Settings73Reset all forwarding settings
Time Condition Toggle99Override time-based routing

Call Forward Set/Cancel

FeatureDefault CodeDescription
Call Forward All72Forward all calls to a number
Call Forward All Cancel73Cancel forward all
Call Forward Busy90Forward when busy
Call Forward Busy Cancel91Cancel forward busy
Call Forward No Answer92Forward on no answer
Call Forward No Answer Cancel93Cancel forward no answer

On Call Features

FeatureDefault CodeDescription
Attended Transfer2Transfer with consultation
Blind Transfer##Transfer without consultation
Direct PickupAnswer a specific ringing phone
Group Pickup8Answer any ringing phone in your group
One-Touch Recording1Start/stop recording current call
Pause Outbound Recording0Pause recording on outbound call
Park Call70Park the current call

Call Park Features

FeatureDefault CodeDescription
Call Park70Park call in a parking lot
Call Park Retrieve71Retrieve a parked call

Do Not Disturb

FeatureDefault CodeDescription
DND Toggle78Enable Do Not Disturb
DND Cancel79Disable Do Not Disturb

Directory

FeatureDefault CodeDescription
Dial by Name411Search and dial by name
Directory Search411Same as dial by name

Recordings & Announcements

FeatureDefault CodeDescription
Custom Recording732Record a custom announcement
Direct Voicemail97Access your voicemail
Remote Voicemail98Access voicemail from external phone

Spy Modes

FeatureDefault CodeDescription
Spy (Normal)33Listen to a call silently
Spy (Whisper)34Listen and speak to one party
Spy (Barge)35Join the call as third party
Spy (Random)36Listen to a random active call

Test Services

FeatureDefault CodeDescription
Speak Date/Time60Hear current date and time
Speak Extension65Hear your extension number
Echo Test9196Test audio (echo back your voice)
Simulate Incoming Call9197Test your phone ringing
Test Music on Hold9664Hear MOH audio
Volume Test9198Test speaker volume
---

6. Common Scenarios & Examples

Scenario 1: Disable Spy Features

Problem: Don't want supervisors to spy on calls.

Solution:

  1. Go to Feature Codes → Spy Modes
  2. Disable all spy mode codes
  3. Save

Result: Spy codes no longer work.

Scenario 2: Change DND Code

Problem: Company standard uses 77 for DND, not 76.

Solution:

  1. Go to Feature Codes → Do Not Disturb
  2. Find "DND Toggle"
  3. Enter 77 in Custom Number field
  4. Save

Result: Users dial 77 to toggle DND.

Scenario 3: Restrict Forwarding

Problem: Prevent users from forwarding calls externally.

Solution:

  1. Go to Feature Codes → Call Forwarding
  2. Disable "Call Forward All" (72)
  3. Keep "Toggle No Answer" enabled (internal only)
  4. Save

Result: Users can't forward all calls but can set no-answer forwarding.

---

7. Limitations & Important Notes

Technical Limitations

WARNING
Custom Number Conflicts: Custom codes must not conflict with extensions, other feature codes, or emergency numbers.
WARNING
Domain Specific: Feature codes can be configured per domain—changes only affect selected domain.

Best Practices

  1. Document Changes: Note why you changed default codes
  2. Train Users: Inform users of any custom codes
  3. Disable Unused: Reduce confusion by disabling features not in use
  4. Test After Changes: Verify codes work as expected

Reserved Code Ranges

Some codes are standard across telephony systems:

Code RangeTypical Use
67Anonymous calling (industry standard)
69Call return
72/73Call forwarding (industry standard)
78/79DND (industry standard)
911Emergency (never override)
---

8. Troubleshooting Tips

Common Issues

SymptomPossible CauseSolution
Code not workingFeature disabledEnable the feature code
Wrong feature triggersCustom code conflictCheck for duplicate codes
Feature not availableCategory disabledEnable the category
"Number not found"Code not in dialplanCheck domain selection

Diagnostic SQL

List all feature codes:

Sql
SELECT fc.name, fc.default_number, fc.custom_number, fc.enabled,
       cat.name as category
FROM public.feature_codes fc
JOIN public.feature_categories cat ON fc.category_id = cat.id
WHERE fc.domain_id = [domain_id]
ORDER BY cat.name, fc.name;

Find code conflicts:

Sql
SELECT 
  COALESCE(fc.custom_number, fc.default_number) as active_code,
  fc.name,
  COUNT(*) as count
FROM public.feature_codes fc
WHERE fc.domain_id = [domain_id] AND fc.enabled = true
GROUP BY active_code, fc.name
HAVING COUNT(*) > 1;

---

9. Glossary

TermDefinition
Feature CodeA dial code that activates a specific telephony feature
Default NumberThe standard code assigned to a feature
Custom NumberAn override code for a specific organization
DNDDo Not Disturb—sends all calls to voicemail
Follow MeRings multiple numbers sequentially
Call Forward AllRedirects all calls to another number
Call ParkPlaces call on hold in a "parking lot" for retrieval
Spy ModeSupervisor feature to listen to active calls
WhisperSpy mode where supervisor can speak to agent only
BargeSpy mode where supervisor joins as third party
Agent LoginCall center agent becomes available for calls
Queue ToggleJoin or leave a specific call queue
---

10. Suggested UI Improvements

The existing i18n is comprehensive. Minor enhancements:

FieldSuggested Addition
customNumberAdd real-time conflict detection
categoryShow feature count badge

UX Enhancements

  1. Conflict Detection: Real-time warning when custom code conflicts with existing codes

  1. Quick Enable/Disable by Category: Toggle button to enable/disable all codes in a category

  1. Export/Import: Export feature code configuration for backup or migration

  1. User Documentation: Generate a PDF of active feature codes for user distribution

  1. Usage Stats: Show how often each feature code is dialed

Visual Improvements

CurrentSuggested
Plain listCategory tabs with icons
Simple toggleColor-coded status badges
Text searchFilter by category + search
---

Lua Script Status ℹ️

Integration Module

ComponentStatusNotes
Feature Codesℹ️ Configuration moduleCodes parsed by core dialplan router
---

Documentation last updated: January 2026*

AI Assistant

👋 Hello! I'm your Ring2All documentation assistant. I can help you find information about configuring and using the Ring2All PBX platform.

How can I help you today?