VoiceXML开发的指南

上传人:s9****2 文档编号:507062056 上传时间:2022-10-07 格式:DOC 页数:18 大小:155KB
返回 下载 相关 举报
VoiceXML开发的指南_第1页
第1页 / 共18页
VoiceXML开发的指南_第2页
第2页 / 共18页
VoiceXML开发的指南_第3页
第3页 / 共18页
VoiceXML开发的指南_第4页
第4页 / 共18页
VoiceXML开发的指南_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《VoiceXML开发的指南》由会员分享,可在线阅读,更多相关《VoiceXML开发的指南(18页珍藏版)》请在金锄头文库上搜索。

1、 . VoiceXML开发指南Ver 1.0 / 目 录1.VoiceXML概述11.1.VoiceXML语言11.2.系统结构11.3.工作原理21.3.1.应用程序的输入21.3.2.应用程序的输出22.VoiceXML基本编程22.1.程序结构22.1.1.Welcome示例程序22.1.2.基本元素32.2.程序输出32.2.1.TTS输出32.2.2.声音文件输出42.2.3.声音文件和TTS混合输出42.3.程序输入52.3.1.菜单输入52.3.2.字段输入62.4.条件语句82.5.goto语句93.VoiceXML高级编程103.1.事件103.2.录音113.3.呼叫转移1

2、23.4.object元素133.5.submit元素143.6.ECMAScript143.7.收发 164.参考文献171. VoiceXML概述1.1. VoiceXML语言VoiceXML(语音扩展标记语言)是一种基于XML的因特网标记语言,用于开发语音用户界面。它是音“语音Web”使用的语言,它使得用户可以使用来访问因特网的容,可以将其视为用于的HTML。使用语音界面,用户可以用他们的声音而不是通过计算机键盘和显示器与应用程序进行交互操作。在银行、学校或证券交易所,你可能已经通过语音或者交互式语音应答(IVR)系统接触过语音界面。这些系统提示用户输入相应的信息,用户再根据要求输入相应

3、的数据作为应答,然后系统就可以为用户执行有关的在线操作,例如,在不同之间进行资金转帐。在语音界面中,有一个VoiceXML对话框(相当于一个HTML页)用于描述应用程序对用户说出的提示信息,定义和接收来自用户的应答,并且描述程序控制的流程。用户通过拨打应用程序的来访问VoiceXML应用程序。从用户的角度看,这个相当于一个Web网页的URL。用户可以通过任何类型的拨打。1.2. 系统结构声软公司VoiceServer系统的结构如下图所示。语音浏览器通过解析VoiceXML ,采用提示音、按键等方式进行人机交互完成业务流程。特别地,VoiceServer系统采用可插拔结构支持语音识别(Autom

4、atic Speech Recognition)和语音合成(Text To Speech)技术,从而实现完全通过语音进行人机交互的梦想。图 1VoiceServer系统概图采用VoiceServer系统实现的新业务可以采用任何Web技术方便地和原有数据系统结合。用户可以根据业务需求编写静态voiceXML脚本,或采用ASP/JSP/PHP等动态生成voiceXML脚本;与后台数据系统间可以采用数据库访问,或采用XML或其他协议访问。1.3. 工作原理一般来说,VoiceXML和语音浏览器通过为语音技术和容传递提供标准界面,从而可以帮助变成人员开发因特网上运行的语音界面。尤其值得注意的是Voic

5、eXML提供了一个连接自动语音识别(ASR)、文本语音转换(TTS)、双音多频(DTMF)、呼叫处理以与其他技术和标准界面。虽然VoiceXML在一定程度上降低了这些技术的复杂性,但是要编写高质量的语音应用程序,就必须了解它们的复杂性。在下面两个小节中,将对VoiceXML程序的输入和输出所使用的一些关键技术做一个概述。1.3.1. 应用程序的输入自动语音识别是一种使口语输入能够被程序所理解的技术。为此需要将口语中的单次分解成为离散的声音小段,这种声音小段称为音素(phonemues)。然后将这些音素与应用程序开发人员或语音识别工具提供的词汇相比较。这不是可调整的或自然语言的识别方式。每给一个

6、提示信息,VoiceXML应用程序定义一组有限的有效输入,其他用户的应答将不能被应用程序理解。语音识别可以通过专门的硬件或软件来实现。双音多频(DTMF)系统通过网络中的硬件和软件对按键式的键盘输入进行翻译,实现音频播放。每个按键都能够产生一个可识别的独一无二的音频。该系统使得用户可以使用键盘将数字信息输入VoiceXML应用程序,并且游程序负责接收和理解这些数字信息。1.3.2. 应用程序的输出文本语音转换技术(TTS)能够将输出的文本转换成“语音”(实际上是一种数字音频格式)。这使得应用程序能够拥有灵活的输出方式,将开发人员没有预料到的事情告诉用户。TTS的功能与ASR基本上相反,它将文字

