[Home]

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-0600Date Closed:2008-01-04 16:54:15.000-0600
Priority:MajorRegression?No
Status:Closed/CompleteComponents: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