Calls parked with FOP2 become orphans

If I park by transferring the call, the call will come back to me if nobody picks up.

If I park my clicking on the parking lot and clicking the transfer button in FOP2, the call is parked, but then the caller is hung up upon if nobody answers.

Seems like there is an issue with the context at 16:20:24.

Asterisk log follows.. User parks by transfer.. answers when the call comes back. Parks with FOP2
[2011-06-08 16:19:16] VERBOSE[11392] app_dial.c: -- SIP/voipms-00000027 answered SIP/1002-00000026
[2011-06-08 16:19:16] VERBOSE[11392] rtp_engine.c: -- Locally bridging SIP/1002-00000026 and SIP/voipms-00000027
[2011-06-08 16:19:32] VERBOSE[11392] res_musiconhold.c: -- Started music on hold, class 'default', on SIP/voipms-00000027
[2011-06-08 16:19:35] VERBOSE[8318] netsock2.c: == Using SIP RTP TOS bits 184
[2011-06-08 16:19:35] VERBOSE[8318] netsock2.c: == Using SIP RTP CoS mark 5
[2011-06-08 16:19:35] VERBOSE[11401] pbx.c: -- Executing [500@from-internal:1] Park("SIP/1002-00000028", "") in new stack
[2011-06-08 16:19:37] VERBOSE[11401] features.c: == Parked SIP/1002-00000028 on 501 (lot default). Will timeout back to extension [from-internal] s, 1 in 30 seconds
[2011-06-08 16:19:37] VERBOSE[11401] pbx.c: -- Added extension '501' priority 1 to parkedcalls
[2011-06-08 16:19:37] VERBOSE[11401] file.c: -- <SIP/1002-00000028> Playing 'digits/5.gsm' (language 'en')
[2011-06-08 16:19:37] WARNING[8341] chan_sip.c: it is not necessary to specify Content-Length in sip_notify.conf, ignoring[2011-06-08 16:19:37] VERBOSE[11401] file.c: -- <SIP/1002-00000028> Playing 'digits/0.gsm' (language 'en')
[2011-06-08 16:19:38] VERBOSE[11401] file.c: -- <SIP/1002-00000028> Playing 'digits/1.gsm' (language 'en')
[2011-06-08 16:19:39] VERBOSE[11401] res_musiconhold.c: -- Started music on hold, class 'default', on SIP/1002-00000028
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: == Spawn extension (from-internal, s, 1) exited non-zero on 'Parked/SIP/1002-00000028<ZOMBIE>'
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: -- Executing [h@from-internal:1] Macro("Parked/SIP/1002-00000028<ZOMBIE>", "hangupcall") in new stack
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("Parked/SIP/1002-00000028<ZOMBIE>", "1?skiprg") in new stack
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: -- Goto (macro-hangupcall,s,4)
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: -- Executing [s@macro-hangupcall:4] GotoIf("Parked/SIP/1002-00000028<ZOMBIE>", "1?skipblkvm") in new stack
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: -- Goto (macro-hangupcall,s,7)
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: -- Executing [s@macro-hangupcall:7] GotoIf("Parked/SIP/1002-00000028<ZOMBIE>", "1?theend") in new stack
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: -- Goto (macro-hangupcall,s,9)
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: -- Executing [s@macro-hangupcall:9] Hangup("Parked/SIP/1002-00000028<ZOMBIE>", "") in new stack
[2011-06-08 16:19:39] VERBOSE[11401] app_macro.c: == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'Parked/SIP/1002-00000028<ZOMBIE>' in macro 'hangupcall'
[2011-06-08 16:19:39] VERBOSE[11401] pbx.c: == Spawn extension (from-internal, h, 1) exited non-zero on 'Parked/SIP/1002-00000028<ZOMBIE>'
[2011-06-08 16:19:42] VERBOSE[8318] res_musiconhold.c: -- Stopped music on hold on SIP/1002-00000028
[2011-06-08 16:19:42] VERBOSE[8318] res_musiconhold.c: -- Stopped music on hold on SIP/voipms-00000027
[2011-06-08 16:19:42] VERBOSE[8318] res_musiconhold.c: -- Started music on hold, class 'default', on SIP/voipms-00000027
[2011-06-08 16:19:42] VERBOSE[8318] res_musiconhold.c: -- Stopped music on hold on SIP/voipms-00000027
[2011-06-08 16:19:42] VERBOSE[8296] res_musiconhold.c: -- Started music on hold, class 'default', on SIP/voipms-00000027
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [h@macro-dialout-trunk:1] Macro("SIP/1002-00000026", "hangupcall,") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("SIP/1002-00000026", "1?skiprg") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Goto (macro-hangupcall,s,4)
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [s@macro-hangupcall:4] GotoIf("SIP/1002-00000026", "1?skipblkvm") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Goto (macro-hangupcall,s,7)
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [s@macro-hangupcall:7] GotoIf("SIP/1002-00000026", "1?theend") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Goto (macro-hangupcall,s,9)
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [s@macro-hangupcall:9] Hangup("SIP/1002-00000026", "") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] app_macro.c: == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/1002-00000026' in macro 'hangupcall'
[2011-06-08 16:19:42] VERBOSE[11392] features.c: == Spawn extension (macro-dialout-trunk, h, 1) exited non-zero on 'SIP/1002-00000026'
[2011-06-08 16:19:42] VERBOSE[11392] app_macro.c: == Spawn extension (macro-dialout-trunk, s, 19) exited non-zero on 'SIP/1002-00000026' in macro 'dialout-trunk'
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: == Spawn extension (from-internal, 2023809977, 6) exited non-zero on 'SIP/1002-00000026'
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [h@from-internal:1] Macro("SIP/1002-00000026", "hangupcall") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("SIP/1002-00000026", "1?skiprg") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Goto (macro-hangupcall,s,4)
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [s@macro-hangupcall:4] GotoIf("SIP/1002-00000026", "1?skipblkvm") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Goto (macro-hangupcall,s,7)
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [s@macro-hangupcall:7] GotoIf("SIP/1002-00000026", "1?theend") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Goto (macro-hangupcall,s,9)
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: -- Executing [s@macro-hangupcall:9] Hangup("SIP/1002-00000026", "") in new stack
[2011-06-08 16:19:42] VERBOSE[11392] app_macro.c: == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/1002-00000026' in macro 'hangupcall'
[2011-06-08 16:19:42] VERBOSE[11392] pbx.c: == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/1002-00000026'
[2011-06-08 16:20:07] VERBOSE[8296] res_musiconhold.c: -- Stopped music on hold on SIP/voipms-00000027
[2011-06-08 16:20:07] VERBOSE[8296] pbx.c: -- Added extension 'SIP_1002' priority 1 to park-dial
[2011-06-08 16:20:07] VERBOSE[8296] features.c: == Timeout for SIP/voipms-00000027 parked on 501 (default). Returning to park-dial,SIP_1002,1
[2011-06-08 16:20:07] VERBOSE[11421] pbx.c: -- Executing [SIP_1002@park-dial:1] Dial("SIP/voipms-00000027", "SIP/1002,30,") in new stack
[2011-06-08 16:20:07] VERBOSE[11421] netsock2.c: == Using SIP RTP TOS bits 184
[2011-06-08 16:20:07] VERBOSE[11421] netsock2.c: == Using SIP RTP CoS mark 5
[2011-06-08 16:20:07] VERBOSE[11421] app_dial.c: -- Called 1002
[2011-06-08 16:20:07] WARNING[8341] chan_sip.c: it is not necessary to specify Content-Length in sip_notify.conf, ignoring[2011-06-08 16:20:07] VERBOSE[11421] app_dial.c: -- SIP/1002-00000029 is ringing
[2011-06-08 16:20:14] VERBOSE[11421] app_dial.c: -- SIP/1002-00000029 answered SIP/voipms-00000027
[2011-06-08 16:20:14] VERBOSE[11421] rtp_engine.c: -- Locally bridging SIP/voipms-00000027 and SIP/1002-00000029
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: == Spawn extension (fop2-park, 1002,from-internal, 1) exited non-zero on 'SIP/voipms-00000027'
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Executing [1002,from-internal@fop2-park:1] Set("SIP/voipms-00000027", "ARRAY(RETURN_EXTENSION,RETURN_CONTEXT)=1002,from-internal\,") in new stack
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Executing [1002,from-internal@fop2-park:2] ParkAndAnnounce("SIP/voipms-00000027", "PARKED,,Console/dsp,from-internal,,1002,1") in new stack
[2011-06-08 16:20:24] VERBOSE[11421] app_parkandannounce.c: -- Dial Tech,String: (Console,dsp)
[2011-06-08 16:20:24] VERBOSE[11421] app_parkandannounce.c: -- Return Context: (from-internal,1002,from-internal,1002) ID: 2023809977
[2011-06-08 16:20:24] VERBOSE[11421] app_parkandannounce.c: -- Warning: Return Context Invalid, call will return to default|s
[2011-06-08 16:20:24] VERBOSE[11421] res_musiconhold.c: -- Started music on hold, class 'default', on SIP/voipms-00000027
[2011-06-08 16:20:24] VERBOSE[11421] features.c: == Parked SIP/voipms-00000027 on 501 (lot default). Will timeout back to extension [from-internal] 1002,from-internal, 1002 in 30 seconds
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Added extension '501' priority 1 to parkedcalls
[2011-06-08 16:20:24] VERBOSE[11421] app_parkandannounce.c: -- Call Parking Called, lot: 501, timeout: 0, context: from-internal,,1002,1
[2011-06-08 16:20:24] WARNING[11421] channel.c: No channel type registered for 'Console'
[2011-06-08 16:20:24] NOTICE[11421] channel.c: Unable to request channel Console/dsp
[2011-06-08 16:20:24] WARNING[11421] app_parkandannounce.c: PARK: Unable to allocate announce channel.
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: == Spawn extension (from-internal, 1002,from-internal, 1002) exited non-zero on 'Parked/SIP/voipms-00000027<ZOMBIE>'
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Executing [h@from-internal:1] Macro("Parked/SIP/voipms-00000027<ZOMBIE>", "hangupcall") in new stack
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("Parked/SIP/voipms-00000027<ZOMBIE>", "1?skiprg") in new stack
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Goto (macro-hangupcall,s,4)
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Executing [s@macro-hangupcall:4] GotoIf("Parked/SIP/voipms-00000027<ZOMBIE>", "1?skipblkvm") in new stack
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Goto (macro-hangupcall,s,7)
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Executing [s@macro-hangupcall:7] GotoIf("Parked/SIP/voipms-00000027<ZOMBIE>", "1?theend") in new stack
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Goto (macro-hangupcall,s,9)
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: -- Executing [s@macro-hangupcall:9] Hangup("Parked/SIP/voipms-00000027<ZOMBIE>", "") in new stack
[2011-06-08 16:20:24] VERBOSE[11421] app_macro.c: == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'Parked/SIP/voipms-00000027<ZOMBIE>' in macro 'hangupcall'
[2011-06-08 16:20:24] VERBOSE[11421] pbx.c: == Spawn extension (from-internal, h, 1) exited non-zero on 'Parked/SIP/voipms-00000027<ZOMBIE>'
[2011-06-08 16:20:24] WARNING[8341] chan_sip.c: it is not necessary to specify Content-Length in sip_notify.conf, ignoring[2011-06-08 16:20:54] VERBOSE[8296] res_musiconhold.c: -- Stopped music on hold on SIP/voipms-00000027
[2011-06-08 16:20:54] VERBOSE[8296] features.c: == Timeout for SIP/voipms-00000027 parked on 501 (default). Returning to from-internal,1002,from-internal,1002
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: == Starting SIP/voipms-00000027 at from-internal,1002,from-internal,1002 failed so falling back to exten 's'
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@from-internal:1] Macro("SIP/voipms-00000027", "hangupcall") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("SIP/voipms-00000027", "1?skiprg") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Goto (macro-hangupcall,s,4)
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@macro-hangupcall:4] GotoIf("SIP/voipms-00000027", "1?skipblkvm") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Goto (macro-hangupcall,s,7)
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@macro-hangupcall:7] GotoIf("SIP/voipms-00000027", "1?theend") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Goto (macro-hangupcall,s,9)
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@macro-hangupcall:9] Hangup("SIP/voipms-00000027", "") in new stack
[2011-06-08 16:20:54] WARNING[8341] chan_sip.c: it is not necessary to specify Content-Length in sip_notify.conf, ignoring[2011-06-08 16:20:54] VERBOSE[11434] app_macro.c: == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/voipms-00000027' in macro 'hangupcall'
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: == Spawn extension (from-internal, s, 1) exited non-zero on 'SIP/voipms-00000027'
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [h@from-internal:1] Macro("SIP/voipms-00000027", "hangupcall") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("SIP/voipms-00000027", "1?skiprg") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Goto (macro-hangupcall,s,4)
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@macro-hangupcall:4] GotoIf("SIP/voipms-00000027", "1?skipblkvm") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Goto (macro-hangupcall,s,7)
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@macro-hangupcall:7] GotoIf("SIP/voipms-00000027", "1?theend") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Goto (macro-hangupcall,s,9)
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: -- Executing [s@macro-hangupcall:9] Hangup("SIP/voipms-00000027", "") in new stack
[2011-06-08 16:20:54] VERBOSE[11434] app_macro.c: == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/voipms-00000027' in macro 'hangupcall'
[2011-06-08 16:20:54] VERBOSE[11434] pbx.c: == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/voipms-00000027'

