VoiceXML Record whole call, including menu options

时光怂恿深爱的人放手 提交于 2019-12-24 06:17:20

问题


I'm trying to record a whole phone call using VoiceXML (on Nexmo).

I can make a recording or give menu prompts and forward a call seperately, but I can't work out how to do both together. I'd like to record the call from start to finish, including the forwarded call part.

I would imagine the VoiceXML would look something like this, but this isn't valid 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>


回答1:


It is not possible to do this using standard VoiceXML, you either have to use vendor extensions or put your call in conference with a recording application (a single document with a single for the whole call).




回答2:


We had GeneSys add this for our company about 10 years ago. (Who knows, maybe other vendors started supporting it this way since then; try it ...) In your vxml, as soon as it is entered, add this vendor-specific log line to the first block of the first form entered in order to turn on whole call recording (NOTE: they MUST each be on their own line for it to work in GeneSys, so do not reformat these 4 lines):

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

Whole call recording will automatically end when the call is disconnected; or you can end it when you want by executing this log line:

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



回答3:


Voximal is the VoiceXML interpreter for Asterisk. He can manage the Asterisk Application from the VoiceXML syntaxe. With the MixMonitor application you can record all the call and then post the result with the ot tags...




回答4:


CCXML is for this purpose. You can use CCXML for conference and record call etc... I have built click to call and conference recording for InterpreXer



来源:https://stackoverflow.com/questions/28393631/voicexml-record-whole-call-including-menu-options

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!