首頁(yè)>>廠(chǎng)商>>IVR系統平臺廠(chǎng)商>>Voxeo

基于VoiceXML的語(yǔ)音應用系統開(kāi)發(fā)

2008/10/30

一、概述

  到目前為止,人們從Internet獲取各種資源時(shí),還只能是借助計算機來(lái)實(shí)現。而實(shí)際上,電話(huà)具有比計算機更高的普及率,如果允許人們通過(guò)電話(huà)來(lái)訪(fǎng)問(wèn)Internet的資源,那么這對于Internet的應用發(fā)展必將是一次質(zhì)的飛躍。在這類(lèi)應用前景的驅動(dòng)下,VoiceXML [1] 標準被提出來(lái)了,它是由World Wide Web Consortium (W3C)制定的,目前最新版本為2.1。

  VoiceXML使得用戶(hù)可以通過(guò)電話(huà)按鍵或語(yǔ)音來(lái)訪(fǎng)問(wèn)Internet上的各種資源,它是語(yǔ)音瀏覽技術(shù)以及語(yǔ)音互聯(lián)網(wǎng)的核心。 VoiceXML為語(yǔ)音應用領(lǐng)域展現了一個(gè)廣闊的未來(lái),用VoiceXML開(kāi)發(fā)的語(yǔ)音應用系統,不僅可以完全代替傳統CTI(計算機電話(huà)集成) 系統所能提供的功能,而且還可以使應用系統開(kāi)發(fā)過(guò)程極其簡(jiǎn)單快捷、系統有極高的可擴展性、可維護性、可移植性、可重用性和開(kāi)放性,在語(yǔ)音門(mén)戶(hù)、語(yǔ)音呼叫中心(Call Center) 、語(yǔ)音信息服務(wù)、語(yǔ)音電子商務(wù)等領(lǐng)域有著(zhù)廣泛的應用。

  本文通過(guò)編寫(xiě)一個(gè)簡(jiǎn)單的自動(dòng)語(yǔ)音識別程序來(lái)試圖讓讀者對VoiceXML語(yǔ)言的一些基本概念和基于VoiceXML的語(yǔ)音應用系統的基本構成有一個(gè)大致的了解。該示例程序已經(jīng)部署在http://evolution.voxeo.com。讀者可以在電腦上通過(guò)Skype客戶(hù)端(免費)或者傳統的電話(huà)(收費)運行該文中的示例程序。

二、VoiceXML技術(shù)簡(jiǎn)介

  VoiceXML(語(yǔ)音可擴展標記語(yǔ)言)是用來(lái)描述語(yǔ)音對話(huà)過(guò)程的標記語(yǔ)言。其定義了如何使用語(yǔ)音識別、語(yǔ)音合成、互聯(lián)網(wǎng)訪(fǎng)問(wèn)、數據庫訪(fǎng)問(wèn)、語(yǔ)音文件播放、DTMF按鍵識別等功能開(kāi)發(fā)一個(gè)完整的語(yǔ)音應用系統。 與HTML/XML標準類(lèi)似,VoiceXML也是一種基于文本的腳本語(yǔ)言。

  就象程序員可以使用HTML/XML語(yǔ)言開(kāi)發(fā)WEB應用程序,從而把文字和圖片等信息以網(wǎng)頁(yè)的方式提供給用戶(hù)類(lèi)似,程序員可以使用VoiceXML語(yǔ)言開(kāi)發(fā)基于語(yǔ)音的應用程序,從而把用戶(hù)需要的信息以語(yǔ)言的形式提供給用戶(hù)。 用戶(hù)可以通過(guò)VoIP終端或者傳統電話(huà)來(lái)訪(fǎng)問(wèn)這類(lèi)應用程序從而得到想要的信息(如天氣,股市,定位等)。和用戶(hù)訪(fǎng)問(wèn)WEB頁(yè)面時(shí)需要通過(guò)鍵盤(pán)輸入想要查詢(xún)的內容不同,用戶(hù)訪(fǎng)問(wèn)基于 VoiceXML的語(yǔ)言應用時(shí)可以通過(guò)“說(shuō)話(huà)”來(lái)獲取想要的信息。執行VoiceXML語(yǔ)言的VoiceXML服務(wù)器負責把用戶(hù)的語(yǔ)音轉換成文字(自動(dòng)語(yǔ)音識別)進(jìn)行搜索并把搜索到的結果以語(yǔ)音的方式“讀”給用戶(hù)(語(yǔ)音合成輸出)。下圖(圖一)顯示了基于VoiceXML的語(yǔ)音應用和基于HTML的WEB應用的相似和不同。

