Call Pickup
From Snom Asterisk Portal
Contents |
Feature description
Call Pickup enables the user to "collect" a call ringing on another phone. In Asterisk, there are two kinds of Call Pickup:
- Group Call Pickup
- allows to pick up a call from any ringing extension that is in the same pickup group as you. If multiple phones are ringing, you have no control over which call you collect.
- Directed Pickup
- allows to pick up a call at a specific extension. This is commonly used in combination with the Busy Lamp Field (BLF).
Note: Please read the article Extension Monitoring and configure your Asterisk properly to use Directed Pickup. A phone can only direct a pickup to extensions it is monitoring.
Configure Asterisk
Group Call Pickup
To use Group Call Pickup, ensure that all SIP peers (means: snom phones) have set "pickupgroup" and "callgroup" accordingly either in sip.conf or in the realtime configuration database. All extensions which have the "pickupgroup" matching with a ringing extensions "callgroup" can pickup this call. Extensions with "pickupgroup" not matching the "callgroup" of the ringing extension are unable to pickup the call.
In this example there are three phones in the sip.conf:
[31] callgroup=1 pickupgroup=1-3 ... [32] callgroup=2 pickupgroup=1 ... [33] callgroup=3 pickupgroup=2 ...
Note:
- Extension 31 can pickup calls for 32 and 33, because it has all the available call groups defined as its pickup group.
- Extension 32 can only pickup calls for 31, because it has pickupgroup only set to "1" and 31 is the only extension in callgroup "1".
- Extension 33 can only pickup calls for 32, because it has pickupgroup=2 and 32 is the only extension in callgroup=2.
The usage is easy:
dial *8 to pickup any ringing call that your extension is allowed to pickup. If multiple extensions are ringing, you have no control over wich one you collect.
The pickup code (*8) can be changed in the features.conf. The default is "*8".
You can configure a speeddial to "*8" on a soft-key, to use group pickup in daily work.
Directed Pickup
To use Directed Pickup within your Asterisk, dialplan is needed to execute the Pickup application. Here is an example implementation for extensions.conf:
[internal]
exten => _*8X.,1,Pickup(${EXTEN:2}@internal)
exten => _*8X.,2,Pickup(2244${EXTEN:2}@from-pstn)
; internal calls
exten => _XX,1,Dial(SIP/${EXTEN})
; outbound calls
exten => _XXX.,1,Dial(${CHAN_OUTBOUND}/{EXTEN})
[from-pstn]
; inbound calls
exten => 22440,1,Macro(company-ivr)
exten => _2244XX.,1,Dial(SIP/${EXTEN:4})
Note:
- The extension in this example is "*8X.", because "*8" is the call code for Group Call Pickup, a feature in Asterisk. That is why this dialplan only match extensions which append a number to this pickup code. That way, it's possible to use both directed and group call pickup with the same dialcode.
- There are 2 different priorities:
- the first one tries to pick up an extension call that was dialled internally. If there is no match, Asterisk continues to the next line.
- the second one tries to pick up a call that comes from the PSTN.
- when matching calls from PSTN, you need to pickup the actually matched dialplan extension. In this example 2244 is our base number followed by the extension.
- The matching extensions for the calls to the Pickup-Application are also displayed for a better understanding. Only the first 3 lines of example are really needed for Pickup.
Configure snom phones
snom 3xx
Firmware version <= 7.1.30
Configure a Function Key with Type "Extension" for the extension you want to monitor and append the pickup string "|*8" to the content of the "Number" field.
e.g. If you have a button configured with Button Type "Extension" and Number "<31@registrar>" to monitor extension 31, change the value to "<31@registar>|*8"
Then, if the Extension enters "Ringing" state, the LED beside the button will start blinking. When you press the blinking button, the phone dials "*831" instead of "31" and executes the pickup in the Asterisk dialplan.
Firmware version >= 7.1.33
Configure a Function Key with Type "BLF" for the extension you want to monitor and append the pickup string "|*8" to the content of the "Number" field.
e.g. If you have a button configured with Button Type "BLF" and Number "<31@registrar>" to monitor extension 31, change the value to "<31@registar>|*8"
Then, if the Extension enters "Ringing" state, the LED beside the button will start blinking. When you press the blinking button, the phone dials "*831" instead of "31" and executes the pickup in the Asterisk dialplan.
Firmware version 6.5.18
Firmware version 6.x does not have this feature, you have to dial *8 or *831 (where 31 is the extension) manually. (or assing it to a key)
snom m3
snom m3 does not support Call Pickup, but you could still dial *831 manually to pickup an incoming call for extension 31. (*8 + extension number)
To set your handset to DND mode, go to the Web User Interface under "Telephony Settings" > section "Outgoing Identity to be used for:" > "DND". Set this option to "DND".
FAQ
Sometimes Pickup() does not work. No phone is able to pick up this channel. Pickup() only works, if none of the called phones has DND enabled.
- Cause: Mistakenly, Pickup() recognizes the channel as in use, when one of the phones returns "480 Do Not Disturb".
- Solution: Do not use the Pickup() application or disable the DND feature entirely on your phones (using the Block DND configuration option) and implement DND features in your Asterisk dialplan instead. You may even try a newer version of Asterisk if the bug has been fixed.
