[asterisk-bugs] [Asterisk 0013330]: [patch] DISA does not accept extensions beginning with "#"

Asterisk Bug Tracker noreply at bugs.digium.com
Sat Nov 29 07:40:40 CST 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13330 
====================================================================== 
Reported By:                jcovert
Assigned To:                russell
====================================================================== 
Project:                    Asterisk
Issue ID:                   13330
Category:                   Applications/app_disa
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     feedback
Asterisk Version:           1.4.21.2 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-08-17 22:44 CDT
Last Modified:              2008-11-29 07:40 CST
====================================================================== 
Summary:                    [patch] DISA does not accept extensions beginning
with "#"
Description: 
As those familiar with central office and PBX dialplans in North America
know, while "#" is often used as a terminator for variable length numbers,
it has always also been accepted as an initial character.

When I recently (finally, now that Mac OS X seems to work with the latest
patches) upgraded my production PBX to 1.4, I discovered that I was unable
to dial extensions in a DISA's context which had the pattern "_#XX"

To correct this, in the check for an extension terminated by '#' (line 301
of app_disa.c), I now also check for "i>0", so that the test only succeeds
and breaks out of the loop if the '#' is not the first character.

To comply with industry standards and practice, I suggest and request this
patch become a permanent part of Asterisk.
====================================================================== 

---------------------------------------------------------------------- 
 (0095601) jcovert (reporter) - 2008-11-29 07:40
 http://bugs.digium.com/view.php?id=13330#c95601 
---------------------------------------------------------------------- 
Playtones does not behave the way the dialtone in a DISA behaves.  If it
did, there would be no need for DISA at all.  In a DISA, the dialtone
breaks on digit press.  Playtones continues until you do an explicit
StopPlayTones.  You'd have to implement the first-digit-translation
separately in the dialplan, rather than letting extension matching take
care of it.

Remember, this extremely simple code change restores to DISA the ability
to accept a "#" as a initial digit, a capability DISA had before the change
in which "#" was made a terminator.  In the telephony industry, "#" is is
frequently an initial digit.  DISA used to work correctly, and no longer
does.

With my incredibly trivial code change, if someone NEEDS to accept a
single "#", all that is needed is

exten => #,1,DoSomething(..)

And this is exactly what would have been needed before "#" was made a
terminator!

/john 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-11-29 07:40 jcovert        Note Added: 0095601                          
======================================================================




More information about the asterisk-bugs mailing list