7、转变为音素,这些音素具有相对应的数字声音。另一种语音输出是用某种标准格式存储的录制的声音文件。这些声音文件格式包括WAVE和脉冲编码调制(PCM)。这些声音文件在应用程序启动以前已经被编写和录制好了。所有录制的语音输出都必须事先确定。因此,TTS是一种更灵活的输出方式。尽管TTS技术在过去的几年里有了显著的改进,但是商用TTS语音输出的声音往往仍然比较死板。VoiceXML还为网络本身提供了转移功能。它使得程序能够将用户从当前运行的VoiceXML应用程序转到另一个。2. VoiceXML基本编程2.1. 程序结构2.1.1. Welcome示例程序 欢迎访问声软科技 和介绍所有的编程语言一样

8、,Welcome示例程序给出了一个最简单的示例。当该程序被执行时,VoiceServer将通过TTS引擎来说出“欢迎访问声软科技”。下面详细说明该程序代码涉与到的元素。2.1.2. 基本元素元素说明代码行向XML解析器或编辑器说明该文档是XML 1.0语法编写的。所有VoiceXML 1.0文档都是采用XML 1.0语法编写的。虽然元素xml对应VoiceXML解释程序来说并不是必不可少的元素,但是最好使用该元素,这样就可以检查VoiceXML文档的格式是否正确,是否符合文档类型定义(DTD)。注释是注释行,VoiceXML程序的注释使用标准的XML语法编写。所有VoiceXML注释一律采用格

9、式。所有的VoiceXML命令必须封装在元素中。其中属性version告诉解释程序在执行程序文件时,使用哪个版本的VoiceXML文档类型定义(DTD)。目前,VoiceServer支持VoiceXML 1 .0,具体文档类型定义参见 voice.xml.org/voicexml1-0.dtd。本示例程序中没有使用vxml元素的另一个属性applicaiton,该属性指明VoiceXML文档的根文档的URL。当你上载一个VoiceXML文档时,它的根文档也同时上载;一般地,根文档中可以定义全局使用的变量、过程等等。是VoiceXML的对话框,用于描述VoiceXML应用程序对用户所说的各种提示

10、,定义和收集用户作出的响应,并且描述程序控制的流程。对话框分为两种:一种是菜单,一种是窗体。元素负责执行对话框定义中描述的所有操作,封装与用户输入输出相关的命令,在文档中导航或导航到其他文档中,也可以给变量赋值,进行录音和呼叫转移。元素是窗体的项目,用于封装一组语句。这些语句可以用于对变量的值进行输出、浏览、声明和赋值。2.2. 程序输出在VoiceXML中,有两种方法可以用来将信息输出给用户。第一种方法是通过文本语音转换(TTS)工具进行输出,另一种方法是通过播放预先录制的声音文件。2.2.1. TTS输出TTS输出比较简单,如2.1.1的例子 欢迎访问声软科技prompt元素是封装TTS输

11、出和audio元素使用的另一种元素。如上例,TTS信息不用封装时,相当于使用了元素的默认值。在以下两种情况下,必须使用prompt元素:首先,如果输出包含TTS语音标记元素,就必须使用prompt元素;语音标记元素是用于控制向用户说出TTS信息时的各项特性,如速度、音量和发音等。其次,当输出信息需要bargein、cond、count或timeout等属性时,则必须使用prompt元素。 欢迎访问声软科技需要说明的是,VoiceServer系统对TTS的转换结果作了缓存处理,同样的容直接从缓存中获取语音文件,而不是通过TTS引擎实时转换,大大提高了TTS的效率。2.2.2. 声音文件输出元素用

12、于设定向用户播放事先录制好的声音文件。不同的VoiceXML语音平台支持不同的声音文件格式,一般支持的文件格式为.wav文件。VoiceServer系统支持的文件格式参见其配置说明文档。声音文件输出的示例如下:audio元素的属性包括:元素说明srcSrc属性是向用户播放声音文件的url,注意可以是hostname/path/voicefile的形式,从指定的服务器远程得到语音文件。cachingCaching为true的话,则如果有一个声音文件的高速缓存拷贝且没有过期,则使用该拷贝。目前,VoiceServer系统尚不支持该属性。fetchtimeout该属性用于设定提供声音文件的超时,如果

13、平台在指定的超时时间没有取得声音文件,则平台将发出一个出错事件。fetchtint该属性用于确定平台是否应该在实际需要前提前提取声音文件。目前,VoiceServer系统尚不支持该属性。2.2.3. 声音文件和TTS混合输出VoiceServer系统支持声音文件和TTS输出的混合使用。混合输出的示例如下: 王国强先生。值得注意的是,声音文件的格式和TTS输出的格式必须一致;可以参考系统配置手册的说明,配置声音文件和TTS输出的格式。另一种混合输出的方式是,如果在声音文件没有找到或者超时的情况下,则播放TTS的输出。示例如下: 欢迎访问声软科技如上例所示,在平台无法得到welcome.wav声音文件时,就将通过TTS引擎将” 欢迎访问声软科技”实时转换成声音文件向用户播放。该功能特别适合在系统升级时,由于某种原因语音文件不全的情况下,用户也能得到正确的提示信息。由于VoiceServer系统对TTS结果的缓存处理,TTS可以获得与预先录制语音文件几乎一样的性能。2.3. 程序输入输入信息可以用两种方法来接收,一种是语音,一种是双音多频(DTMF)。输入信息既可以直接识别,也可以录音。直接识别的输入信息是通过语法来表述的,该语法设定了一组声音,用户可以发出这一组声音,也可以由用户按下DTMF按钮,以便要

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号