[asterisk-app-dev] Asterisk DTMF recognizer

Matthew Jordan mjordan at digium.com
Mon Jan 20 22:53:37 CST 2014


On Mon, Jan 20, 2014 at 10:17 PM, Matthew Jordan <mjordan at digium.com> wrote:
> On Mon, Jan 13, 2014 at 9:12 AM, Ben Langfeld <ben at langfeld.me> wrote:

<snip>

> 2) I do have some questions about the necessity of res_speech_dtmf.
> res_speech typically acts as the 'generic' speech API for Asterisk -
> that is, it is 1/2 of a shim that sits between Asterisk and a speech
> engine. The other half translates the generic function calls into the
> specific library calls, and vice versa.
>
> In the case of DTMF, ast_speech_dtmf will already be called when a
> DTMF frame is received in a speech-enabled application/API. If the
> grammar loaded by ast_speech_grammar_load/ast_speech_grammar_activate
> supports DTMF, it should work.
>
> I would suspect what needs to be written is a res_speech_cspeech -
> that is, an adapter from res_speech to Chris's cspeech library. Such a
> shim would provide an implementation of the ast_speech_engine virtual
> table in speech.h, and register itself with res_speech via
> ast_speech_register.
>
> If my thoughts are wrong on this - or there's a reason why an
> alternative implementation of res_speech is needed for DTMF - please
> let me know.
>
> Either way, if you'd like, I can help put together such a module that
> will bridge between Asterisk and cspeech.
>

Disregard this point - what you are writing *is* the correct thing,
that is, the shim that sits between res_speech and cspeech. I think
the name just threw me for a bit. That, and I probably shouldn't look
at unfamiliar code past 10.

As a follow up question: how do you envision res_speech_dtmf - which
will convert an Asterisk DTMF frame into an appropriate
SSML/SRGS/NLSML representation - working with another speech engine?
Does it have value as a stand-alone piece of functionality?

Regardless, I'd be happy to assist with the Asterisk module development.


-- 
Matthew Jordan
Digium, Inc. | Engineering Manager
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org



More information about the asterisk-app-dev mailing list