Dtmf not transferring from server a to b

Hi all

i have a asterisk server 16.11.1 (server A) that gets a call (leg A) and then calls a second server (leg B) server B is a freeswitch server

the servers are configured all thru with rfc2833 for dtmf

the caller enters a number a long 15 digit number like a credit card number or even a phone number and in a lot of cases server B always doesn’t get part of the digits from server A

running a trace on server (A) i checked the trace of leg A and of leg B on the same server (A) and i see that the from the provider to asterisk has all digits correct but leg b going out the same server has a missed digit

so either asterisk isn’t getting all digits from the provider for some reason or it fails to regenerate the dtmf when sending to server b

another thing i noticed is asterisk generating a rtp (cn) packet to leg every time it misses

any idea how i can check what asterisk is seeing if its just sending the rtp without transcoding ?

does anyone have a idea of what might be the problem

using chan_sip

rfc2833compensate=yes
relaxdtmf=yes

thanks

Turn off rtpkeepalive for the provider
A bug/feature in Asterisk 1.4 and possibly other versions blocks/mutes DTMF when rtpkeepalive is enabled
Solution: set rtpkeepalive=0
Description: When rtpkeepalive is enabled Asterisk sends comfort noise to the other party. During sending of comfort noise DTMF processing is disabled.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.