VoiceXML开发指南
Ver
目录
1. VoiceXML概述 1
. VoiceXML语言 1
. 系统结构 1
. 工作原理 2
. 应用程序的输入 2
. 应用程序的输出 2
2. VoiceXML基本编程 2
. 程序结构 2
. e示例程序 2
. 基本元素 3
. 程序输出 3
. TTS输出 3
. 声音文件输出 4
. 声音文件和TTS混合输出 4
. 程序输入 5
. 菜单输入 5
. 字段输入 6
. 条件语句 8
. goto语句 9
3. VoiceXML高级编程 10
. 事件 10
. 录音 11
. 呼叫转移 12
. object元素 13
. submit元素 14
. ECMAScript 14
. 收发传真 16
4. 参考文献 17
VoiceXML概述
VoiceXML语言
VoiceXML(语音扩展标记语言)是一种基于XML的因特网标记语言,用于开发语音用户界面。它是音“语音Web”使用的语言,它使得用户可以使用电话来访问因特网的内容,可以将其视为用于电话的HTML。
使用语音界面,用户可以用他们的声音而不是通过计算机键盘和显示器与应用程序进行交互操作。在银行、学校或证券交易所,你可能已经通过语音邮件或者交互式语音应答(IVR)系统接触过语音界面。这些系统提示用户输入相应的信息,用户再根据要求输入相应的数据作为应答,然后系统就可以为用户执行有关的在线操作,例如,在不同帐户之间进行资金转帐。
在语音界面中,有一个VoiceXML对话框(相当于一个HTML页)用于描述应用程序对用户说出的提示信息,定义和接收来自用户的应答,并且描述程序控制的流程。
用户通过拨打应用程序的电话号码来访问VoiceXML应用程序。从用户的角度看,这个电话号码相当于一个Web网页的URL。用户可以通过任何类型的电话拨打。
系统结构
声软公司VoiceServer系统的结构如下图所示。语音浏览器通过解析VoiceXML ,采用提示音、按键等方式进行人机交互完成业务流程。特别地,VoiceServer系统采用可插拔结构支持语音识别(Automatic Speech Recognition)和语音合成(Text To Speech)技术,从而实现完全通过语音进行人机交互的梦想。
图 1 VoiceServer系统概图
采用VoiceServer系统实现的新业务可以采用任何Web技术方便地和原有数据系统结合。用户可以根据业务需求编写静态voiceXML脚本,或采用ASP/JSP/PHP等动态生成voiceXML脚本;与后台数据系统间可以采用数据库访问,或采用XML/HTTP或其他协议访问。
工作原理
一般来说,VoiceXML和语音浏览器通过为语音技术和内容传递提供标准界面,从而可以帮助变成人员开发因特网上运行的语音界面。尤其值得注意的是VoiceXML提供了一个连接自动语音识别(ASR)、文本语音转换(TTS)、双音多频(DTMF)、呼叫处理以及其他技术和标准界面。
虽然VoiceXML在一定程度上降低了这些技术的复杂性,但是要编写高质量的语音应用程序,就必须了解它们的复杂性。在下面两个小节中,将对VoiceXML程序的输入和输出所使用的一些关键技术做一个概述。
应用程序的输入
自动语音识别是一种使口语输入能够被程序所理解的技术。为此需要将口语中的单次分解成为离散的声音小段,这种声音小段称为音素(phonemues)。然后将这些音素与应用程序开发人员或语音识别工具提供的词汇相比较。这不是可调整的或自然语言的识别方式。每给一个提示信息,VoiceXML应用程序定义一组有限的有效输入,其他用户的应答将不能被应用程序理解。语音识别可以通过专门的硬件或软件来实现。
双音多频(DTMF)系统通过电话网络中的硬件和软件对按键式电话的键盘输入进行翻译,实现音频播放。每个按键都能够产生一个可识别的独一无二的音频。该系统使得用户可以使用电话键盘将数字信息输入VoiceXML应用程序,并且游程序负责接收和理解这些数字信息。
应用程序的输出
文本语音转换技术(TTS)能够将输出的文本转换成“语音”(实际上是一种数字音频格式)。这使得应用程序能够拥有灵活的输出方式,将开发人员没有预料到的事情告诉用户。TTS的功能与ASR基本上相反,它将文字转变为音素,这些音素具有相对应的数字声音。
另一种语音输出是用某种标准格式存储的录制的声音文件。这些声音文件格式
VoiceXML开发指南 来自淘豆网m.daumloan.com转载请标明出处.