JR Richardson
2007-Jun-27 15:13 UTC
[asterisk-users] Asterisk to Cisco 2600 GW DTMF Not Working, Working now
On 6/26/07, JR Richardson <jmr.richardson at gmail.com> wrote:> Hi All, > > I have Asterisk 1.2.9.1 sending SIP calls to a Cisco 2620XM Router > with a PRI card in it, handing off to a PBX and vise verse. Calls in > and out are working fine except for DTMF from Asterisk to the 2600. > DTMF from the 2600 to Asterisk is fine. > > Here are the Asterisk console warnings I get when I send DTMF from > Asterisk to the 2600: > > == Forcing Marker bit, because SSRC has changed > Jun 26 17:53:52 WARNING[14248]: channel.c:2328 set_format: Unable to > find a codec translation path from ilbc to ulaw > Jun 26 17:53:52 WARNING[14248]: channel.c:2328 set_format: Unable to > find a codec translation path from ilbc to ulaw > Jun 26 17:53:52 WARNING[14248]: chan_sip.c:2555 sip_write: Asked to > transmit frame type 1024, while native formats is 4 (read/write = 4/4) > Jun 26 17:53:52 WARNING[14248]: channel.c:2693 > ast_channel_make_compatible: No path to translate from > SIP/53061-92e0(4) to SIP/10.10.10.10-78fa(1024) > Jun 26 17:53:52 WARNING[14248]: channel.c:3520 ast_channel_bridge: > Can't make SIP/53061-92e0 and SIP/10.10.10.10-78fa compatible > Jun 26 17:53:52 WARNING[14248]: res_features.c:1381 ast_bridge_call: > Bridge failed on channels SIP/53061-92e0 and SIP/10.10.10.10-78fa > == Spawn extension (iaxtest, 2144466715, 3) exited non-zero on > 'SIP/53061-92e0' > > The call drops. > > If I enable ILBC codec with Asterisk, here is what I get: > > == Forcing Marker bit, because SSRC has changed > Jun 26 17:56:28 WARNING[14332]: codec_ilbc.c:175 ilbctolin_framein: > Huh? An ilbc frame that isn't a multiple of 50 bytes long from RTP > (160)? > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > Jun 26 17:56:28 NOTICE[14332]: rtp.c:575 ast_rtp_read: Unknown RTP > codec 122 received > > The call continues with this error until I hang up. > > I have been adjusting the dial-peer dtmf settings in the 2600 and have > tried all the dtmf settings in Asterisk. > > Any guidance will be appreciated. > > Thanks. > > JR > -- > JR Richardson > Engineering for the Masses >This was a self induced problem, after mocking up in the lab it seemed to work fine, but my production system didn't. I debugged the RTP and captured the DTMF tones between the working and not working setup and noticed the production system was sending DTMF codec number [96] and the lab system was sending DTMF codec number [101]. This was a result of adding "[96] = {0, AST_RTP_DTMF}," to rtp.c in effort to resolve errors I was getting when passing calls to a cisco call manager. The errors went away, but now sends an invalid codec number to the 2600 gateway, which drops the call. I took out that codec number in rtp.c, recompiled and DTMF works fine now. I'm sure my codec errors will come back but at least DTMF will work. I'd rather purge error logs than not have DTMF. JR -- JR Richardson Engineering for the Masses