圖一、VoiceXML應用和WEB應用的比較

下圖(圖二)展示了基于VoiceXML的語(yǔ)音應用系統的基本架構:

  文檔服務(wù)器(WEB Server):用于存放VoiceXML腳本文件(或者根據由VoiceXML Server發(fā)過(guò)來(lái)了HTTP請求自動(dòng)生成VoiceXML腳本),和事先錄制好的音頻文件等一切有關(guān)的文檔。 VoiceXML Server通過(guò)HTTP請求從該文檔服務(wù)器獲取各種需要的文件。

  VoiceXML 服務(wù)器(VoiceXML Gateway):用于接收和識別用戶(hù)的輸入,解釋和執行VoiceXML腳本文件,并把結果轉換成語(yǔ)音輸出給用戶(hù)。它一般具備下列組件:VoiceXML解釋器組件(VoiceXML Browser),呼叫控制組件(CCXML Browser),自動(dòng)語(yǔ)音識別組件(ASR),語(yǔ)音合成組件(TTS)等。這些組件共同組成了VoiceXML的解釋和執行平臺。

圖二、VoiceXML應用系統架構

  和互聯(lián)網(wǎng)用戶(hù)通過(guò)鍵盤(pán)輸入某個(gè)WEB頁(yè)面的地址(URL)來(lái)訪(fǎng)問(wèn)WEB應用類(lèi)似,VoiceXML用戶(hù)通過(guò)電話(huà)或者VoIP終端撥打某個(gè)應用對應的電話(huà)號碼來(lái)訪(fǎng)問(wèn)該應用程序(圖中的步驟1)。VoiceXML服務(wù)器收到用戶(hù)的呼叫后,根據用戶(hù)撥打的號碼去文檔服務(wù)器查找對應的VoiceXML文件(圖中的步驟2),通過(guò)HTTP請求把文件下載到本機執行,根據特定應用的需要,VoiceXML服務(wù)器可能會(huì )發(fā)出多個(gè)HTTP請求獲取和應用有關(guān)的其他文件,比如需要播放的語(yǔ)言文件等(圖中的步驟3)。然后由 VoiceXML解釋器組件( VoiceXML Browser)解釋和執行VoiceXML腳本語(yǔ)言并把結果轉換成語(yǔ)音傳送給用戶(hù)(圖中的步驟4)。在執行過(guò)程中,用戶(hù)可能需要通過(guò)語(yǔ)音和VoiceXML服務(wù)器進(jìn)行交互,比如菜單選擇或者對查詢(xún)結果進(jìn)行過(guò)濾等。VoiceXML服務(wù)器通過(guò)呼叫控制組件(CCXML Browser),自動(dòng)語(yǔ)音識別組件(ASR),語(yǔ)音合成組件(TTS)來(lái)實(shí)現這些交互。

  在VoiceXML系統中有兩種形式語(yǔ)音的輸出: 機器合成語(yǔ)音(TTS)和事先錄制好的語(yǔ)音文件。

  TTS ( Text-To-Speech) : 是由機器把文本轉換為數字語(yǔ)音格式,這種聲音聽(tīng)起來(lái)會(huì )感覺(jué)有些機械和不自然,但是輸出內容靈活,不受任何限制。

  事先錄制好的語(yǔ)音文件: 和TTS相比聽(tīng)起來(lái)更自然,但是內容受限制。在實(shí)際應用中往往把二者結合起來(lái)。

  VoiceXML系統中的輸入也有兩種形式: 自動(dòng)語(yǔ)音識別 (ASR) 和雙音多頻鍵盤(pán)音(DTMF)。

  ASR (Automatic Speech Recognition) 是指計算機把用戶(hù)的語(yǔ)音自動(dòng)識別成文字信息,便于計算機的進(jìn)一步處理,從而使得用戶(hù)可以通過(guò)自然語(yǔ)言來(lái)控制計算機的執行。

  DTMF (Dual Tone MultiFrequency) 則是用戶(hù)可以通過(guò)電話(huà)的按鍵進(jìn)行輸入。

