以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML在语音技术中的应用 』   (http://bbs.xml.org.cn/list.asp?boardid=47)
----  Voicexml对现有应用程序的改造和整合  (http://bbs.xml.org.cn/dispbbs.asp?boardid=47&rootid=&id=21012)


--  作者:admin
--  发布时间:8/9/2005 7:43:00 PM

--  Voicexml对现有应用程序的改造和整合
http://www.ccw.com.cn/htm/app/aprog/01_11_22_2.asp

Voicexml对现有应用程序的改造和整合

复旦大学 黄伟峰  
01-11-22 下午 01:33:45

--------------------------------------------------------------------------------

从头开始生成一个基于Voicexml的应用程序并不难,但是怎样才能使现有的应用程序也能进行基于语音的交流和播放,就不太好办了,下面将主要讨论使现有应用程序语音化。
一、语音在一些方面的应用
首先,让我们看一看,从语音的角度使我们感兴趣的几个不同的应用。
1、企业的SQL数据库
许多企业都有基干SQL的关系型数据库,用来处理事务和分析数据。如Microsoft的SQL Server,Oracle8i,Informix,IBM DB2和Sybase,以及一些小型的个人数据库,如Access,Excel 等。
2、合作成交流的系统
通常我们都使用E-mail来作为交流的工具,如许多公司都使用一些这样的系统,如Microsoft 的Exchange Server,Lotus Domino和Iplanet Messaging Server。除了E-mail.这些系统还提供诸如日历,通讯薄,任务和共享文档的使用,作为基干Voicexml企业门户的一个组成部分,使得公司员工通讯普通的电话来“收发”邮件或日期安排成为可能。
3、企业级的应用程序
许多中大型的企业开始使用一些大型的ERP系统,如SAP,Peoplesoft,Oracle,Baan,J.D.Edwards来提高企业的生产和运营能力。例如,一家公司投资购买了Peoplesoft公司的HRMS(人力资源管理系统)系统,从而使得公司的员工通过基干Voicexml的语音来享受如下的服务,如查询个人信息,参加竞争招聘,交纳个人所得税等等。这些大型的应用程序或系统都有定义好的API接口,从而使得与其他应用程序的整合变得非常容易。一个基干Voicexml的应用程序可以用这些API接口来把数据传化为xml 文件,然后再通过XSLT,实现Voicexml的转换。
4、企业的目录服务
在企业中可能用到的目录服务主要有Novell的目录服务,微软的NT Directing,微软的Active Directory和基干LDAP的目录服务(如inplanet Directory Server和IBM的 Secureway Directory Server)。目录服务在很多方面都能得到应用,如;存储用户信息,存储用户的私人账号或密码。语音门户可以为员工提供一些自服务,也可以充当人与人交流或沟通的媒介,一个员工可以拨号接通另一位员工的电话,该员工的电话可以是基干语音系统的目录服务。如它可以播出如下的应答(“connect me with Mike on his cell phone”)而不用在公司目录中寻找。
二、开发Voicexml程序的框架和方法。
1、服务器端的脚本编程
服务部的编程可以有好多种语言来选择,如Perl,CGI,ASP,JSP,PHP,Java servelet等。用这些技术实现的应用程序运行在服务端的框架上,如通常所说的Web Application Server, 通过其中引擎(Engine)的解释,就可以实行动态的Web效果和编程,这些Application Server通常指基干J2EE标准的,如IBM的Websphere, BEA的 Bea weblogic server,Oracle的Application server 和sun的inplanet server。以及一些其他的如 Microsoft in IIS,Apache+ Tomcat等。
除了提供动态角本的能力外,Application Server来提供事务处理,持久性可扩展性,高可用性,安全性和可靠性等相关的能力,这些就使得开发者,只要专注于系统商业逻辑的开发,而不用考虑其他的问题,从而减轻了开发人员的负担,同时也增强了系统的性能。
2、应用程序的整合
服务端的角本技术只解决了一个问题,即生成动态的Voicexml的页面。但怎样来整合其他的应用程序,还是一个问题。当然,我们可以使用相同的应用程序接口和组件来整合企业级的应用程序,例如在Microsoft的word中,我们可以使用OLE-DB和ADO接口来和不同的数据库系统整合,用MAPI和合作数据对象同企业消息系统和合作系统整合,用COM接口同许多基干COM应用的后台应用程序进行整合。
同样,在J2EE中,可以用JDBC API来连接各种数据库系统,用Java Mail API 来同企业消息系统整合;用JCA同后台的应用程序如SAP R/3或Peoplesoft 的 HRMS整合。
下图一表示用服务端的角本编程来发布Voicexml的应用程序,并实现同企业数据库和后台应用程序的整合。
按此在新窗口浏览图片

三、XML和XSLT
我们可以使用预线定义好的 XML接口或XML的工具箱,如微软的XML Parser 或Apache xerces parser 来生成基干Java/c++/com的xml结构,然后用 XSLT来处理XML文档,生成基干XSLT的文档格式,下图二显示了XML和XSLT结合生成Voicexml的内容。
按此在新窗口浏览图片

图二.XML/XSLT的模型

其具体的实现可以使用Apache xml 项目中的基干Java的XML/XSLT的称为Cocoon的工具包,它允许开发者自己定义基干XML的内容发布接口,然后用XSLT处理工具动态的转化为WML,Voicexml, pdf 等不同的格式,附录中的例子,就显示了用它来生成Hello world的Voicexml程序。
四、总结
Voicexml 给计算机应用程序带来了新的活力,通过整合现有的应用程序,以及融合一些诸如文本到语音转化(Text-to-speech, TTS),自动识音识别(Automatic Speech Recognition ,ASR),VOIP(Voice over Internet Platform)等技术,从而生成交互的语音应用程序和系统。


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
2,355.469ms