[asterisk-users] Rejecting transfers to in-use parking spaces

Phil Frost phil at macprofessionals.com
Thu Feb 23 15:43:26 CST 2012


On Feb 23, 2012, at 16:32 , Richard Mudgett wrote:
>> exten => _*70[123],1,NoOp(parking in ${EXTEN:1})
>>    same => n,Set(PARKINGEXTEN=${EXTEN:1})
>>    same =>
>>    n,GotoIf(${DEVICE_STATE(park:${PARKINGEXTEN}@parkedcalls)}=INUSE?busy)
>>    same => n,Park()
>>    same => n(busy),Busy()
>> 
>> What I'm hoping to
>> accomplish is have Asterisk respond to the Sip REFER to *701 with a
>> 404 or similar response; if Asterisk can do this, then the Snom will
>> say "transfer failed!".

> The dialplan device state check above is not always going to work
> because another call could park in that space between the check
> and the actual park. [...]
> 
> Please note that for Asterisk to detect an extension as a parking
> extension, the first priority of the extension must be the park
> application.  If the park application is not the first priority of
> the extension, then the transfer is treated as a normal transfer.


Hmm. Well, I could live with that race condition. Our call volume is low enough that the odds of hitting it acceptably low.

I'm not entirely sure what it means for Asterisk to detect an extension as a parking extension. Can you please explain how a parking transfer is different than a normal transfer?



More information about the asterisk-users mailing list