这里录音有两种途径(其实只有一种,可看成是两种而已)。一种是通过标准的<record/>进行录音,另一种是利用<filed>。
第一种方式比较标准,需要发出beep的声音之后才开始录音
第二种方式是filed有name属性,且有option选项(也可以是gramer),因此最后的值是option的值(这目前是猜测,还没有进行完整的测试)
下面的例子来源于:http://www.optimsys.cz/support/examples/example13.php
第一种方式比较标准,需要发出beep的声音之后才开始录音
第二种方式是filed有name属性,且有option选项(也可以是gramer),因此最后的值是option的值(这目前是猜测,还没有进行完整的测试)
下面的例子来源于:http://www.optimsys.cz/support/examples/example13.php
<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml">
<meta name="description" content="record example"/>
<meta name="author" content="OptimSys, s.r.o., Czech Republic (http://www.optimsys.cz)"/>
<meta name="copyright" content="free for any purpose"/>
<form id="start">
<catch event="error.unsupported.record">
<prompt>Recording is not supported in the current configuration, no
audio source specified.</prompt>
<exit/>
</catch>
<record name="recording" maxtime="10s" finalsilence="1s" beep="true">
<noinput> nothing was recoreded </noinput>
Recording starts after beep
<filled>You recorded: <audio expr="recording"/></filled>
</record>
<field name="answer">
<noinput> Hey, don't sleep! </noinput>
<nomatch> say 'yes' or 'no' </nomatch>
<prompt> Do you want to present details about the recording? </prompt>
<grammar root="main" tag-format="semantics/1.0-literals">
<rule id="main" scope="public">
<one-of>
<item><ruleref uri="#yes"/><tag>yes</tag></item>
<item><ruleref uri="#no"/><tag>no</tag></item>
</one-of>
</rule>
<rule id="yes">
<one-of>
<item>yes</item>
<item>yeah</item>
<item>yep</item>
<item>sure</item>
</one-of>
</rule>
<rule id="no">
<one-of>
<item>no</item>
<item>not</item>
<item>nope</item>
</one-of>
</rule>
</grammar>
<filled>
<if cond="answer!='yes'">
OK, good bye.
<exit/>
</if>
</filled>
</field>
<block>
<prompt>Recording size is <value expr="recording$.size"/> bytes.</prompt>
<prompt>Recording duration is <value expr="recording$.duration"/> milliseconds.</prompt>
<if cond="recording$.termchar !== undefined">
<prompt>Recording was interrupted by DTMF key <value expr="recording$.termchar"/>.</prompt>
<elseif cond="recording$.maxtime"/>
Recording was interrupted since it exceeded time limit.
<else/>
Recording was finished without any interruption.
</if>
</block>
</form>
</vxml>