识别录音中的DTMF

本文关键字:DTMF 录音 识别 | 更新日期: 2023-09-27 18:04:36

我做IVR工作已经有一段时间了,但是我们有一个案例,我需要一些专业知识/反馈:

是否有可能录制一条消息,用户可以按DTMF音来指示暂停,我们将插入自己的声音?在此场景中,用户将记录如下内容:"早上好,[DTMF],请致电[DTMF]办公室来核对您的帐户。"

不确定我们是否会将生成的WAV文件切成碎片以插入变量,或者在发送消息之前进行一些后处理。

有人有过类似的经历吗?

感谢

吉姆·斯坦利黑板连接

识别录音中的DTMF

在VoiceXML中,您将使用record元素来记录来自用户的消息。record元素有一个名为dtmfterm的属性,如果将其设置为true(默认设置)将终止记录。如果此属性设置为false,则当达到maxtime设置或达到finalsilence持续时间的silence时,记录将终止。将dtmfterm设置为false只会导致DTMF成为记录的一部分。将dtmfterm设置为true将导致记录被终止。

我已经创建了使用调用者创建的记录的应用程序,但从来没有一个像你的要求那样操纵记录。你能做的就是把录音串在一起。下面是一个演示如何使用c#连接录音的QA。

您必须进行实验的是,是否可以使用语法捕获按下的DTMF键。规范回避了这一点,但它可能在某种程度上特定于您正在使用的VoiceXML IVR平台。如果您知道使用了什么DTMF键,那么您可以指示用户按*插入沉默和#终止录制。两者都将终止记录,但如果按下*,VoiceXML中的逻辑将立即重新开始记录,如果按下#,则完全停止记录过程。然后,您将使用连接将这些录音串在一起,并在连接过程中使用预先录制的沉默的wav文件,该文件插入用户录制的片段之间。

从标签来看,您正在为VoiceXML应用程序使用c#和MVC。有一个名为VoiceModel的开源项目,它使使用ASP开发VoiceXML应用程序变得更加容易。Net MVC 4。您可以在这里了解它如何在此环境中处理记录。

如果你想插入暂停并想留在UI标签内,到目前为止我在IVR中有多少工作,我们可以留在UI内的唯一dtmf是*,我们会在按下'*'时返回grammar "REPEAT,在UI条件标签中为REPEAT,你会添加沉默(暂停)wav文件。

记录部分,我们使用了osdmtype = record,它映射到一个xslt,这有助于记录和识别客户的回答是/否。
但是我对这个要求有点困惑,需要更多的细节。
抱歉不能添加评论,因为没有足够的代表
你可以给我发邮件,或者我可以在这里添加更多答案。