[asterisk-users] Unable to pickup an extension

Philipp von Klitzing klitzing at pool.informatik.rwth-aachen.de
Thu Jun 17 15:14:32 CDT 2010


Hi!

> exten => **XX
> 
> --> This is a local extension, a certain phone which is monitored with
> BLF-lights. So if I press the button I want the phone call that made this
> phone ring, not another phone.

This is NOT a local extension: It is a special local PICKUP extension 
(you even named it "[example-pickup]"). So, in order to pickup an inbound 
call that has been placed to ...67 you need to dial **67.

Small note for SNOM phones: Those can be configured to prefix a monitored 
extions (67) with f.e. "**" so that the phone dials **67 when pressing a 
blinking BLF button.

> exten => 1234567,n,Set(_PICKUPMARK=${EXTEN:5})
> 
> --> If I set the PICKUPMARK-variable the same as the DID that is called,
> how can I know which DID that is set in the context [example-pickup] ??
> My phone, who tries to do the pickup, creates a new channel, and the
> PICKUPMARK-channel variable is of course not inherited to this newly
> created channel... 

I am not sure I got your question, but the phone the does the pickup does 
not need to worry about inheritance of the PICKUPMARK variable - it 
_sets_ that variable itself (see code for **XX) and then ask Asterisk to 
search for a corresponding chanel with that value that is currently in 
RINGING state.

The variable inheritance only matters for the device that is being 
called, in this case "IPphone-1", because that is the phone that you want 
to relieve of its inbound caller.

In general: PICKUPMARK is for "directed pickup" where you know exactly 
which call you want. Look at *8 undirected pickup (and pickup groups) if 
you just want to "catch whatever just started calling me".

Philipp




More information about the asterisk-users mailing list