三、VoiceXML開(kāi)發(fā)示例

  本文中的信息查詢(xún)例子演示了一個(gè)簡(jiǎn)單的VoiceXML應用。該例子VoiceXML腳本中用到的所有的標簽如表1所示,表2是該例子的源代碼。圖四是該例子的呼叫流程。首先是用戶(hù)發(fā)起呼叫,應用程序通過(guò)計算機合成語(yǔ)音(TTS)告訴用戶(hù)所有的選擇項并等待用戶(hù)的響應。用戶(hù)的語(yǔ)音將由計算機根據語(yǔ)法標簽

  中定義的規則進(jìn)行自動(dòng)識別。如果識別成功,標簽中定義的變量“choice”被賦值。例如,如果用戶(hù)說(shuō)出“weather”,則計算機會(huì )把字符串“weather” 賦值給“choice”。然后在標簽中定義的條件判斷語(yǔ)句會(huì )根據變量“choice”的值把相應的語(yǔ)音播放給用戶(hù)。如果用戶(hù)沒(méi)有響應,標簽被執行并把“I didn’t hear you” 播放給用戶(hù),然后提示用戶(hù)重新輸入(標簽)。同樣,如果用戶(hù)的語(yǔ)音沒(méi)有被識別,標簽 將被執行并告訴用戶(hù)“I didn’t quite understand you” ,然后提示用戶(hù)重新輸入(標簽)。

表 1. 本示例中用到的VoiceXML 標簽

圖四:信息查詢(xún)例子呼叫流程圖

表 2. 信息查詢(xún)例子源代碼

<?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1" >
<form id="Choices">
<field name="choice">
<prompt>
Welcome to the Voice XML journey.
This tutorial demonstrates voice recognition.
Please choose from the followings:
to check the weather, say weather .
to check the stock quotes, say stock .
to get the direction information, say direction.
</prompt>
<grammar>
<![CDATA[ [
[weather dtmf-1]{<choice "weather">}
[stock dtmf-2]{<choice "stock">}
[direction dtmf-3]{<choice "direction">}
]
]]>
</grammar>
<noinput>
I didn't hear you. <reprompt/>
</noinput>
<nomatch>
I didn't quite understand you. <reprompt/>
</nomatch>
<filled>
<if cond="choice=='weather'">
<prompt>OK let's check the weather. Thank you. </prompt>
<elseif cond="choice=='stock'"/>
<prompt>OK let's check the stock quotes. Thank you. </prompt>
<else/>
<prompt>OK let's get the direction information. Thank you. </prompt>
</if>
</filled>
</field>
</form>
</vxml>

  該示例程序已經(jīng)部署在http://evolution.voxeo.com。讀者可以下列幾個(gè)途徑來(lái)執行該示例程序:

  1. 通過(guò)Skype客戶(hù)端撥打號碼 +99000936 9992001335, 免費呼叫。

  2. 通過(guò)Xlite(一個(gè)免費的VoIP軟件)或者任何VoIP終端呼叫 sip:9992001335@sip.voxeo.net

  3. 通過(guò)手機或者固定電話(huà)撥打號碼 +1 407 459 1963(美國電話(huà)號碼,收費)。
  讀者可以訪(fǎng)問(wèn) http://docs.voxeo.com/voicexml/2.0/frame.jsp?page=learningvoicexml.htm 獲取更詳細的VoiceXML示例和教程,該網(wǎng)站也提供免費注冊,注冊后可以免費發(fā)布自己的VoiceXML應用和其他人共享(就象本文中的例子一樣)。

參考
[1]http://www.w3.org/TR/voicexml21/

CTI論壇編輯



相關(guān)鏈接:
Voxeo VoiceObjects 統一自服務(wù)提高滿(mǎn)意度 2009-09-23
Voxeo攜Prophecy10高度亮相SpeechTEK2009 2009-09-03
擁有中文TTS的Prophecy IVR語(yǔ)音平臺 2009-08-17
Voxeo發(fā)布開(kāi)源的電話(huà)“云計算”服務(wù)平臺 2009-08-12
自助式語(yǔ)音平臺開(kāi)發(fā)利器Prophecy Platform 2009-08-03

分類(lèi)信息:  CTI平臺技術(shù)_與_交互語(yǔ)音技術(shù)  CTI平臺技術(shù)_與_voicexml技術(shù)  交互語(yǔ)音技術(shù)_與_voicexml技術(shù)
亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 平谷区| 德安县| 渝北区| 西丰县| 涡阳县| 常熟市| 蓝山县| 甘德县| 桃园市| 宁晋县| 垦利县| 大邑县| 玛多县| 天峨县| 贺州市| 新津县| 峨眉山市| 通州市| 海淀区| 佛坪县| 辰溪县| 综艺| 获嘉县| 霍林郭勒市| 南陵县| 长阳| 双鸭山市| 鄯善县| 兴和县| 瓮安县| 安化县| 康乐县| 沧州市| 望江县| 益阳市| 彝良县| 英吉沙县| 进贤县| 曲松县| 长阳| 洪雅县| http://444 http://444 http://444 http://444 http://444 http://444