Summary:ASTERISK-09440: pre-dial digit collection
Reporter:dea (dea)Labels:
Date Opened:2007-06-01 15:27:11Date Closed:2007-06-04 17:42:20
Versions:Frequency of
Environment:Attachments:( 0) chan_mgcp-predial-dtmf.txt
( 1) chan_mgcp-predial-dtmf-v2.txt
( 2) chan_mgcp-predial-dtmf-v3.txt
Description:I recieved a request for details about the bug 9596, as it also
seemed to impact chan_mgcp.  That reminded me that chan_skinny
was clearly based on chan_mgcp.

A quick review of the code showed that it would be vunerable to
the same issue where DTMF would not be detected when trying to
initiate a call.

The reporter mentioned that it did work for some of his MGCP
endpoints and not others, which seems to agree with my theory that
if an endppoint establishes early-audio, DTMF could/would work
when placing a call and fail if there was not audio channel.


This patch is based on my chan_skinny patch.  It compiles without
error or warning, but I have no way to test it.

I suspect that it will also apply to Trunk, but have not had a chance
to test it.
Comments:By: Russell Bryant (russell) 2007-06-01 15:56:26

Alright, this needs some testing before it can be merged, then.  Thank you for your work!

By: Michael Van Donselaar (mvand) 2007-06-01 19:48:35

I opened 9761 the other day in Channel Drivers.  I have two ATAs a D-Link DG-104S and a Clarent CPG-201.  Both work fine with 1.2.15, but the Clarent fails with 1.4.4

I applied Dan's patch, and now neither work: both just continue to give dial tone.

By: dea (dea) 2007-06-01 20:30:59

OK, we'll need to add some extra debug code to see is we are
collecting digits and not noticing, or just not collecting digits.

By: dea (dea) 2007-06-01 22:23:33

Thanks to mvand, I found a think-o where the collection logic
was reversed and a couple missing memset calls to clear the
previous sessions collected digits.

Patch v2 should address both.

By: dea (dea) 2007-06-04 11:00:50

One more small issue identified and fixed.  I'll let the tester post what
scenarios they have tried and the results.

By: Michael Van Donselaar (mvand) 2007-06-04 16:58:03

Version 3 patch works with both my D-Link DG-104S and my Clarent CPG-201.

By: Jason Parker (jparker) 2007-06-04 17:18:35

Applies fine to 1.4, but not trunk - will fix then commit shortly.

By: Jason Parker (jparker) 2007-06-04 17:42:20

Fixed in svn branches 1.4 and trunk, in revisions 67121 and 67122. :)

Thanks again Dan, that's awesome - especially since you don't even use mgcp...