VoiceXML录制整个通话,包括菜单选项

时间:2015-02-08 11:57:08

标签: voicexml nexmo

我尝试使用VoiceXML(在Nexmo上)录制整个电话。

我可以单独录制或提供菜单提示和转发电话,但我无法解决如何一起完成这两项工作的问题。我想从头到尾录制通话,包括转发的通话部分。

我认为VoiceXML看起来像这样,但这不是有效的VoiceXML。

<?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1" >
<var name="callerid" expr="123" />
<form>

    <record name="recording" beep="true" dtmfterm="true" maxtime="100s">   
        <menu dtmf="true">
            <property name="inputmodes" value="dtmf"/>
            <audio src="server/forwardingnow.mp3"/>
            <choice dtmf="10" next="#sales"/>
            <choice dtmf="30" next="#support"/>
        </menu>
        <form id="sales">               
            <transfer name="MyCall" dest="tel:123123123" bridge="true" connecttimeout="20s"/>
        </form>
        <form id="support">  
            <transfer name="MyCall" dest="tel:123123123" bridge="true" connecttimeout="20s"/>
        </form>

        <catch event="connection.disconnect.hangup">
            <submit next="server/voice/savecall" method="post" namelist="recording callerid" enctype="multipart/form-data"/>
        </catch>

    </record>

</form>

4 个答案:

答案 0 :(得分:3)

使用标准的VoiceXML无法做到这一点,您必须使用供应商扩展或将您的呼叫与录音应用程序(单个文档与整个呼叫的单个文档)进行会议。

答案 1 :(得分:1)

我们让GeneSys在大约10年前为我们公司添加了这个。 (谁知道,也许其他供应商从那时起开始以这种方式支持它;尝试它...)在您的vxml中,一旦输入,将此供应商特定的日志行添加到按顺序输入的第一个表单的第一个块中打开整个通话记录(注意:它们必须各自独立才能在GeneSys中工作,所以不要重新格式化这4行):

&#13;
&#13;
      <log gvp:dest="calllog">
        directory /myDirectoryName absolute
        enable callrec type=audio/wav recsrc=mixed;
      </log>
&#13;
&#13;
&#13;

当呼叫断开时,整个通话录音将自动结束;或者你可以通过执行这个日志行来结束它:

&#13;
&#13;
        <log gvp:dest="calllog">
          disable callrec;
        </log>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

Voximal是Asterisk的VoiceXML解释器。 他可以通过VoiceXML语法管理Asterisk应用程序。 使用MixMonitor应用程序,您可以记录所有呼叫,然后使用ot标签发布结果...

答案 3 :(得分:-1)

CCXML就是为了这个目的。 您可以使用CCXML进行会议和录音等... 我为InterpreXer构建了点击呼叫和会议录音