[asterisk-dev] Listening to a remote dialtone on a DAHDI/PRI has been suppressed in 1.6.1 ?

Pavel Troller patrol at sinus.cz
Wed May 6 16:17:08 CDT 2009


> > On Wed, May 06, 2009 at 06:02:58AM +0200, Pavel Troller wrote:
> > > Hi!
> > >   I'm new on this list, let me introduce myself shortly first.
> > >   I'm a switching systems expert, working for one of major operators in Czech
> > > Republic as well being an associated professor at Czech Technical University,
> > > lecturing the same subject. My main focus is concentrated on "big" switches,
> > > like Siemens EWSD or Nortel CallServer 2000, as well as some PBXes, especially
> > > Ericsson MD110/MX1, Siemens HiPath etc. I'm working with Asterisk mainly as my
> > > hobby, but I'm also using it in my work, currently we run a Meetme conference
> > > and Customer Announcement System on Asterisk at our telco.
> > >   And now, my first question: I've upgraded my Asterisk from 1.6.0.9 to 1.6.1.0
> > > and I've found that I cannot listen to the dialtones from remote exchanges on 
> > > overlapped outgoing calls over DAHDI/PRI (i.e. Dial(DAHDI/g1) without a number,
> > > with empty SETUP sent). 
> > >   I've reviewed chan_dahdi.c and I've found, that the following change:
> > > 
> > >         case SIG_PRI:
> > >         case SIG_BRI:
> > >         case SIG_BRI_PTMP:
> > >         case SIG_SS7:
> > >                 /* We'll get it in a moment -- but use dialdest to store pre-setup_ack digits */
> > >                 p->dialdest[0] = '\0';
> > > +               p->dialing = 1;
> > >                 break;
> > > 
> > > around line 2710 is causing this. I've commented this line out and I have my
> > > dialtones back.
> > >   I would like to ask, why this change has been made and whether it is 
> > > necessary. I'm using overlap mode dialling very often and I (and my users too)
> > > like to hear the dialtones as we are traversing through our networks :-). Is
> > > there another way to open the audio path immediately, i.e. using some new 
> > > config option, yet unknown to me ? 
> > 
> > 'When was this changed'? svn blame to the rescue.
> > 
> >   svn blame http://svn.digium.com/svn/asterisk/branches/1.6.1/channels/chan_dahdi.c
> >   
> > Shows, among others:
> > 
> >   183333   tilghman               p->dialing = 1;
> > 
> > 
> >   svn log -r 183333 http://svn.digium.com/svn/asterisk/branches/1.6.1/
> > 
> >   Delay signalling progress until a PRI channel really signals progress.
> >   (closes issue #13034)
> >   Reported by: klaus3000
> >   Patches:
> >     20090316__bug13034.diff.txt uploaded by tilghman (license 14)
> >     patch_trunk_183progress_klaus3000.txt uploaded by klaus3000 (license 65)
> >   Tested by: klaus3000
> > 
> Hi!
>   Hmm, I see. It was a bug fix.
>   But from my point of view, it introduced a new bug. It's interesting
> that I never encountered a problem with #13034, I've always heard all the tones
> what I expected to hear, but now I don't.
>   So, what next ? Is it possible to fix my issue without reintroducing the
> former bug ? Should I file a new bug ?
>   With regards, Pavel Troller
> 
Hi!
  OK, I'm trying to find a solution myself. My idea is, that I need to hear
the dialtone only, when the trunk is in outgoing overlap mode, and when there
is no digit string present in the seizure request. So, I've modified the code
as follows:

        case SIG_PRI:
        case SIG_BRI:
        case SIG_BRI_PTMP:
        case SIG_SS7:
                /* We'll get it in a moment -- but use dialdest to store pre-setup_ack digits */
                p->dialdest[0] = '\0';
                if(strchr(dest, '/') || !(p->pri->overlapdial & DAHDI_OVERLAPDIAL_OUTGOING))
                        p->dialing = 1;
                break;
        default:

  I've tested, that this code lets me to hear the remote dial tone. I cannot
reproduce the original issue, it simply does not occur in my network config,
but I hope that at least one of the conditions I'm testing is not valid, so
the dialing flag will be set properly.
  Would it be re-test the original issue with my change, and eventually
accept it to the official sources ?

With regards, Pavel Troller



More information about the asterisk-dev mailing list