一种提高语音可扩展标记语言业务播放远端语音性能方法转让专利

申请号 : CN200810110809.4

文献号 : CN101605186B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周大刚

申请人 : 中兴通讯股份有限公司

摘要 :

本发明公开了一种提高语音可扩展标记语言业务播放远端语音性能方法,应用于电话语音系统中,包括以下步骤:在电话语音系统中的VXML平台上设置代理模块;当业务需要播放语音文件时,VXML解析器向代理模块发出请求;代理模块收到VXML解析器的请求后,首先在其缓存中查询语音文件是否已下载,如果已下载,则向VXML解析器返回该语音文件;否则,代理模块向远端服务器请求下载该语音文件,下载完成后向VXML解析器返回该语音文件,同时将该语音文件信息缓存起来。本发明引入了代理模块来实现利用缓存机制提高了VXML业务包房远端语音性能,减小了系统的负担和系统资源的浪费问题。

权利要求 :

1. 一种提高语音可扩展标记语言VXML业务播放远端语音性能的实现方法,应用于电话语音系统中,其特征在于,包括以下步骤:在所述电话语音系统中的VXML平台上设置代理模块;

当业务需要播放语音文件时,VXML解析器向所述代理模块发出请求;

所述代理模块收到所述VXML解析器的请求后,首先在其缓存中查询所述语音文件是否已下载,如果已下载,则向所述VXML解析器返回该语音文件;否则,所述代理模块向远端服务器请求下载该语音文件,下载完成后向所述VXML解析器返回该语音文件,同时将该语音文件信息缓存起来。

2. 如权利要求1所述的方法,其特征在于,进一步还包括:在所述代理模块内设置有一个hash表,用于缓存已下载的语音文件,所述代理模块自动检测所述hash表中的语音文件是否更新,当所述电话语音系统话务量低于某个阈值时,所述代理模块定时检测所述远端服务器上的语音文件是否更新,如果有更新则重新下载该语音文件,下载完成更新hash表缓存中的语音文件。

3. 如权利要求1或2所述的方法,其特征在于,进一步还包括:在所述代理模块上维护正在下载的语音文件队列,若收到所述VXML解析器的新的语音文件下载请求,首先查找下载的语音文件队列,如果下载的语音文件队列中存在同样的正在下载相同的语音文件,则将该请求加入该语音文件队列中的这一项;否则将该语音文件作为新项加入下载的语音文件队列中,同时将此请求加入该项。

4. 如权利要求3所述的方法,其特征在于,进一步还包括:若下载的语音文件完成,则从所述下载的语音文件队列中删除该项。

说明书 :

一种提高语音可扩展标记语言业务播放远端语音性能方法

技术领域

[0001] 本发明涉及移动通讯领域,更具体地说,涉及一种利用缓存机制提高VXML(Voice Extensible Markup Language,语音可扩展标记语言)业务播放远端语音性能的实现方法。

背景技术

[0002] VXML(Voice Extensible Markup Language,语音可扩展标记语言)业务的推出给电话语音系统带来全新的应用和开发概念,使传统的CTI技术(计算机电话集成,Computer Telephony Integration)从繁琐、封闭的模式中走了出来。VXML的可移植性、可重用性和开放性使广大的语音系统开发人员可以用极其简单的方法实现复杂系统的开发。VXML的一个重要特征是可以和互联网联结,这一特性在增加VXML业务开放程度的同时,也增加了VXML平台的处理复杂度。当VXML业务播放语音时,VXML脚本指定的语音文件就可能位于远端服务器上,此时,VXML解析器需要从远端服务器下载语音文件,然后播放之,如图1所示。通常情况下,这种远程语音播放的方式灵活而且方便。但是在大话务量下,如果该VXML业务被频繁地访问,每次都需要从远端服务器下载语音文件,无疑会极大地增加VXML平台的负担和处理效率,甚至会出现由于下载等待时间超过用户忍受限度,导致业务不可用。
[0003] 总而言之,简单的远端语音文件播放方式,有如下的重要缺点:
[0004] 1、每次通话都需要从远端服务器下载语音文件,增加了系统负担,占用了带宽;
[0005] 2、多个语音业务可能会同时从远端服务器下载同一个语音文件,在大话务量的情况下,对系统资源是一个极大的浪费;
[0006] 3、同一个语音文件被不同的业务保存,浪费了存储空间,在大话务量时,尤为明显。
[0007] 综上所述,现有技术中急需要解决的是如何能够提高VXML业务播放远端语音性能问题。

发明内容

