Issues with call transferring / parking

Hey everyone,

I’m attempting to set up call parking and am running to issue with the call transfer mechanism.
Details:
Calls come into an “incoming” context. This context includes “parkedcalls”.
I forward calls to my cell phone using Dial, and use the “t” flag to indicate I want transfer capability.
Problem:
Pressing # on my cell works fine, I get the transfer dialog and the other end gets music, however I cannot enter in any valid extension at this point. I am attempting to use the default 700 to send the call to the lot, but immediately after I press any number, it tells me that it’s an invalid extension and brings me back to the original caller. It also seems to time out very quickly if I don’t enter in an extension, and again brings me back to the original caller. I’ve tried this using a SIP softphone and the same problem occurred.

From what I understand, I should be able to enter in any extension accessible from my “incoming” context during the call transfer and just have things work. I can get nothing to work when attempting to enter in an extension during the transfer dialog, let alone parking.

Here’s a brief snippet of my context:

[incoming_calls]
include => parkedcalls

exten => 18884209903,1,Answer()
exten => 18884209903,n,Background(custom/intgreet)
exten => 18884209903,n,WaitExten()

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Employee extensions and voicemail set up;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;Marc = extension # 1001
exten => 1001,1,Playback(custom/contmarc)
exten => 1001,n,Set(CALLERID(num)=18884209903)
exten => 1001,n,Dial(IAX2/jnctn_out/${MARCCELL},t)
exten => 1001,n,Congestion()
exten => 1001,n,Busy()

;more extensions underneath this…

Everything I’ve read makes this sounds so easy to use, what the heck am I doing wrong?

Some more information to help with diagnosis:

I was observing the CLI with extra verbosity and found what appears to be the root of the problem. Here a chunk of the output:
– IAX2/jnctn_out-6554 is making progress passing it to IAX2/jnctn-296
– IAX2/jnctn_out-6554 answered IAX2/jnctn-296
– Channel ‘IAX2/jnctn_out-6554’ ready to transfer
– Channel ‘IAX2/jnctn-296’ ready to transfer
– Started music on hold, class ‘default’, on IAX2/jnctn-296
– <IAX2/jnctn_out-6554> Playing ‘pbx-transfer.ulaw’ (language ‘en’)
– Unable to find extension ‘1’ in context ‘’
– <IAX2/jnctn_out-6554> Playing ‘pbx-invalid.ulaw’ (language ‘en’)
– Stopped music on hold on IAX2/jnctn-296

It seems like it’s not recognizing what context it’s in, which makes sense as to why the transferring isn’t working. Is there a way to set this context that I’m overlooking?

It looks like someone had a similar problem a long time ago, but took a hacky method of solving it.
mail-archive.com/asterisk-us … 07781.html

I’ve found a fix, you can set a context for the call transfer using the following command:

exten => s,1,set(__TRANSFER_CONTEXT=employees)

Extension or priority is not important, setting the __TRANSFER_CONTEXT variable to the desired context(“employees” in my case) is what you’ll need.