标题:VXML 常用的语法
只看楼主
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
结帖率:88.46%
 问题点数:0 回复次数:6 
VXML 常用的语法
来论坛一直是提问,今天发个分享贴,各位没看过的看看,已经知道知识点的就当我个人写个日记吧。
下面是两个简短的VoiceXML的例子。第一个是著名的“Hello World”:
<?xml version="1.0"?>
<VXML version="1.0">
<form>
<block>Hello World!</block>
</form>
</VXML>
所有VoiceXML命令都封装在<VXML>……</VXML>之间。
搜索更多相关主题的帖子: 日记 知识点 
2014-10-15 09:08
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
得分:0 
.VXML常用元素介绍
1) form元素(窗体元素)是VoiceXML文档的主要组成部分。窗体元素负责执行对话框定义中描述的所有操作。它用于封装与用户的输入、输出相关的命令,在文档中导航并且可以导航到其他的文档,可以说明变量并赋值,可以进行录音、电话转接。一个窗体包含:
    一组窗体项,窗体项在窗体解释执行的主循环可以被访问到的项。窗体项可以细分为输入项和控制项,它们的区别是用户的输入可以激活输入项;控制项不受输入控制。
    声明非窗体变量;
    事件处理定义;
    filled动作,相应的域得到输入时执行的脚本。
窗体有以下属性:
id:窗体名;
scope:用于指明窗体中声明的任何语法的范围。
每一个窗体项都有一个关联的窗体项变量,当窗体被执行时缺省设置为未定义;开发人员也可以给它们赋初始值。窗体项变量可以依据命名规则赋名,也可以作为内部名称而不需要说明。同时,窗体项都有窗体项条件,用于控制是否执行该窗体项。

one car come one car go ,two car peng peng people die.
2014-10-15 09:09
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
得分:0 
下面是一个子对话框的例子:
<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.0" xmlns="http://www.
      xmlns:xsi="http://www.
      xsi:schemaLocation="http://www.
      http://www.

<!—调用子对话框 -->
<form>
    <subdialog name="result" src="#getdriverslicense">
        <param name="birthday" expr="'2000-02-10'"/>
        <filled>
            <submit next="http://myservice.
        </filled>
    </subdialog>
</form>

<!—定义对话框 -->
<form id="getdriverslicense">
    <var name="birthday"/>
    <field name="drivelicense">
        <grammar src="http://grammarlib/drivegrammar.grxml"
                 type="application/srgs+xml"/>
        <prompt> Please say your drivers license number. </prompt>
        <filled>
             <if cond="validdrivelicense(drivelicense,birthday)">
                 <var name="status" expr="true"/>
             <else/>
                 <var name="status" expr="false"/>
             </if>
             <return namelist="drivelicense status"/>
        </filled>
    </field>
</form>
</vxml>

one car come one car go ,two car peng peng people die.
2014-10-15 09:09
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
得分:0 
变量和表达式的一般信息
VoiceXML的变量相当于ECMAScript变量,两者之间只存在很小的差别。如VoiceXML中,以下划线(“_”)开头的变量留给内部使用。标准变量可以分为未定义、空、布尔、字符串、数字和对象等六种。
变量在使用前必须声明。声明的方式有两种:
变量通过var元素声明,如:
<var name="home_phone"/>
<var name="pi" expr=”3.14159”/>
<var name="city" expr="'Sacramento'"/>
也可以通过窗体项声明:
<field name="num_tickets" type="number">
<prompt>How many tickets do you wish to purchase?</prompt>
</field>
变量可以用于cond和expr属性之中。下面给出使用变量的例子:
<if cond="city == 'LA'">
    <assign name="city" expr="'Los Angeles'"/>
<elseif cond="city == 'Philly'"/>
    <assign name="city" expr="'Philadelphia'"/>
<elseif cond="city =='Constantinople'"/>
    <assign name="city" expr="'Istanbul'"/>
</if>
<assign name="var1" expr="var1 + 1"/>
<if cond="i &gt; 1">
    <assign name="i" expr="i-1"/>
</if>

one car come one car go ,two car peng peng people die.
2014-10-15 09:10
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
得分:0 
变量和表达式的一般信息
VoiceXML的变量相当于ECMAScript变量,两者之间只存在很小的差别。如VoiceXML中,以下划线(“_”)开头的变量留给内部使用。标准变量可以分为未定义、空、布尔、字符串、数字和对象等六种。
变量在使用前必须声明。声明的方式有两种:
变量通过var元素声明,如:
<var name="home_phone"/>
<var name="pi" expr=”3.14159”/>
<var name="city" expr="'Sacramento'"/>
也可以通过窗体项声明:
<field name="num_tickets" type="number">
<prompt>How many tickets do you wish to purchase?</prompt>
</field>
变量可以用于cond和expr属性之中。下面给出使用变量的例子:
<if cond="city == 'LA'">
    <assign name="city" expr="'Los Angeles'"/>
<elseif cond="city == 'Philly'"/>
    <assign name="city" expr="'Philadelphia'"/>
<elseif cond="city =='Constantinople'"/>
    <assign name="city" expr="'Istanbul'"/>
</if>
<assign name="var1" expr="var1 + 1"/>
<if cond="i > 1">
    <assign name="i" expr="i-1"/>
</if>

one car come one car go ,two car peng peng people die.
2014-10-15 09:10
日知己所无
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:38
帖 子:427
专家分:2071
注 册:2014-3-22
得分:0 
有示例网页吗?想看看运行时候的效果
2014-10-17 21:22
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
得分:0 
回复 6 楼 日知己所无
这个真的没有,前几天公司说要来项目给我们,就自学了点,隔两天又说换项目了,就去看别的没研究下去

one car come one car go ,two car peng peng people die.
2014-10-19 16:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-437282-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.195445 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved