[solved] Direct pickup calls from outside with ** dosen't work

Hi all,

I am running freepbx 2.3 and Asterisk 1.4.

When I call from extension 100 to 101, I can pickup this call by dialing **101 on extension 102.

But when I call from outside (PSTN) and route the call to extension 101, direct pickup with **101 dosen’t work. Pickup with *8 works fine.

Any Ideas?

I found a solution wich seems to work.

I changed [app-pickup] in the dialplan to this:

[app-pickup]
include => app-pickup-custom
exten => _.,1,Noop(Attempt to Pickup ${EXTEN:2} by ${CALLERID(num)})
exten => _
.,n,SET(GLOBAL(PICKUPMARK)=${EXTEN:2})
exten => _**.,n,Pickup(${EXTEN:2}@PICKUPMARK)

Now calls from PSTN can also be picked up with **.

Note: PICKUPMARK is a new feature of Asterisk 1.4 and not available in 1.2.

Tnx, this worked for like a charm… Including with CustomContexts…

Please post this as a bug report so it can be corrected the program. It is bound to be missed and not addressed if is just sits here. You can post a bug report by going to development site, report a bug.

Couple of comments. First, if you are setting the global variable, I think that will conflict with other channels and you can have a race condition that could break this. Can you please confirm if you can do the same thing without the GLOBAL() directive. Example:

exten => _**.,n,SET(PICKUPMARK=${EXTEN:2})

Next - please test by putting the extension in a ringgroup and having the call hit the ringgroup and then try picking it up. Does it work? (I’m guessing not). Try to pickup the call based on the extension number first, then try to pickup the call based on the ringgroup number. Does either work? Which ones?

Hi all,
I tried the code suggested by schogge but with it, the directed pickup **EXT behaves exactly like the “blind” *8 group pickup. To confirm this I’ve checked that when an extension is ringing, if I dial **WHICHEVEREXT I always pickup the ringing one.

By removing the GLOBAL() directive the directed pickup doesn’t work at all.
My PARTIAL solution (it doesn’t work for extensions ringing for a call to a group or a queue but only for direct calls from other extensions or from dialing during IVR from external) is:

[app-pickup-custom]
exten => _.,3,Pickup(${EXTEN:2}@from-did-direct)
exten => _
.,n,Pickup(${EXTEN:2}@from-internal-additional-CUSTOM1)
exten => _.,n,Pickup(${EXTEN:2}@from-internal-additional-CUSTOM2)
exten => _
.,n,Pickup(${EXTEN:2}@from-internal-additional-CUSTOM3)

“from-internal-additional-CUSTOMx” are my internal manual custom contexts to allow extensions call with specific trunks.
As stated this doesn’t work when the extension is ringing for a call to its group or queue.

Regards

Rocco77

Insert code and did not work neither ** or *8. any ideas

I am really confused I have 2 asterisk servers both under module admin say they are up to date but on one I have a core of 2.4.1.1 and on the other I have 2.5.1.3 and o2.5.1.3 which is the older ser I have call pick while on the newer server 2.4.1 i don’ have it working and cannot seem to get it to work.

the other question I have how does one make call recording work on demand *1 does nothing for me on both server.

Thanks