[asterisk-bugs] [Asterisk 0015750]: Background always returns an AGI result of zero if interrupted by DTMF tone

Asterisk Bug Tracker noreply at bugs.digium.com
Thu Aug 20 10:03:33 CDT 2009


The following issue has been SUBMITTED. 
====================================================================== 
https://issues.asterisk.org/view.php?id=15750 
====================================================================== 
Reported By:                jbjon
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   15750
Category:                   Applications/General
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
Asterisk Version:           1.4.26.1 
Regression:                 No 
SVN Branch (only for SVN checkouts, not tarball releases):  trunk 
SVN Revision (number only!): 213246 
Request Review:              
====================================================================== 
Date Submitted:             2009-08-20 10:03 CDT
Last Modified:              2009-08-20 10:03 CDT
====================================================================== 
Summary:                    Background always returns an AGI result of zero if
interrupted by DTMF tone
Description: 
The Background application used to return the DTMF key value if the
playback of the sound file had been interrupted by a DTMF tone. 

In upgrading from Asterisk 1.4.17 to 1.4.26.1, we were consistently
getting an AGI response of "200 result=0" for the "EXEC Background
<soundfile>" task we were executing, despite different DTMF tones being
generated.

The changes made to the Background method since revision 193119 (7 May
2009) appear to have stopped it from returning the DTMF key value in the
200 AGI response. 

We had initially suggested a fix to main/pbx.c in the
pbx_builtin_background method that line 9169 shouldn't assign res to
exten[0] but we understand from tilgham that this was intentional. However,
re-compiling Asterisk with line 9169 set to our initial assumption of:
if ((exten[0] == res) && !ast_matchmore_extension(chan, args.context,
exten, 1, chan->cid.cid_num)) {
does mean we once again get the desired behaviour for Background.

I'll leave the appropriate fix in your capable hands, but something around
this line needs considering if a DTMF tone interrupts the Background
command.
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2009-08-20 10:03 jbjon          New Issue                                    
2009-08-20 10:03 jbjon          Asterisk Version          => 1.4.26.1        
2009-08-20 10:03 jbjon          Regression                => No              
2009-08-20 10:03 jbjon          SVN Branch (only for SVN checkouts, not tarball
releases) =>  trunk          
2009-08-20 10:03 jbjon          SVN Revision (number only!) => 213246          
======================================================================




More information about the asterisk-bugs mailing list