Feature Codes
From Bizfon Wiki
Feature codes are traditionally used by users to control the PBX. When the first PBX was invented, there was nothing like a web interface where you could set up your preferences, so the designers decided to define a specific number space for controlling the behavior of the PBX. Traditionally, these codes start with a star symbol followed by one or two digits. The IP PBX emulates this behavior, so that users can use the IP phone just like a PBX extension phone.
The default mapping of feature codes can be found in the page Default Feature Codes.
Call Park
Extensions may hold or park a call. When a call is on hold, only the originating phone can pick the call up again; when the call is parked other extensions may pick up the call as well. Holding is done by pushing the hold button on the extension, most SIP user agents support this feature with a special key or a soft key. Parking a call will redirect the call to a park orbit. Even if you disconnect the extension the call will stay there until someone picks the call up or the caller disconnects.
Every hunt group and extension has its own park orbit. The name of the orbit is the same as the name of the account.
Usually user agents don't have a special key for parking a call. If they have one, this key will essentially redirect the call to the park orbit with a blind transfer. Therefore, extension may generally park a call by a blind transfer to the park orbit.
In SIP, a user agent will first put the call on hold before it can send a star code. Sending the star code is executed in a new call that has the destination of the star code (e.g. <sip:*85@test.com>). When the PBX receives such a call, it will search the last call that this extension received or initiated and will perform the blind transfer of that call to a matching park orbit. It will then play an announcement that the call has been parked and hang up.
If the extension subscribes for the LED status information, it will light up the respective LED after the call has been parked on the park orbit.
See Park and Pickup for more information.
Call Park Retrieve
After a call has been parked, there must be a way to retrieve the call from the park orbit. The retrieve code will go through the list of park orbits of the user and pick up the first park orbit where a call has been parked.
Note that park orbits may have more than one call parked. In this case the park orbit acts as waiting queue. The call park retrieve will pick the first call in the orbit, so that the callers will leave the queue after the first-in-first-out principle.
See Park and Pickup for more information.
Call Pickup
Call pickup searches for unconnected calls and redirects them to the extension. The other extension that might be ringing will be canceled. The typical case for call pickup is when a colleague is temporarily not available, but you want to take the call.
The PBX searches first the hunt groups where the extension is a member for a call that can be picked up. If no call was found, it tries the extension's park orbit. If the user specifies the park orbit after the pickup code, the PBX will search only the indicated park orbit. However, the extension must be member of a hunt group, where the pickup destination is also a group member. This is necessary to protect unauthorized call pickups.
More information on parking and pickup can be found in Park and Pickup.
Call Return
Call Return will dial the last number that has been missed. This function is useful for SIP devices that don't keep a lit of missed calls (e.g. ATA). Most SIP devices with a display have this function built-in, and the user may see the caller-ID in the screen before returning the call.
The call return function stores only one number. When the extension makes a call that gets connected, the call return number is cleared. This makes sure that a number is called only once, and users can dial the call return code without talking to the same number again.
Redial
The Redial is similar to call return, but it does not call the last incoming number, it calls the last dialed number again. The redial number is never deleted, users can redial numbers even if the call established. The redial number and the call return numbers are stored independently.
Transfer
Some devices do not have a transfer button. For examples, when using an ATA there is usually no way to initiate a transfer except by dialing a special code. The transfer code initiates a blind transfer of the last call on hold to the provided destination. The destination must be entered directly behind the star code.
Hot Desking
Hot Desking is described in a seperate page.
Call Forward
There are three events that may trigger the forwarding of a call:
All means that the call is forwarded always, independently of an event.
Busy means that a call is forwarded if the extension is busy. The busy condition must be returned by the device, the PBX does not check the internal state for the busy condition. This makes it possible to handle the busy condition if several devices register for the same extension number. When several extensions are used, the busy condition checks if all devices are busy.
No Answer means that no device picked up after a certain timeout. The timeout is a domain setting that can be overwritten by an extension setting.
There are six star codes to handle the call forwarding. Three codes are used to enable the call forwarding condition. If the user dials this star code, the PBX will prompt the user for the redirection number.
The other codes are used for turning the redirections off. When the user dials these star codes, the user will hear a prompt that the feature has been deactivated.
Block CID
By default, the PBX will try to present the caller-ID on outgoing calls. Sometimes, users don't want to show the extension number. By using the block CID code the PBX will try to hide the CID on all subsequent calls until the user deactivates the blocking.
Calls from one extension to another extension will always show the caller-ID.
Block Anonymous Calls
When the PBX receives a call where the caller-ID is neither an extension number nor consists of a valid caller-ID, it will assume that this is an anonymous caller ID. A call-ID is treated as valid when it consists only of the characters 0-9. It may have a '+' character in the beginning.
By default, the PBX will allow anonymous calls. However, some users don't like to receive such calls. When the feature is enabled, those calls are rejected with a IVR prompt which explains that the caller-ID could not be identified and the user accepts only calls with a valid caller-ID.
DND
Do Not Disturb (DND) is used to temporarily reject all incoming calls for all devices registered with this extension. The two star codes are used to turn DND on and off.
DND also applies to hunt groups. If a member of a hunt group has set its extension number to DND, the hunt group will skip that extension. This is different from redirect all, which will not redirect calls from a hunt group.
Many SIP devices have a dedicated DND button. Most implementations handle DND locally on the device. However, when this function is used, the DND applies only to the specific device and not to the extension and it usually does not survive reboot cycles.
If the codes for DND on and off are the same, the PBX toggles between the two states. This is useful if you have a phone that just has DND programmed as a speed dial button.
Agent Login and Logout
Extensions may be part of agent groups. These agent groups serialize incoming calls and distribute them to one or more extensions (see Agent Group).
By default, an agent group will consider the extension online at all times. However, by dialing special star codes an agent can control if an agent group will route calls to the extension. This is in addition to the DND status, which does not only block calls from agent groups, but all calls (except for call that come from extensions that have the permission to override DND). That means, an agent group may route a call to a specific extension, if that extension is on the list of agents or the list of escalation agents ("include the following additional agents"), and that extension has at least one registration, is logged in and that extension is not on DND.
If the agent dials the agent login/logout code without a specific agent group behind the code (e.g. *64 or *65), than the PBX will set the login or logout status of the extension. This status flag can be seen in the web interface as "Agent Logged In". The login status is also visible in the agent group web interface in the agent overview. This status flag affects all agent groups; it does not change the list of agents of a group. A typical usage of this code is when an agent starts working in the morning or goes home in the evening.
If the codes for Agent Login and Logout are the same, the PBX toggles between the two states. This is useful if you have a phone that just has login and logout programmed as a speed dial button.
Sometimes it makes sense to let agents dynamically put themselves on an agent group or take themselves out of an agent group. If an agent has domain administration permission, he can easily do that by putting him on the list of agents in the web interface. However, most agents do not have domain administrator rights, therefore the PBX provides a star code that performs the same task without having to log into the web interface. In order to allow this, the setting "Extensions that may jump in or out" must list the extension or use a wildcard in the settings of the agent group. When an extension dials the login or logout code with an agent group name behind the code (e.g. *64701 for logging into agent group 701), then the PBX adds that agent at the end of the list of agents for that group, or takes the agent from the list, respectively (*65701). Dialing this code does not affect the general login status of that extension. That means if an agent adds himself to an agent group but is not logged in, he will not receive calls (he need to log in by dialing the login code).
Go To Voicemail
This star code is just a quick way to get to the mailbox.
Intercom
By using the Intercom prefix, you can directly call another extension. The other phone is asked to pick up immediately and to establish a two-way audio conversation.
Intercom is different from Paging in the way that Intercom is two-way, one-to-one communications while paging is one-way, one-to-many communications.
Call Extension Cell Phone
This is like a speed dial code that you don't have to set up. By putting the code for calling the cell phone in front of the extension number, you can directly call that extension's cell phone (e.g. *00123 for dialing the cell phone associated with extension 123). The caller will not see the cell phone number, so that the extension's privacy is kept regarding handing out cell phone numbers.
Record Announcement
If you want to record the prompt for an auto attendant, an agent group or an IVR node, you can use the Record star code. The PBX differentiates three cases:
- Attendant: The digits behind the code identify the auto attendant and will record the announcement for the account (e.g. dial *98123 to record the announcement for auto attendant 123).
- IVR Node: The digits behind the code identify the IVR Node and will record the announcement for the account.
- Agent Group: The code needs two arguments. The first argument identifies the queue, and the second argument the prompt. The arguments are separated with a star symbol. The first prompt with index 0 is the welcome prompt; it will not be repeated and it will be played for all callers, no matter if they have to wait or not. The other prompts with the index 1-9 will be repeated in a loop and are only played while the caller has to wait in the loop.
Clear Message Waiting Indicator
When the user dials this star code, the PBX will delete the Message Waiting Indicator (MWI) on the extensions. Usually it should not be possible to clear the MWI indicator manually, but if the extension just does not want to listen to the mailbox and keep the MWI indication silent, this star code will turn the indicator off.
Send Voicemails
When the PBX records a mailbox message, it may store it locally or it may send it via email to the user. Please note that sending a voicemail message per email requires that you have properly set up the email address of the user and of the domain. With the activation and deactivation of this feature you toggle between the methods.
Customer Originated Trace
This useful feature sends the call details of the last calls to the email account of the extension. Instead of writing down the number on a notepad, the user can instead send him an email that contains all the information.
The PBX will include a link to the last number. If you click on this link, the PBX will prompt you for your username and password. Please enter your username in the form "user@domain". If your browser supports saving the login information, the next time when you click on such a link to dial a number you will immediately initiate the call to that destination.
This feature works only with user agents that support the REFER mechanism outside of existing dialogs. Check out your phone if it is able to support this feature. On some phones, you have to press "Ok" or lift up the handset in order to acknowledge the dialing of the number. The remote initiation of a call is a security-sensitive topic, as it might turn your phone into a microphone. Therefore, you must authenticate yourself during the initiation of the call and you may have to acknowledge the initiation of the call.
Add White List, Add Black List
These codes are used to store the last caller in the "white" or "black" list. It is a convenient way of keeping the address book updated with useful information for further communications. See Black List and White List for more details.
Call Barge-in, Call Teach-Mode, Call Listen-In
These codes are used to interfere with existing calls. The codes are described in a separate page, Call Mixing.
Wakeup Call
This code is used to program the wakeup call for this extension, see Wakeup Call.