Comments

  • Look at the extensions_override_freepbx.conf supplied, there are two alternatives for the fop2-park context, comment the active one and uncomment the other, and try again. See if that works better for you. Best regards,
  • Thanks for the quick response. Making the change does make parking work most of the way. Unfortunately in the "Park Slots" display it shows the slot number, the CID of the number and then it says (trunk). Normally this would show the extension that parked the call. Any suggestions on how to address that issue?
  • Hmm, no idea actually. Anyways, going back to the original context, it should return the call to the proper extension, but it seems there is a problem with the context itself, it does not like the Console/dsp and the cut is not working as expected..

    What asterisk version are you using ?

    This is the supplied context:
    [fop2-park]
    exten => _X.,1,Set(ARRAY(RETURN_EXTENSION,RETURN_CONTEXT)=${CUT(EXTEN,:,1)}\,${CUT(EXTEN,:,2)})
    exten => _X.,n,ParkAndAnnounce(PARKED,,Console/dsp,${RETURN_CONTEXT},${RETURN_EXTENSION},1)
    exten => _X.,n,Goto(${RETURN_CONTEXT},${RETURN_EXTENSION},1)
    exten => _X.,n,Hangup
    

    Try to change it to:

    [fop2-park]
    exten => _X.,1,Set(ARRAY(RETURN_EXTENSION,RETURN_CONTEXT)=${CUT(EXTEN,:,1)},${CUT(EXTEN,:,2)})
    exten => _X.,n,ParkAndAnnounce(PARKED,,,${RETURN_CONTEXT},${RETURN_EXTENSION},1)
    exten => _X.,n,Goto(${RETURN_CONTEXT},${RETURN_EXTENSION},1)
    exten => _X.,n,Hangup
    

    Basically the first line should split an extension number and context in the two variables, it is failing in doing so.. perhaps we do not need to escape the comma anymore (are you on asterisk 1.8?)
  • The call gets dropped when I transfer with the changed code..

    Versions are as follows..
    PBX in a Flash Version = 1.7.5.6
    FreePBX Version = 2.8.1.4
    Running Asterisk Version = 1.8.3.3
    Asterisk Source Version = 1.8.3.3
  • Please try to catch me via the live help, I am online. So we can do some real/time testing.
  • I have just tried with asterisk 1.8, and the fix I posted works well, the problem is the escaped comma in the first line, asteirsk 1.4 requires the \, but asterisk 1.8 does not, and appends \ to the end of the return context, making it unavailable.
  • Thanks.. Issue Closed.. I changed the code to remove the "slash" and it works..
    [fop2-park]
    exten => _X.,1,Set(ARRAY(RETURN_EXTENSION,RETURN_CONTEXT)=${CUT(EXTEN,:,1)},${CUT(EXTEN,:,2)})
    exten => _X.,n,ParkAndAnnounce(PARKED,,Console/dsp,${RETURN_CONTEXT},${RETURN_EXTENSION},1)
    exten => _X.,n,Goto(${RETURN_CONTEXT},${RETURN_EXTENSION},1)
    exten => _X.,n,Hangup
    
Sign In or Register to comment.