Alsa channel and DTMF decode


I have use alas channel with loopback alsa device. I have other application which will be
send via alsa channel DTMF code.

I have try simple script which mplayer play DTMF and send to input device in alsa channel

I have in extensions.conf

exten => 1234,1,Dial(SIP/2001,30)
exten => 1234,n,Hangup()

I have send DTMF 1234 to input device defined in alsa.conf but asterisk did not dial to phone SIP 2001

I try to find where is problem and question is that is possible decode DTMF codes via alsa channel to dial ???


The alsa channel has no built in support for looking for DTMF in the audio.

1 Like

Ok thank you for replay and now I figure out why this not working. But not exist any way to do this
for example use chan_console and portaudio ??


None of those modules expect to receive an audio stream that would contain DTMF in them, so none will do that.

Ok it is clear now, many thanks for support

But it will useful have possibility decode DTMF tones in alsa channel because we have a lot of hamradio voice system on radio and we are looking how to integrate our asterisk sip phones with hamradio repeaters. We can pass stream and DTMF tones via loopback alsa device but we don’t have way in asterisk play with this. When alsa channel will have possibility decode DTMF we will have way integrated these systems
For this is requested add this possibility to alsa channel if any developer asterisk will want to help us solve this problem


I think you will need to supply the code yourself. chan_alsa has Extended support status, which means it is supported by the open source community, not by Digium, and it has no current maintainer listed on

I think it is more of a simple, demonstration, channel than one intended for production use. For production use, it would also require aggressive echo cancellation, which I don’t think it has.