I’ve been debugging a problem where DTMF tones cannot be used from a ZAP extension during a call, e.g. to enter a pass-code on a remote conference call system.
Our Asterisk box has twelve trunk lines attached as ZAP channels, and twelve analog ZAP extensions. It also supports a number of SIP extensions via its network interface. I have ECHO_CAN_MG2 defined in zconfig.h (compiled and installed), I’ve balanced my rxgain and txgain against a local milliwatt test line, and I have relaxdtmf=yes in zapata.conf.
First, I used a trunk line (i.e. not managed by Asterisk) and a ZAP extension to perform some testing. I dialed the Asterisk line from the trunk line, and then dialed a conference room phone on a ZAP extension. The DTMF tones that were dialed from the conference room were effectively blocked by Asterisk (occasionally I could hear a very, very short DTMF tone, but usually it was just clicking/snapping).
Then, I dialed the Asterisk line from the ZAP extension (effectively using two trunks on the Asterisk box), and then dialed my extension. Once I was connected to my voicemail, I dialed each number 1-9 in quick succession (about 1/4 sec each), then I dialed each number 1-9 and held each number for about a second. The resulting voicemail reflected the same results – some clicking/snapping, but no noticeable DTMF tones made it from the ZAP extension through asterisk to the destination.
I repeated this last exercise, but dialed the Asterisk line from the trunk line, then left myself a voicemail message. The results were the same – the resulting voicemail reflected clicking/snapping, but no noticeable DTMF tones.
I then dialed the trunk line from a SIP extension. The DTMF tones from the SIP extension could be heard clearly on the trunk line. This is the only case where things work as I expect.
What I get out of this is that Asterisk is blocking DTMF tones in both directions, but only after the call is connected. The DTMF tones are intercepted by Asterisk and interpreted well enough to connect the call to an extension, but then they are no longer routed to the other side of the call from either direction. However, it only happens for a ZAP extension (and Voicemail), and not a SIP extension.
I’ve scoured the web in search of an explanation or an answer. Most of what I find has to do with SIP channels and media routing. However, I cannot find any examples of how to enable or disable the manipulation of the DTMF tones by Asterisk during a call.
To reiterate: I just want to be able to dial an external number (on a ZAP trunk) from a ZAP extension, connect to a remote system, and then pass DTMF tones to that system.
Is there anyone that can tell me what I am doing wrong?
Any help is appreciated. Thanks.