good good study, day day up

来源: BlogBus 原始链接: http://blogbus.com:80/blogbus/blog/index.php?blogid=2331&cat=7 存档链接: https://web.archive.org/web/20040824053751id_/http://blogbus.com:80/blogbus/blog/index.php?blogid=2331&cat=7


good good study, day day up aleung的学习笔记, aleung的idea 语音浏览技术规范简介 -[软件技术] 时间: 2004-08-23 16:59 2004-7-9 一直以来,在CTI领域语音应用的开发都是采用各厂商的专有技术的,每个平台厂商都伴随自己的平台推出一套语音业务开发的规范,有些是脚本式的语言,有些是图形化的流程,这些规范受限于平台,相互之间没有兼容性,基于这些专有规范开发出来的语音业务很难从一个厂商的平台移植到另一个厂商的平台。 另外一方面,这些专有的语音业务开发规范的体系是非开放性的,业务控制局限在语音平台内部,与外界系统进行交互只能通过有限的途径,例如访问数据库、数据访问网关,开发COM接口组件等。造成难于与外部系统有机集成,集成成本高。在业务开发上,也因为业务处理逻辑与用户交互控制混合在一起,使得复杂业务的开发难度和维护难度都比较高。 近年来,随着网络技术的发展,各种业务应用都纷纷往网络方向发展,充分利用internet的数据自由流动和协议标准化的优势,CTI技术与web技术融合的需求越来越大。基于web的各种开发技术也迅速发展并成熟,包括J2EE、.NET、WebService等等,web应用开发渐渐变得快捷而高效。另外一方面,随着手机、PDA等手持设备的发展,对于延伸使用者界面,多模式互动的需求越来越多,提供键盘、笔输入、语音等多种输入手段,各种文字、影音输出途径,语音应用和传统文字/图形应用的界限越来越模糊。 在这样的趋势下,业界研究推出了多种涉及语音技术的标准规范。其中,W3C(World Wide Web Consortium)走在前面,其下的语音浏览器工作组等多个工作组进行的标准规范制定工作都涉及了语音技术。目前,对于电话和语音应用领域,重要的规范有三个,分别为VoiceXML, CCXML(Call Control eXtensible Markup Language), SALT(Speech Application Language Tags)。 这三个规范都是基于XML的,这是因为XML作为一种可扩展的通用标记语言,有着标准化、结构化的特点,并且对于XML的生成、传输、解析、验证、查询都已经有一系列相当成熟的技术和编程开发包,存在着很大的优势。但XML本身并不说明什么,它只是用来描述规范的一种语言,支持XML跟支持VoiceXML、CCXML这些规范是完全两回事。 这三个规范应用在系统中,部署架构基本是相同的,从高层次来看,由两个主要模块构成:文档服务器(document server)和电话语音平台(speech/telephony platform)。文档服务器由web server、database server、application server等构成,可以使用J2EE或者.NET平台。业务应用部署在文档服务器上,它响应电话语音平台发送来的请求,生成XML规范文档。电话语音平台包括了解释器、TTS、ASR等部分,它解释执行文档,负责与用户的交互界面。 电话语音平台与PSTN接口,或者提供VoIP支持。当一个呼叫进入系统,电话语音平台分析出业务类别,通过HTTP协议向文档服务器发起请求。文档服务器执行业务应用,生成VoiceXML或者CCXML规范的文档,返回给电话语音平台。电话语音平台内置了VoiceXML或者CCXML浏览器,解释执行文档内容,控制ASR与TTS操作,与电话用户进行交互。TTS服务器将文字合成为语音,播放给用户;ASR服务器接受用户的语音输入,利用语法规则(grammar)将用户说话内容识别为文本数据,平台在脚本控制下根据输入内容判断下一步的执行。 大多数情况下,基于web的应用都会采用易于扩展的架构,将核心服务逻辑(业务逻辑)与表示细节(VoiceXML, CCXML, SALT, HTML, WML)分离开。某些场合下还会将应用对话状态的维护与表示层分离,以实现表示语言机制的无关性,这样同一个应用可以采用web(HTML)、wap(WML)、语音(VoiceXML/CCXML)等不同的表示形式,适应PC、PDA、电话等多种用户终端。 使用这些XML系列标准技术规范的系统与过去传统专有规范的系统在架构上有所不同,使用标准规范的系统,业务的部署与平台的部署是分离的,相互通过HTTP协议松耦合,业务采用URL进行定位。这使得业务的分布部署变得非常简单。业务的开发采用web应用开发完全相同的模式,使得语音业务开发人员可以充分利用web应用开发的技术和经验。并且,用较小的代价就可以实现语音应用与web应用集成,或者实现应用的多种表示形式,适应不同的客户终端。 VoiceXML VoiceXML可以理解为另外一种表示语言,类似于HTML和WML。它是一种表述对话(dialog)的语言,用来控制业务过程中的人机交互过程,适用于面向电话、手机等终端设备的语音应用,例如自动客户服务、自助查询系统、个人消息系统等。 将VoiceXML与HTML对比,就能很容易理解了。浏览器解释后,HTML表示的内容是以文字图像方式显示在屏幕上的,VoiceXML的内容是以语言的方式播放给用户的。HTML接收用户的文字输入和鼠标点击,VoiceXML接受用户的语音输入,进行语音识别,或者是通过电话按键输入DTMF数据。 VoiceXML是一种独立的语言,不能内嵌到现有的web语言中(如HTML,WML)。