[0008] 本发明所解决的技术问题在于提供一种提高语音可扩展标记语言业务播放远端语音性能方法,以解决现有技术中如何能够提高VXML业务播放远端语音性能,以减小系统负担和系统资源浪费的问题。
[0009] 为了实现上述问题,本发明提供了一种提高语音可扩展标记语言(VXML)业务播放远端语音性能的实现方法,应用于电话语音系统中,包括以下步骤:
[0010] 在所述电话语音系统中的VXML平台上设置代理模块;
[0011] 当业务需要播放语音文件时,VXML解析器向所述代理模块发出请求;
[0012] 所述代理模块收到所述VXML解析器的请求后,首先在其缓存中查询所述语音文件是否已下载,如果已下载,则向所述VXML解析器返回该语音文件;否则,所述代理模块向远端服务器请求下载该语音文件,下载完成后向所述VXML解析器返回该语音文件,同时将该语音文件信息缓存起来。
[0013] 本发明所述的方法,其中,进一步还包括:在所述代理模块内设置有一个hash表,用于缓存已下载的语音文件,所述代理模块自动检测所述hash表中的语音文件是否更新,当所述电话语音系统话务量低于某个阈值时,所述代理模块定时检测所述远端服务器上的语音文件是否更新,如果有更新则重新下载该语音文件,下载完成更新hash表缓存中的语音文件。
[0014] 其中,进一步还包括:在所述代理模块上维护正在下载的语音文件队列,若收到所述VXML解析器的新的语音文件下载请求,首先查找下载的语音文件队列,如果下载的语音文件队列中存在同样的正在下载相同的语音文件,则将该请求加入该语音文件队列中的这一项;否则将该语音文件作为新项加入下载的语音文件队列中,同时将此请求加入该项。
[0015] 进一步还包括:若下载的语音文件完成,则从所述下载的语音文件队列中删除该项。
[0016] 与现有技术相比较,本发明引入了代理模块来实现利用缓存机制提高了VXML业务包房远端语音性能,减小了系统的负担和系统资源的浪费问题。

附图说明

[0017] 图1是现有技术中的电话语音系统的结构图;
[0018] 图2是本发明实施例所述的电话语音系统结构图。

具体实施方式

[0019] 本发明在这里提供了一种提高语音可扩展标记语言业务播放远端语音性能方法,以解决现有技术中如何能够提高VXML业务播放远端语音性能,以减小系统负担和系统资源浪费的问题。以下对具体实施方式进行详细描述,但不作为对本发明的限定。
[0020] 本发明的目的是提供一种新型的利用缓存机制提高VXML业务播放远端语音性能的方法,克服以上所述的简单的远程语音播放模式的缺点。同时在类似于客户/服务器系统这样特点的系统中,本方法也可以得到运用。
[0021] 本发明的技术关键点是通过在简单的远程语音播放模式中引入代理模块实现缓存机制,来实现对简单的远程语音播放模式在大话务量时的语音播放的性能改进。
[0022] 如图2所示,为本发明引入了代理模块来实现利用缓存机制提高语音可扩展标记语言业务播放远端语音性能的装置结构图;这里本发明实施例的利用缓存机制提高VXML业务播放远端语音性能的实现方法的具体步骤如下:
[0023] 在电话语音系统中的VXML平台上设置代理模块;
[0024] 当业务需要播放语音文件时,VXML解析器向代理模块请求该语音文件;
[0025] 在代理模块内设置一个hash表并进行维护,该hash表中缓存已下载的语音文件信息;当代理模块收到VXML解析器的请求后,首先在hash表中缓存中查询此语音文件是否已下载,如果已下载,则向VXML解析器返回该语音文件信息;否则,代理模块向远端服务器请求下载该语音文件,下载完成后向VXML解析器返回该语音文件信息,同时将该文件信息缓存到hash表中;
[0026] 代理模块自动检测hash表中的文件是否更新,刷新策略是当电话语音系统话务量低于某个阈值时,代理模块定时检测远端服务器上的文件是否更新,如果有更新则重新下载该文件,下载完成更新hash表缓存中的文件信息;
[0027] 同时,在代理模块维护正在下载的语音文件队列,若有新的语音文件下载请求,首先查找下载的语音文件队列,如果下载的语音文件队列中存在同样的正在下载相同的语音文件,则将该请求加入队列中的这一项;否则将该语音文件作为新项加入下载的语音文件队列,同时将此请求加入该项;若下载完成,则从下载的语音文件队列中删除该项。此步骤用于避免了多个业务同时去下载同一个语音文件。
[0028] 与现有技术相比较,本发明实施例所述的技术方案带来的有益效果包括:
[0029] 1、当业务脚本播放语音的时候,VXML解析器先向代理模块请求语音文件,因为业务相对稳定,所以缓存在大多数时候能够命中,这样避免了大量的数据传送,提高了语音文件播放的效率。
[0030] 2、代理模块有自动刷新语音文件的机制,这样也不失业务的灵活性。业务中的语音更新后,仍然可以在提供服务时得到体现。
[0031] 3、代理模块对多个业务同时下载同一个文件也做了优化处理,避免了大话务量时的重复下载。同时此部分下载和更新语音文件的功能模决化,也降低了整个系统的维护难度。
[0032] 当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。