FlexPBX Feature Codes Reference
Last Updated: October 14, 2025 02:00 AM
System: Asterisk 18.12.1
๐ Quick Reference Card
| Code | Feature | Description |
| ------ | --------- | ------------- |
| \*43 | Echo Test | Test audio (hear yourself) |
| \*44 | Time/Clock | Hear current date and time |
| \*45 | Queue Login | Login to support queue |
| \*46 | Queue Logout | Logout from support queue |
| \*48 | Queue Status | Hear queue call count and agents |
| \*77 | MOH + Stats | Hear queue stats then music on hold |
| \*78 | Music on Hold | Preview what callers hear on hold |
| \*97 | Voicemail | Access your voicemail box |
๐งช Diagnostic & Testing
\*43 - Echo Test
Purpose: Test audio quality and verify two-way audio is working
What happens:
Use when:
- Setting up a new phone
- Troubleshooting one-way audio
- Testing after network changes
- Verifying codec quality
- Call answers
- System announces: "Today is [Day], [Month] [Date], [Year]. The time is [Hour]:[Minute] [AM/PM]"
- Automatically hangs up after announcement
- Testing text-to-speech functionality
- Verifying system time is correct
- Quick audio test with known output
- Training users on feature codes
- Call answers
- System adds you to queue
- Plays: "You are now logged into the support queue"
- You'll now receive queue calls
- Automatically hangs up
- Call answers
- Plays: "You are already logged into the queue"
- No action taken
- Automatically hangs up
- Adds
PJSIP/[extension]to support queue - Uses dynamic membership (not in queues.conf)
- Membership persists until logout or restart
- Uses custom prompt:
callcueue-login - Call answers
- System removes you from queue
- Plays: "You are now logged out of the support queue"
- You'll stop receiving queue calls
- Automatically hangs up
- Call answers
- Plays: "You are not currently logged into the queue"
- No action taken
- Automatically hangs up
- Removes
PJSIP/[extension]from support queue - Immediate effect - no more calls routed to you
- Uses custom prompt:
callcueue-logout - Call answers
- Announces: "There are [X] calls waiting"
- Then: "[Y] agents logged in" (uses agent-loginok prompt)
- Automatically hangs up
- Checking if anyone needs help
- Verifying you're logged in
- Checking queue load before logging in
- Supervisors checking queue health
- "There are 3 calls waiting. 2 agents logged in"
- "There are 0 calls waiting. 1 agent logged in"
- Reads
QUEUEWAITINGCOUNT(support) - Reads
QUEUEMEMBERCOUNT(support) - Real-time data from queue
- Call answers
- Announces call count (number only)
- Waits 1 second
- Plays music on hold for 120 seconds (2 minutes)
- Automatically hangs up after 2 minutes or if you hang up first
- Testing music on hold configuration
- Previewing what callers hear while waiting
- Checking queue status while hearing MOH
- Quick queue check without hanging up immediately
- Uses MOH class:
default - Timeout: 120 seconds
- Shows real-time queue count
- Call answers
- Plays music on hold for 120 seconds (2 minutes)
- Automatically hangs up after 2 minutes or if you hang up first
- Testing new MOH audio files
- Verifying MOH is working
- Checking audio quality of hold music
- Previewing before deploying to production
- Uses MOH class:
default - Timeout: 120 seconds
- Can be interrupted by hangup
- Files location:
/var/lib/asterisk/moh/ - Config file:
/etc/asterisk/musiconhold.conf - Supports: Local files, Icecast, Shoutcast
- Formats: ulaw, gsm, wav
- Call answers
- Prompts for password (if not set, may skip)
- Main voicemail menu:
- Press 1 - Listen to new messages
- Press 2 - Change folders
- Press 3 - Advanced options
- Press 0 - Mailbox options
- Press \* - Exit
- During playback:
- 3 - Delete message
- 5 - Repeat message
- 6 - Next message
- 7 - Previous message
- 9 - Save to folder
- Uses
VoicemailMain(${CALLERID(num)}@flexpbx) - Automatically detects your extension
- Messages stored in:
/var/spool/asterisk/voicemail/flexpbx/[extension]/ - Supports greetings, PIN, folders
- System may ask you to set a PIN
- Follow prompts to record your name
- Record unavailable and busy greetings
- \*97 - Check voicemail daily
- \*44 - Quick time check
- \*43 - Test audio first
- \*78 - Verify you can hear audio
- Dial \*43 - Test audio is working
- Dial \*48 - Check queue status
- Dial \*45 - Login to queue
- Wait for calls!
- Dial \*48 - Check how many calls waiting
- Dial \*97 - Check voicemail between calls
- Dial \*46 - Logout from queue
- Dial \*48 - Verify you're logged out
- \*48 - Real-time queue status
- \*77 - Queue status + MOH test
- \*78 - Test hold music quality
- \*43 - Test audio path
- \*44 - Verify system time
- \*78 - Verify MOH working
callcueue-login- Login success (5.8 sec)callcueue-logout- Logout success (7.5 sec)callcueue-loged-in-to-out-prompt- Already logged in (8.3 sec)callcueue-loged-out-to-in-prompt- Already logged out (11.0 sec)agent-loginok- Agent confirmationqueue-thereare- "There are"queue-callswaiting- "calls waiting"- Plus numbers 0-9 for SayNumber()
- Queue name:
support - Strategy: ringall
- Timeout: 15 seconds per agent
- Retry: 5 seconds
- Music on hold: default class
- Context:
flexpbx - Mailboxes: 2000-2003
- Format: wav
- Max message: 180 seconds
- Max messages: 100
- Check dialplan loaded:
asterisk -rx "dialplan reload" - Verify in context:
asterisk -rx "dialplan show flexpbx-internal" - Check logs:
tail -f /var/log/asterisk/messages - Test with \*43 first (echo test)
- If echo works, test \*44 (time announcement)
- Check sound files:
ls /usr/share/asterisk/sounds/ - Verify permissions: Files owned by asterisk:asterisk
- Check queue exists:
asterisk -rx "queue show support" - Test login: Dial \*45
- Check status: Dial \*48
- Verify membership:
asterisk -rx "queue show support" - Check module:
asterisk -rx "module show like voicemail" - Should see:
appvoicemailimap.so - If not:
asterisk -rx "module load appvoicemailimap.so" - Test: Dial \*97
- default - Main MOH class
- support - Main support queue
- sales - Sales queue
Expected result: Should hear yourself clearly with ~0.5 second delay
\*44 - Time/Clock Announcement
Purpose: Hear the current date and time spoken aloud
What happens:
Use when:
Example output: "Today is Sunday, October 14th, 2025. The time is 2:00 AM"
๐ง Queue Management (Agents)
\*45 - Queue Login
Purpose: Login to the support queue to receive calls
What happens:
If NOT already logged in:
If ALREADY logged in:
Technical details:
\*46 - Queue Logout
Purpose: Logout from the support queue to stop receiving calls
What happens:
If currently logged in:
If NOT logged in:
Technical details:
\*48 - Queue Status
Purpose: Hear how many calls are waiting and how many agents are logged in
What happens:
Use when:
Example output:
Technical details:
๐ต Music on Hold Features
\*77 - MOH Preview + Queue Stats
Purpose: Hear queue statistics followed by music on hold preview
What happens:
Use when:
Technical details:
\*78 - Music on Hold Preview
Purpose: Hear exactly what callers hear when placed on hold
What happens:
Use when:
Technical details:
Configure MOH:
๐ฌ Voicemail
\*97 - Voicemail Main
Purpose: Access your voicemail box to listen to messages
What happens:
Voicemail Options:
Technical details:
First time setup:
๐ Feature Code Usage Guide
For Regular Users
Daily use codes:
When troubleshooting:
For Queue Agents
At start of shift:
During shift:
At end of shift:
For Supervisors/Admins
Monitoring:
Testing:
๐ง Technical Details
Extension Context
All feature codes are in context:
flexpbx-internalAudio Files Used
Queue prompts (custom):
System prompts (Asterisk default):
Queue Configuration
Voicemail Configuration
๐ฏ Quick Troubleshooting
Feature code not working?
Audio not playing?
Queue not working?
Voicemail not working?
๐ Configuration Files
Dialplan
File:
/etc/asterisk/extensions.confSection:
[flexpbx-internal]Lines: 930-1011
Music on Hold
File:
/etc/asterisk/musiconhold.confClasses configured:
Voicemail
File:
/etc/asterisk/voicemail.confContext:
[flexpbx]Mailboxes: 2000, 2001, 2002, 2003
Queue
File:
/etc/asterisk/queues.confQueues:
๐ Reload Commands
Reload dialplan (after changing feature codes):
asterisk -rx "dialplan reload"Reload voicemail (after changing mailbox settings):
asterisk -rx "module reload appvoicemailimap.so"Reload MOH (after changing music files):
asterisk -rx "module reload res_musiconhold.so"Reload queues (after changing queue settings):
asterisk -rx "module reload app_queue.so"๐ User Training Guide
Print and Post This:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ FLEXPBX FEATURE CODES CHEAT SHEET โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฃ
โ *43 โ Echo Test (Test Audio) โ
โ *44 โ Time/Date Announcement โ
โ *45 โ Queue Login โ
โ *46 โ Queue Logout โ
โ *48 โ Queue Status โ
โ *77 โ Queue Stats + Hold Music โ
โ *78 โ Hold Music Preview โ
โ *97 โ Voicemail โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโAgent Quick Start:
If problems:
System: FlexPBX v1.0
Support: Check /var/log/asterisk/messages for errors
Documentation: This file + /home/flexpbxuser/publichtml/api/ASTERISKAPI_INTEGRATION.md