Resolving FreePBX and Sipura/Linksys Supplementary Service and Feature Code Conflicts
One problem faced by users of FreePBX that have Sipura or Linksys
endpoints (VoIP adapters, etc.) is deciding how to set the
Supplementary Services and Feature Codes on the endpoint so that there
is no conflict between FreePBX features and Sipura/Linksys features.
The presumption here is that we want FreePBX to handle as much as
possible, and only allow the endpoints to perform functions that they
must provide - for example, if the endpoint provides dial tone, then
only the endpoint can provide stutter dial tone as a message waiting
indication. So we can't just disable all the endpoint features and
feature codes and expect everything to work.
Some may feel that it would be more efficient to allow the endpoint
to handle certain functions, and while that may be true in the short
term, it has the potential to "break" something when new features are
added to FreePBX, or when there are unintended feature interactions
that FreePBX could resolve if it had control of the feature. Also,
sometimes the default Sipura/Linksys feature codes do not have the same
meaning as the equivalent FreePBX feature codes, and the presumption is
that in order to keep things uniform throughout the system, we want all
extensions to use the same feature codes.
So, here are the suggested settings for the Sipura/Linksys
endpoints (note that this document covers VoIP lines only, and has
nothing to do with PSTN lines on the Sipura/Linksys 3xxx series).
Supplementary Services
Each of these services can be set to "Yes" or "No". First the
parameter name, then the description, then the suggested setting, and
underneath any notes, conflicts, etc.
When you are all finished your Supplementary Service Subscription
settings should look something like this (note that this may be
slightly different from your unit, depending on the actual model you
have):
If your device is a multi-line unit, don't forget to make these changes in the Line tab associated with each line of the device that is used with FreePBX!
Vertical Service Activation Codes (Feature Codes)
If you have used the suggested settings EXACTLY as shown above,
then you don't have to change or blank out many of the Vertical Service
Activation Codes (found under Admin login, select Advanced view, Regional
tab). The following are the changes that I do suggest. The yellow
highlighted text shows the existing code assignments in a PAP2 - where
followed by NA
that means the feature is deactivated (again, only IF you followed the
suggested settings above EXACTLY) so you don't have to worry about that
code. Where a feature needs to stay activated but there's a potential
code conflict, I suggest how to deal with it. In this, I make certain
assumptions - for example, that you don't want to be able to
accidentally deactivate a feature such as call waiting, caller ID, or
distinctive ringing.
Note that after you make these changes you MUST go to the device's User
tab(s) and set the dropdowns in the Supplementary Service Settings
section to known values, otherwise the device may not work as expected.
More on that in a moment.
This list is obviously subject to change if FreePBX adds or changes feature codes! It is current as of December 20, 2006:
First column (PAP2):
Call Return Code: *69 NA
Call Back Act Code: *66 NA
Cfwd All Act Code: *72 NA
Cfwd Busy Act Code: *90 NA
Cfwd No Ans Act Code: *92 NA
Cfwd Last Act Code: *63 NA
Block Last Act Code: *60 NA
Accept Last Act Code: *64 NA
CW Act Code: *56 (Delete this entry)
CW Per Call Act Code: *71 (Delete this entry)
Block CID Act Code: *67 NA
Block CID Per Call Act Code: *81 NA
Block ANC Act Code: *77 NA
DND Act Code: *78 NA
CID Act Code: *65 (Delete this entry)
CWCID Act Code: *25 (Delete this entry)
Dist Ring Act Code: *26 (Delete this entry)
Speed Dial Act Code: *74 NA
Secure No Call Act Code: *17 NA
Secure One Call Deact Code: *19 NA
Attn-Xfer Act Code: (Blank by default)
Second column (PAP2):
Blind Transfer Code: *98 (Same as FreePBX voicemail but used in different contexts, suggest leaving as is but change if desired)
Call Back Deact Code: *86 NA
Cfwd All Deact Code: *73 NA
Cfwd Busy Deact Code: *91 NA
Cfwd No Ans Deact Code: *93 NA
Cfwd Last Deact Code: *83 NA
Block Last Deact Code: *80 NA
Accept Last Deact Code: *84 NA
CW Deact Code: *57 (Delete this entry)
CW Per Call Deact Code: *70 (Suggest leaving as is wherever *70 is PSTN standard for per call call waiting deactivation)
Block CID Deact Code: *68 NA
Block CID Per Call Deact Code: *82 NA
Block ANC Deact Code: *87 NA
DND Deact Code: *79 NA
CID Deact Code: *85 (Delete this entry)
CWCID Deact Code: *45 (Delete this entry)
Dist Ring Deact Code: *46 (Delete this entry)
Secure All Call Act Code: *16 NA
Secure One Call Act Code: *18 NA
Conference Act Code: (Blank by default)
Modem Line Toggle Code: *99
(Not in all adapters, conflicts with FreePBX "Check Recording", suggest
you delete UNLESS you have a device that attempts to send data through
the adapter, in which case it might be better to change the "Check
Recording" code in FreePBX to some unused code like *76)
AFTER you make the above changes and save them (by clicking on "Save Settings"), go to the device's User tab(s) (User 1 and User 2 in a PAP2, SPA-2000, etc.), Supplementary Service Settings section, and make sure that the options there are set like this:
If you need to change any of these, be sure to once again click
"Save Settings" at the bottom of the page, and don't forget to do this
in each User tab if there is more than one.
List of default feature codes
Here is a list of default feature codes used by Linksys/Sipura, FreePBX, and Trixbox. Code conflicts are shown in red (for conflicts of dissimilar functions) or orange (for conflicts of similar functions):
** FreePBX: Call Pickup (Can be used with GXP-2000)
*0 FreePBX: Speeddial prefix
*11 FreePBX: User Logon
*12 FreePBX: User Logoff
*16 Linksys/Sipura: Make all outbound calls secure
*17 Linksys/Sipura: Make all outbound calls not secure
*18 Linksys/Sipura: Make the next outbound call secure. This operation is redundant if all outbound calls are secure by default.
*19 Linksys/Sipura: Make the next
outbound call not secure. This operation is redundant if all outbound
calls are not secure by default.
*25 Linksys/Sipura: Enable Call Waiting Caller-ID generation
*26 Linksys/Sipura: Enable Distinctive Ringing
*30 FreePBX: Blacklist a number
*31 FreePBX: Remove a number from the blacklist
*32 FreePBX: Blacklist the last caller
*34 FreePBX: Perform dictation
*35 FreePBX: Email completed dictation
*43 FreePBX: Echo Test
*45 Linksys/Sipura: Disable Call Waiting Caller-ID generation
*46 Linksys/Sipura: Disable Distinctive Ringing
*52 FreePBX: Call Forward No Answer/Unavailable Activate
*53 FreePBX: Call Forward No Answer/Unavailable Deactivate
*54 FreePBX: User lntercom Allow
*55 FreePBX: User lntercom Disallow
*57 Linksys/Sipura: Disable Call Waiting on all calls
*60 FreePBX: Speaking Clock
*60 Linksys/Sipura: Block the last inbound call
*61 Trixbox: Weather
*62 Trixbox: Wakeup
*63 Linksys/Sipura: Forward the last inbound or outbound calls to the target specified after the activation code
*64 Linksys/Sipura: Accept the last outbound call. Let it ring through when DND or Call Forward All is in effect
*65 FreePBX: Speak Your Exten Number
*65 Linksys/Sipura: Enable Caller-ID Generation
*66 Linksys/Sipura: Callback when the last outbound call is not busy
*67 Linksys/Sipura: Block CID on all outbound calls
*68 Linksys/Sipura: Unblock CID on all outbound calls
*69 FreePBX: Call Trace
*69 Linksys/Sipura: Call the last caller.
*70 FreePBX: Call Waiting - Activate
*70 Linksys/Sipura: Disable Call Waiting for the next call
*71 FreePBX: Call Waiting - Deactivate
*71 Linksys/Sipura: Enable Call Waiting for the next call
*72 FreePBX: Call Forward All Activate
*72 Linksys/Sipura: Forward all calls to the target specified after the activation code
*73 FreePBX: Call Forward All Deactivate
*73 Linksys/Sipura: Cancel call forward all
*74 FreePBX: Call Forward All Prompting Deactivate
*74 Linksys/Sipura: Assign a speed dial number
*75 FreePBX: Set user speed dial
*77 FreePBX: Save Recording
*77 Linksys/Sipura: Block all anonymous calls
*78 FreePBX: DND Activate
*78 Linksys/Sipura: Enable Do Not Disturb
*79 FreePBX: DND Deactivate
*79 Linksys/Sipura: Disable Do Not Disturb
*80 FreePBX: Intercom prefix
*80 Linksys/Sipura: Cancel blocking of the last inbound call
*81 Linksys/Sipura: Block CID on the next outbound call
*82 Linksys/Sipura: Unblock CID on the next inbound call
*83 Linksys/Sipura: Cancel call forward last
*84 Linksys/Sipura: Cancel Accept Last
*85 Linksys/Sipura: Disable Call-ID Generation
*86 Linksys/Sipura: Cancel callback
*87 Linksys/Sipura: Unblock all anonymous calls
*90 FreePBX: Call Forward Busy Activate
*90 Linksys/Sipura: Forward busy calls to the target specified after the activation code
*91 FreePBX: Call Forward Busy Deactivate
*91 Linksys/Sipura: Cancel call forward busy
*92 FreePBX: Call Forward Busy Prompting Deactivate
*92 Linksys/Sipura: Forward no-answer calls to the target specified after the activation code
*93 Linksys/Sipura: Cancel call forward no-answer
*97 FreePBX: My Voicemail
*98 FreePBX: Dial Voicemail
*98 Linksys/Sipura: Blind transfer current call to the target specified after the activation code
*99 FreePBX: Check Recording
*99 Linksys/Sipura: Modem Line Toggle Code