Summary: | ASTERISK-10756: Parking -- execution does continue at next priority when requested parking extension is in use. | ||
Reporter: | Jon Webster (jon) | Labels: | |
Date Opened: | 2007-11-13 12:42:51.000-0600 | Date Closed: | 2008-01-04 16:54:15.000-0600 |
Priority: | Major | Regression? | No |
Status: | Closed/Complete | Components: | Resources/res_features |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) 11237-park.diff | |
Description: | Here's the context and CLI output, demonstrating the 3rd priority NoOp is not executed. [test] exten => _X,1,SET(PARKINGEXTEN=700) exten => _X,n(park),Park() exten => _X,n,NoOp(No Parking Available!!!) -- Executing [8@test:1] Set("SIP/jon-0842e548", "PARKINGEXTEN=700") in new stack -- Executing [8@test:2] Park("SIP/jon-0842e548", "") in new stack [Nov 13 13:08:42] WARNING[30486]: res_features.c:389 ast_park_call: Requested parking extension already exists: 700@parkedcalls == Spawn extension (test, s, 1) exited non-zero on 'SIP/jon-0842e548' ****** ADDITIONAL INFORMATION ****** pbx*CLI> show application park pbx*CLI> -= Info about application 'Park' =- [Synopsis] Park yourself [Description] Park():Used to park yourself (typically in combination with a supervised transfer to know the parking space). This application is always registered internally and does not need to be explicitly added into the dialplan, although you should include the 'parkedcalls' context (or the context specified in features.conf). If you set the PARKINGEXTEN variable to an extension in your parking context, park() will park the call on that extension, unless it already exists. In that case, execution will continue at next priority. | ||
Comments: | By: Digium Subversion (svnbot) 2007-11-13 13:46:37.000-0600 Repository: asterisk Revision: 89249 _U trunk/ U trunk/res/res_features.c ------------------------------------------------------------------------ r89249 | qwell | 2007-11-13 13:46:36 -0600 (Tue, 13 Nov 2007) | 16 lines Merged revisions 89248 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 (closes issue ASTERISK-10756) ........ r89248 | qwell | 2007-11-13 13:47:45 -0600 (Tue, 13 Nov 2007) | 7 lines Revert change from revision 67064. It is documented behavior that if a parking extension already exists while using PARKINGEXTEN, dialplan execution will continue. If blind transferring to a Park with PARKINGEXTEN, you must keep this in mind, and handle the failure yourself. Issue 11237, reported by jon. ........ ------------------------------------------------------------------------ By: Jon Webster (jon) 2007-12-06 23:39:37.000-0600 I merged this patch to 1.4.13 to test and Park() still caused the call to end and did not continue to next priority or anywhere else. The CLI says it's spawning extension local,s,1 but that's not executing either. [parktest] exten => 411,1,Set(PARKINGEXTEN=800) exten => 411,n,Park() exten => 411,n,NoOp(Park failed) -- Executing [411@local:1] Set("SIP/jon-08424a80", "PARKINGEXTEN=800") in new stack -- Executing [411@local:2] Park("SIP/jon-08424a80", "") in new stack == Parked SIP/jon-08424a80 on 800@parkedcalls. Will timeout back to extension [local] s, 1 in 30 seconds -- <SIP/jon-08424a80> Playing 'digits/8' (language 'en') -- <SIP/jon-08424a80> Playing 'digits/0' (language 'en') -- <SIP/jon-08424a80> Playing 'digits/0' (language 'en') -- Added extension '800' priority 1 to parkedcalls -- Started music on hold, class 'default', on channel 'SIP/jon-08424a80' == Spawn extension (local, s, 1) exited KEEPALIVE on 'SIP/jon-08424a80' -- Executing [411@local:1] Set("SIP/jon-0824d780", "PARKINGEXTEN=800") in new stack -- Executing [411@local:2] Park("SIP/jon-0824d780", "") in new stack [Dec 7 00:40:34] WARNING[4540]: res_features.c:389 ast_park_call: Requested parking extension already exists: 800@parkedcalls == Spawn extension (local, s, 1) exited non-zero on 'SIP/jon-0824d780' -- Stopped music on hold on SIP/jon-08424a80 == SIP/jon-08424a80 got tired of being parked By: Jason Parker (jparker) 2007-12-28 14:36:41.000-0600 Give this patch a try. I tested it locally, and it appears to work as expected. By: Jon Webster (jon) 2007-12-28 18:05:47.000-0600 Also tested and confirm it's working as expected. By: mdu113 (mdu113) 2008-01-02 13:38:32.000-0600 Works for me too. Thanks a lot! By: Digium Subversion (svnbot) 2008-01-04 16:54:15.000-0600 Repository: asterisk Revision: 96574 _U trunk/ U trunk/res/res_features.c ------------------------------------------------------------------------ r96574 | qwell | 2008-01-04 16:54:14 -0600 (Fri, 04 Jan 2008) | 13 lines Merged revisions 96573 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 (Closes issue ASTERISK-10756) ........ r96573 | qwell | 2008-01-04 16:55:56 -0600 (Fri, 04 Jan 2008) | 4 lines Properly continue in the dialplan if using PARKINGEXTEN and the slot is full. Issue 11237, patch by me. ........ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=96574 |