Summary:ASTERISK-08559: [patch] While dtmfmode set to inband asterisk still negotiates rfc2833 mode, but fail to recognize digits
Reporter:mdu113 (mdu113)Labels:
Date Opened:2007-01-11 14:56:50.000-0600Date Closed:2007-02-01 15:56:49.000-0600
Versions:Frequency of
Environment:Attachments:( 0) chan_sip_2833dtmf_negotiation.diff
( 1) debug.txt
Description:Asterisk (or chan_sip) fails to recognize DTMF digits if dtmfmode set to inband, but it negotiated rfc2833


Scenario: SIP client (tried with both cisco and polycom phones) is configured as follows in sip.conf:
;ext_id=270, station_id=82, Polycom IP 500

xyz011101 initiates a call that is answered by asterisk (in AGI script implementing IVR). Then AGI script launch Background application playing some sound file and waiting for user input. User input is not recognized.
As you can see in debug.txt chan_sip still negotiates rfc2833 dtmf mode. In my opinion it shouldn't if it's told to use inband, but even if it did it still should recognize digits in whatever mode is negotiated.
According to the debug it looks like digits are recognized in rtp.c and channels.c probably chan_sip doesn't accept then because it's expecting them inband.
Everything works fine if dtmfmode is set to rfc2833 in sip.conf.
Comments:By: mdu113 (mdu113) 2007-01-17 17:37:25.000-0600

I'm not sure if this is correct, but I solved the problem with having chan_sip negotiate rfc2833 only if dtmfmode=rfc2833.
chan_sip_2833dtmf_negotiation.diff is the patch against http://svn.digium.com/svn/asterisk/branches/1.4 revision 51186
If you want to use it I faxed you a disclaimer sometime in 2004 I guess.
Also if you see any apparent problem with this please let me know as I'll have to put it in production soon.

By: pj (pj) 2007-01-18 02:11:13.000-0600

do you think, that it can relate to 0008815?
I have similar problem with chan_h323, digits are not recognized correctly, if typed fast, workaround for my issue is to type digits slow :-)

By: mdu113 (mdu113) 2007-01-18 10:32:48.000-0600

no, i don't think it's related. it has nothing to do with unreliable dtmf recognition (didn't see it with sip so far), but with not recognizing dtmf at all under certain conditions. also i believe this particular bug is chan_sip only related.

By: Joshua C. Colp (jcolp) 2007-02-01 15:56:48.000-0600

Fixed in 1.2 as of revision 53095, 1.4 as of revision 53097, trunk as of revision 53098. Thanks!