[asterisk-users] ConfBridge dtmf_passthrough=no doesn't have any effect. Bug?
Markus
universe at truemetal.org
Fri Sep 28 10:24:38 CDT 2012
Hi Joshua,
Am 28.09.2012 15:56, schrieb Joshua Colp:
> I think your results are sort of skewed. In the case of SIP <-> SIP if a
> local bridge occurs things will optimize and you most likely won't see
> DTMF related messages. They get passed through as packets and not fully
> interpreted.
ah, ok! That explains why nothing was logged when testing PSTN to DID to
X-Lite, RFC2833, and something was logged when repeating the call to
ConfBridge.
>> "not logged on console" means that I can hear the DTMF tones in
>> X-Lite/ConfBridge but Asterisk doesn't seem to recognize them (which is
>> fine as not all providers support all DTMF variants).
>
> What log message are you using to determine this?
Just by watching the console for DTMF after I press a key (logger.conf:
console => dtmf). And confirmed by the fact that the DTMF keypress
didn't have any effect (such as adjusting the volume, for example).
>> My resume is: DTMF is just fine, ConfBridge dtmf_passthrough is not
>> working at all. Agree? :)
>
> I've looked at the code for dtmf_passthrough, it's dead simple and
> should be working fine PROVIDED your DTMF is not going through as audio.
You're right, I was wrong. It is working, but in my tests only in the
X-Lite scenario.
> My suggestion is to take a step back further.
> Just send incoming calls to the Read application and have it store the
> received DTMF in a variable. Next step have it output what was received.
Ok, good idea, here are the results of Read() and SayDigits():
DID provider 1, RFC2833: input 123, output 123
DID provider 1, inband: input 123, output "User entered nothing."
DID provider 1, INFO: input 123, output "User entered nothing."
DID provider 2, RFC2833: input 123, output 123
DID provider 2, inband: input 123, output "User entered nothing."
DID provider 2, INFO: input 123, ouput "User entered nothing."
DID provider 3, RFC2833 1st test: input 123, output 1233
DID provider 3, RFC2833 2nd test: input 123, output 12333
DID provider 3, RFC2833 3rd test: input 123, output 123
DID provider 3, inband: input 123, output 123
DID provider 3, INFO: input 123, output "User entered nothing."
(RFC2833 seems a bit flakey with that provider, thats why I use inband
with them.)
DID provider 4, RFC2833: input 123, output 123
DID provider 4, inband: input 123, output "User entered nothing.", but
something strange happened here. Console shows:
channel.c:4143 __ast_read: DTMF begin '1' received on SIP
channel.c:4147 __ast_read: DTMF begin ignored '1' on SIP
channel.c:4143 __ast_read: DTMF begin '2' received on SIP
channel.c:4147 __ast_read: DTMF begin ignored '2' on SIP
channel.c:4143 __ast_read: DTMF begin '3' received on SIP
channel.c:4147 __ast_read: DTMF begin ignored '3' on SIP
channel.c:4143 __ast_read: DTMF begin '#' received on SIP
channel.c:4147 __ast_read: DTMF begin ignored '#' on SIP
DID provider 4, INFO: input 123, output "User entered nothing.", and
again the same on the console:
channel.c:4143 __ast_read: DTMF begin '1' received on SIP
channel.c:4147 __ast_read: DTMF begin ignored '1' on SIP
channel.c:4143 __ast_read: DTMF begin '2' received on SIP
channel.c:4147 __ast_read: DTMF begin ignored '2' on SIP
channel.c:4143 __ast_read: DTMF begin '3' received on SIP
channel.c:4147 __ast_read: DTMF begin ignored '3' on SIP
channel.c:4143 __ast_read: DTMF begin '#' received on SIP
channel.c:4147 __ast_read: DTMF begin ignored '#' on SIP
(Asterisk sees the DTMF but doesn't like it?)
> If that works for all cases then Asterisk is recognizing DTMF fine. This
> does *not* mean that the tone will be muted fully as my previous email
> mentioned.
I don't see any previous eMail from you on the list and there is nothing
in the archives either. Could you re-send it, please? Maybe the info
that I'm missing is inside that mail. :)
> You can further test if all cases check out by sending calls to Record
> and playing back the audio to yourself. If you hear tones and Asterisk
> also recognized the DTMF then it's not fully muted, or the hardware in
> question is sending *both* inband and out of band, which is not supported.
Ok, here are the results of Record() and Playback():
DID provider 1, RFC2833: input 123, output hear DTMF (123)
DID provider 1, inband: input 123, output hear DTMF (123)
DID provider 1, INFO: input 123, output hear DTMF (123)
DID provider 2, RFC2833: input 123, output hear DTMF (123)
DID provider 2, inband: input 123, output hear DTMF (123)
DID provider 2, INFO: input 123, output hear DTMF (123)
DID provider 3, RFC2833: input 123, output hear DTMF (123)
DID provider 3, inband: input 123, output hear DTMF (123)
DID provider 3, INFO: input 123, output hear DTMF (123)
DID provider 4, RFC2833: input 123, output hear DTMF (123)
DID provider 4, inband: input 123, output hear DTMF (just 1 digit)
(Console showed: DTMF begin passthrough)
DID provider 4, INFO: input 123, output hear DTMF (just 1 digit)
(Console showed: DTMF begin passthrough)
X-Lite, RFC2833 in sip.conf: input 123, output hear NOTHING
X-Lite, inband in sip.conf: input 123, output hear DTMF (123)
X-Lite, INFO in sip.conf: input 123, output hear DTMF (123)
(X-Lite tests only with force inband YES, RTP 2833 YES)
If I understand right, all my four DID providers are "broken"?
Thank you!
Markus
More information about the asterisk-users
mailing list