[Home]

Summary:ASTERISK-15309: [patch] Unable to escape back to dialplan or operator, using 'o' and 'a' extensions in dialcontext
Reporter:Alec Davis (alecdavis)Labels:
Date Opened:2009-12-13 18:56:54.000-0600Date Closed:2010-01-05 09:09:03.000-0600
Priority:MinorRegression?Yes
Status:Closed/CompleteComponents:Applications/app_directory
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) extensions_o_a_fix.diff.txt
Description:Users cannot get back to the main menu that called app_directory by pressing the '*' which is configured to start over and beginning of dialplan entry.

Likewise, the option of dialling '0' while in the Directory application should execute the 'exten => o,1,NoOp(The Operator) ...



****** ADDITIONAL INFORMATION ******

This was discovered on our 1.6.1 branch servers, but patch is for trunk.

Asterisk SVN-branch-1.6.1-r226977M

Tested on both 1.6.1 and trunk.
Comments:By: Alec Davis (alecdavis) 2009-12-13 18:59:05.000-0600

dialplan code:

[ivr-bdt-daytime]
 exten => s,1,Answer
 exten => s,n,Background(bdt/mainbdt)
 exten => s,n,Background(silence/5)
 exten => s,n,Flash()
 exten => s,n,SendDtmf(0#)
 exten => s,n,Hangup()

 exten => 1,1,NoOp( 1 PRESSED, Directory name )
 exten => 1,n,Directory(default,analogtransfer)
....

[analogtransfer]
 exten => _XXXX,1,Flash()
 exten => _XXXX,n,SendDtmf(${EXTEN})
 exten => _XXXX,n,Hangup()

 exten => a,1,Goto(ivr-bdt-daytime,s,1)

 exten => o,1,NoOp(Got here 'o')
 exten => o,n,PlayBack(hello-world)

By: Alec Davis (alecdavis) 2009-12-13 20:01:28.000-0600

uploaded extensions_o_a.diff.txt

If valid 'o' or 'a' extension exist in the dialcontext then let pbx execute them.

<u>Previously:</u>
 pressing '0' or '*' caused do_directory() to return 0.

 returning 0 from do_directory, keeps user in 'directory_exec' for(;;) loop.
 returning -1 from do_directory, breaks out of 'directory_exec' for(;;) loop.

<u>Now:</u>
 pressing '0' or '*' causes do_directory() to return '0' or '*'.

 returning 0 from do_directory, keeps user in 'directory_exec' for(;;) loop.
 returning NonZero from do_directory, breaks out of 'directory_exec' for(;;) loop, and will dialplan will continue on at appropriate extension dialcontext:exten=>o,1,... or dialcontext:exten=>a,1,...
 returning -1 from do_directory, breaks out of 'directory_exec' for(;;) loop, and will cause a Hangup.

By: Alec Davis (alecdavis) 2009-12-13 20:18:09.000-0600

I believe this became a regression at revision 98888, Jan 2008.

It's present in all 1.6.x branches.



By: Digium Subversion (svnbot) 2009-12-14 20:29:51.000-0600

Repository: asterisk
Revision: 234893

U   trunk/apps/app_directory.c

------------------------------------------------------------------------
r234893 | alecdavis | 2009-12-14 20:29:50 -0600 (Mon, 14 Dec 2009) | 9 lines

fixes escape to extensions 'o' and 'a', for digits '0' and '*'

(closes issue ASTERISK-15309)
Reported by: alecdavis
Tested by: alecdavis
Patch
extension_o_a_fix.diff.txt uploaded by alecdavis (license 585)


------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=234893

By: Digium Subversion (svnbot) 2009-12-14 20:40:07.000-0600

Repository: asterisk
Revision: 234894

_U  branches/1.6.0/
U   branches/1.6.0/apps/app_directory.c

------------------------------------------------------------------------
r234894 | alecdavis | 2009-12-14 20:40:06 -0600 (Mon, 14 Dec 2009) | 15 lines

Merged revisions 234893 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r234893 | alecdavis | 2009-12-15 15:29:50 +1300 (Tue, 15 Dec 2009) | 9 lines
 
 fixes escape to extensions 'o' and 'a', for digits '0' and '*'
 
 (closes issue ASTERISK-15309)
 Reported by: alecdavis
 Tested by: alecdavis
 Patch
  extension_o_a_fix.diff.txt uploaded by alecdavis (license 585)
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=234894

By: Digium Subversion (svnbot) 2009-12-14 20:42:34.000-0600

Repository: asterisk
Revision: 234895

_U  branches/1.6.1/
U   branches/1.6.1/apps/app_directory.c

------------------------------------------------------------------------
r234895 | alecdavis | 2009-12-14 20:42:34 -0600 (Mon, 14 Dec 2009) | 15 lines

Merged revisions 234893 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r234893 | alecdavis | 2009-12-15 15:29:50 +1300 (Tue, 15 Dec 2009) | 9 lines
 
 fixes escape to extensions 'o' and 'a', for digits '0' and '*'
 
 (closes issue ASTERISK-15309)
 Reported by: alecdavis
 Tested by: alecdavis
 Patch
  extension_o_a_fix.diff.txt uploaded by alecdavis (license 585)
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=234895

By: Digium Subversion (svnbot) 2009-12-14 20:44:37.000-0600

Repository: asterisk
Revision: 234896

_U  branches/1.6.2/
U   branches/1.6.2/apps/app_directory.c

------------------------------------------------------------------------
r234896 | alecdavis | 2009-12-14 20:44:36 -0600 (Mon, 14 Dec 2009) | 15 lines

Merged revisions 234893 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r234893 | alecdavis | 2009-12-15 15:29:50 +1300 (Tue, 15 Dec 2009) | 9 lines
 
 fixes escape to extensions 'o' and 'a', for digits '0' and '*'
 
 (closes issue ASTERISK-15309)
 Reported by: alecdavis
 Tested by: alecdavis
 Patch
  extension_o_a_fix.diff.txt uploaded by alecdavis (license 585)
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=234896