亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

通過標(biāo)記共享話音應(yīng)用處理的制作方法

文檔序號:2836993閱讀:344來源:國知局
專利名稱:通過標(biāo)記共享話音應(yīng)用處理的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及在客戶端-服務(wù)器環(huán)境中處理話音應(yīng)用。 背景纟支術(shù)
近些年來,如因特網(wǎng)的廣泛使用所表明的,電子信息和服務(wù)得到了極 大發(fā)展。通常,用戶例如通過使用鍵盤或觸摸屏#^信息來與系統(tǒng)進(jìn)行交 互并在視頻顯示器上查看結(jié)果。然而,提供了越來越多的允許用戶口頭輸 入信息的M系統(tǒng)。系統(tǒng)輸出被以可聽的方式提供給用戶。這種^S舌系統(tǒng) 允許用戶輕松地在移動中獲取信息和服務(wù),解放了用戶的雙手以用于其他 任務(wù)。
會話系統(tǒng)需要語音識別來理解用戶以及需要語音合成來以類似人的話 音朗讀信息。通常,這種系統(tǒng)在電話基礎(chǔ)設(shè)施中執(zhí)行,其中客戶端設(shè)備是 例如手機(jī)的電話設(shè)備。最初,這種^^系統(tǒng)與啞客戶端設(shè)備一起工作,因 此所有的語音處理(識別與合成)都在與啞客戶端通信的服務(wù)器中完成。 然而,手持客戶端的處理能力的提高使得在客戶端側(cè)的語音處理(識別與 合成兩者)成為可能。
在一些會話系統(tǒng)中,語音識別的一部分在客戶端設(shè)備上處理。術(shù)語"分 布式語音識別"用于指允許應(yīng)用將在客戶端設(shè)備上的本地語音處理與到基 于網(wǎng)絡(luò)的語音服務(wù)的遠(yuǎn)程訪問相結(jié)合的系統(tǒng)。例如,諸如降噪之類的信號 處理可在客戶端設(shè)備上執(zhí)行,然后客戶端設(shè)備將處理后的數(shù)據(jù)發(fā)送到基于 網(wǎng)絡(luò)的語音服務(wù)。反過來,該語音服務(wù)處理所接收的信號以確定用戶的請 求并4吏用話音輸出來響應(yīng)用戶。
另 一種使用客戶端的處理能力的已知技術(shù)是嵌入式連接文本語音轉(zhuǎn)換
(eCTTS),其中語音合成的一部分在客戶端完成。將語音段保持為可被
重建回語音的壓縮特征向量。
在另一種已知方法中,^"系統(tǒng)可完全駐留在客戶端,并且整個語音 識別過程都在本地完成。由于客戶端通常具有有限的處理能力,因此只有 很小的M系統(tǒng)才在這種設(shè)備上執(zhí)行。
盡管存在現(xiàn)有的技術(shù),但是仍需要用于處理話音應(yīng)用的更有效和通用 的系統(tǒng)。

發(fā)明內(nèi)容
在此描述了 一種靈活的機(jī)制,其中根據(jù)客戶端的計算能力在客戶端與 服務(wù)器之間共享與對話有關(guān)的計算。這種分布優(yōu)選地在標(biāo)記級別執(zhí)行并且 這種方法使得客戶端設(shè)備能夠執(zhí)行腳本。
根據(jù)本發(fā)明的第一方面,提供了 一種在客戶端-服務(wù)器計算系統(tǒng)中的服 務(wù)器上處理話音應(yīng)用的方法。接收指示所述客戶端的計算能力的數(shù)據(jù)。根
據(jù)所述接收的數(shù)據(jù)選擇一組指令,所述一組指令指定了要由所i^戶端在 用戶與所述計算系統(tǒng)之間的基于話音的對話中執(zhí)^f亍的任務(wù)。將所述一組指 令提供給所述客戶端以便執(zhí)行。
根據(jù)本發(fā)明的另一方面,提供了一種在客戶端-服務(wù)器計算系統(tǒng)中的客 戶端i殳備上處理話音應(yīng)用的方法。接收來自所iii良務(wù)器的腳本,4艮據(jù)指示 所ii^戶端設(shè)備的計算能力的數(shù)據(jù)來選擇所述腳本。分析所逸卿本以確定 一組將由所述客戶端設(shè)備在用戶與所述客戶端-服務(wù)器計算系統(tǒng)之間的基 于話音的對話中執(zhí)行的指令。在所述客戶端設(shè)備上執(zhí)行所述指令。
根據(jù)本發(fā)明的另 一方面,提供了 一種用于在客戶端-服務(wù)器計算系統(tǒng)中 處理話音應(yīng)用的服務(wù)器。所述服務(wù)器首先包括用于接收指示所述客戶端的 計算能力的數(shù)據(jù)的裝置。所述服務(wù)器還具有用于根據(jù)所述接收的數(shù)據(jù)選擇 一組指令的裝置,所述一組指令指定了要由所述客戶端在用戶與所述計算 系統(tǒng)之間的基于話音的對話中執(zhí)行的任務(wù)。所述服務(wù)器還具有用于將所述 一組指令提供給所述客戶端以便執(zhí)行的裝置。
根據(jù)本發(fā)明的另 一方面,提供了 一種用于在客戶端-服務(wù)器計算系統(tǒng)中
處理話音應(yīng)用的客戶端設(shè)備。所i^戶端設(shè)備包括用于接收來自所述Ji良務(wù) 器的腳本的裝置,根據(jù)指示所^戶端設(shè)備的計算能力的數(shù)據(jù)來選擇所述
腳本。還具有用于分析所述腳本以確定一組將由所id^戶端設(shè)備在用戶與 所述客戶端-服務(wù)器計算系統(tǒng)之間的基于話音的對話中執(zhí)行的指令的裝置, 以及用于在所述客戶端設(shè)備上執(zhí)行所述指令的裝置。
根據(jù)本發(fā)明的另一方面,提供了一種計算機(jī)程序產(chǎn)品,包括記錄在機(jī) 器可讀記錄介質(zhì)上的用于控制服務(wù)器的操作的機(jī)器可讀程序代碼,所述程 序代碼在所述服務(wù)器上執(zhí)行以便執(zhí)行在客戶端-服務(wù)器計算系統(tǒng)中處理話 音應(yīng)用的方法。所述方法包括上面描述的步驟。
根據(jù)本發(fā)明的另一方面,提供了一種計算枳4呈序產(chǎn)品,包括記錄在機(jī) 器可讀記錄介質(zhì)上的用于控制客戶端設(shè)備的操作的機(jī)器可讀程序代碼,所 述程序代碼在所述客戶端設(shè)備上執(zhí)行以便執(zhí)行在客戶端-服務(wù)器計算系統(tǒng) 中處理話音應(yīng)用的方法。所述方法包括上面描述的步驟。
才艮據(jù)本發(fā)明的另一方面,提供了一種用于處理話音應(yīng)用的系統(tǒng),所述 系統(tǒng)包括客戶端設(shè)備,其具有指示所ii^戶端設(shè)備的計算能力的相關(guān)數(shù) 據(jù)。所述系統(tǒng)還包括數(shù)據(jù)存儲裝置,其存儲了多個腳本,所述腳本指定 了要在用戶與所述系統(tǒng)之間的基于話音的對話中執(zhí)行的任務(wù)。所述系統(tǒng)還 包括服務(wù)器,其根據(jù)所^目關(guān)數(shù)據(jù)選擇用于所^戶端設(shè)備的適當(dāng)腳本。
的第一組指令和將在所述服務(wù)器上執(zhí)行的笫二組指令。同步層同步所述第 一和第二組指令的執(zhí)行。


以下參考

了本發(fā)明的一個或多個實施例,其中 圖1是根據(jù)優(yōu)選實施例的適于執(zhí)行這里描述的技術(shù)的客戶端-服務(wù)器配 置的示意圖2是根據(jù)本發(fā)明的一個優(yōu)選實施例的用于在客戶端和服務(wù)器之間靈 活地分布計算的方法的流程圖;圖3是根據(jù)本發(fā)明的一個優(yōu)選實施例的適于在圖1的配置中使用的計 算設(shè)備的示意圖;以及
圖4是根據(jù)本發(fā)明的一個優(yōu)選實施例的在客戶端與服務(wù)器之間提供同 步的通信層的示意圖。
具體實施例方式
這里描述的技術(shù)提供了一種在客戶端和服務(wù)器之間共享對話處理的靈 活機(jī)制。允許在客戶端處執(zhí)行腳本。在描述的配置中,服務(wù)器可訪問腳本 的各個版本,每一個版本都針對相應(yīng)的設(shè)備簡檔進(jìn)行定制。
圖1顯示了具有客戶端設(shè)備10和服務(wù)器20的系統(tǒng)1。如圖所示,客 戶端設(shè)備10是移動電話。然而客戶端10可以是任何具有計算資源的可發(fā) 聲設(shè)備。例如,客戶端設(shè)備IO可以是個人數(shù)字助理(PDA)或通用計算機(jī), 該計算機(jī)具有麥克風(fēng)和一個或多個揚聲器以使其能夠檢測口語輸入并提供 可聽的輸出。該客戶端設(shè)備具有足夠的處理能力來運行嵌入式語音識別引 擎。
客戶端設(shè)備10例如經(jīng)由蜂窩電話網(wǎng)絡(luò)發(fā)射信息12到服務(wù)器20,并從 服務(wù)器20接收信息14。將在下面參考圖3描述服務(wù)器20和客戶端設(shè)備10 的硬件結(jié)構(gòu)。
服務(wù)器20包括語音服務(wù)器24和話音瀏覽器22。語音服務(wù)器24執(zhí)行 自動語音識別(ASR)以將從客戶端設(shè)備10的用戶接收的請求轉(zhuǎn)換成更適 于進(jìn)一步處理的格式。從客戶端設(shè)備10接收的數(shù)據(jù)可包括語音,也可包括 音頻輸入,比如雙音多頻(DTMF)鍵控輸入。
語音服務(wù)器24還利用文本到語音轉(zhuǎn)換(TTS )能力將信息轉(zhuǎn)換成音頻。 該音頻與數(shù)據(jù)14 一同發(fā)送回客戶端設(shè)備10。
話音瀏覽器22接收輸入數(shù)據(jù)12和輸出數(shù)據(jù)14。在使用類似于圖1中 所見的架構(gòu)的現(xiàn)有技術(shù)系統(tǒng)中,話音瀏覽器22僅僅是客戶端設(shè)備10和語 音服務(wù)器24之間的通道。然而,在當(dāng)前描述的配置中,話音瀏覽器22指 定了要在客戶端設(shè)備10上執(zhí)行的對話和/或語音處理。通過根據(jù)客戶端設(shè)
備10的能力來自適應(yīng)地共享處理,系統(tǒng)1通過減少服務(wù)器的往返操作而提
高了效率
服務(wù)器20可使用超文本傳輸協(xié)議(HTTP)工具26來訪問信息和服 務(wù)。如圖所示,該信息和服務(wù)源自數(shù)據(jù)存儲裝置30。然而,實際上使用系 統(tǒng)1可訪問的信息和服務(wù)的來源很多。HTTP工具26和數(shù)據(jù)存儲裝置30 之間的通信鏈路28例如可以是因特網(wǎng)或局域網(wǎng)。鏈路28可以只是點到點 連接。
M戶端設(shè)備10發(fā)送到話音瀏覽器22的數(shù)據(jù)12包括語音、文本和定 義客戶端設(shè)備10的簡檔的參數(shù)。話音瀏覽器22選擇指定了要在客戶端設(shè) 備10上完成何種處理的腳本(稱為"話音腳本")。因此,客戶端設(shè)備 10的能力和話音腳本確定了服務(wù)器20和客戶端設(shè)備10之間的處理的劃 分。在確定哪些對話在客戶端10上本地處理以及語音處理的哪個部分在客 戶端IO (而不"艮務(wù)器20)上發(fā)生方面,使用話音腳本可以提供靈活性。
從話音瀏覽器22發(fā)送到客戶端設(shè)備10的數(shù)據(jù)14包括話音腳本和語 音??蛻舳嗽O(shè)備10執(zhí)行該話音腳本。語音服務(wù)器24并不受服務(wù)器20和客 戶端設(shè)備10之間的處理任務(wù)的分配的影響。
在一種配置中,^使用話音可擴(kuò)展標(biāo)記語言(VoiceXML)編寫話音腳 本。VoiceXML是基于XML的腳本編寫語言,并且VoiceXML正作為用 于激活語音的交互應(yīng)用的標(biāo)準(zhǔn)而獲得認(rèn)同。VoiceXML為編寫基于音頻對 話的話音應(yīng)用提供了與平臺無關(guān)的語言。存在兩種主要類型的對話。窗體 呈現(xiàn)信息和收集輸入,而菜單呈現(xiàn)一組選擇。
圖2是在客戶端10和服務(wù)器20之間靈活共享處理的方法的流程圖。 在步驟202,客戶端10與服務(wù)器20進(jìn)行通信以提供定義客戶端設(shè)備10的 能力的參數(shù)。可在呼叫建立時通知服務(wù)器20客戶端的能力,或者,服務(wù)器 20已經(jīng)被通知了客戶端的能力。例如,可以將信息與電話號碼關(guān)聯(lián),以通 知服務(wù)器20該電話號碼由具有特定能力的客戶端設(shè)備所使用。
描M戶端能力的參數(shù)包括可用存儲器量、處理能力和電池電力。也 可使用其他參數(shù),包括確定特定硬件或軟件資源(如程序或協(xié)議)在客戶
端上可用的數(shù)據(jù)。
在步驟204,服務(wù)器使用所述參數(shù)來確定客戶端設(shè)備10的簡檔。在步 驟206,服務(wù)器20選擇合適的話音腳本并將所選擇的腳本發(fā)送給客戶端設(shè) 備IO。服務(wù)器可訪問多個話音腳本,每一個腳本都針對特定的設(shè)備簡檔進(jìn) 行定制。所述話音腳本指定了要在客戶端10處完成的對話和/或語音處 理,并且還指定了哪些部分可在服務(wù)器20處執(zhí)行。語音識別引擎已安裝在 客戶端設(shè)備10上,并且所述腳本定義了處理步驟,為了執(zhí)行所述處理步驟, 將使用語音識別引擎。
客戶端設(shè)備10分析所述話音腳本(步驟208 ),并且在步驟210,客
戶端設(shè)備10全部或部分地執(zhí)行該話音腳本??蛻舳嗽O(shè)備10解釋該腳本以
確定需要完成何種任務(wù)以及以怎樣的順序完成任務(wù)。然后客戶端設(shè)備10 執(zhí)行如腳本要求的指定的語音識別與合成任務(wù)。例如,話音腳本可指定客
戶端設(shè)備需要合成一段提示并對用戶播放該提示??蛻舳嗽O(shè)備調(diào)用語音合 成引擎以合成提示。然后,客戶端設(shè)備接收用戶的口頭響應(yīng)并使用語音識 別系統(tǒng)處理該響應(yīng)。在腳本中提供了來自用戶的期望響應(yīng)的語法。語音識 別系統(tǒng)的輸出被用來確定將執(zhí)行的下一個步驟,如在話音腳本中指定的那樣。
由于運行時的約束,客戶端設(shè)備10可能無法支持話音腳本所指定的計 算??蛻舳嗽O(shè)備10然后可以選擇表現(xiàn)為啞客戶端。在這種情況下,客戶端
-服務(wù)器交換將支持所需的多種交互。
在一種配置中,話音腳本包括用于對話和語音的JavascriptTM。發(fā)送 到客戶端設(shè)備10的話音腳本將告知可以在客戶端設(shè)備上完成何種操作。該 話音腳本包括設(shè)^t感的結(jié)構(gòu),因此通過分析腳本,客戶端可以確定可在 客戶端上完成何種處理。話音腳本包括對話處理所需的語法結(jié)構(gòu)以及語音 處理所需的語音結(jié)構(gòu)。話音腳本的結(jié)構(gòu)還包括"可選形態(tài)",用于在分類 為"必須具有"或"可以具有"的文本之間進(jìn)行區(qū)別,以及用于標(biāo)識分類 為"必須具有"的語音。(Java和所有基于Java的商標(biāo)和標(biāo)志都是Sun Microsystems, Inc.在美國和/或其他國家/地區(qū)的商標(biāo)。)
話音服務(wù)器的語言是VXML的擴(kuò)展,其支持在服務(wù)器20和客戶端設(shè) 備10之間分配處理的特性。該語言包含未在VXML中定義的標(biāo)記標(biāo)簽, 所述標(biāo)簽被分析器用來從擴(kuò)展后的VXML生成VXML服務(wù)器和VXML 客戶端。下面描述了一些附加標(biāo)簽。
如果要處理一個較大的數(shù)據(jù)塊,則使用此標(biāo)簽。擴(kuò)展后的語言提供了
這樣的特性其將數(shù)據(jù)塊分割為兩個部分,然后分別在客戶端和服務(wù)器上 處理這兩個部分,而不是在服務(wù)器20或客戶端10上處理較大的數(shù)據(jù)塊。 這里,splitblock-,,25,,表示該數(shù)據(jù)塊的前25個字符將在客戶端設(shè)備10上 處理,而剩下的字符將在服務(wù)器20上處理。
如果存在必需由客戶端設(shè)備io提示的問題,則可根據(jù)客戶端的簡檔合
并這些問題??蛻舳嗽O(shè)備10的簡檔包括與可用存儲器量和客戶端10上的
用戶是否處于匆忙之中有關(guān)的信息。如果用戶處于匆忙之中,則這些問題 可被合并以及可由客戶端或服務(wù)器按照規(guī)定詢問。也可存在其他合并準(zhǔn)則。
3,《split soui:c:e;"Clierit or Server" d^stinaition;"clientw>
如果存在任何服務(wù)器20或客戶端10在n次嘗試中未識別的問題,則 可以將該問題分割為不同的提示。客戶端設(shè)備10或服務(wù)器20可以如目的 地指定的那樣詢問這些問題。也可存在其他分割準(zhǔn)則。問題的基礎(chǔ)語法(嵌 套的或順序的)將在確定分割的過程中起作用。
在嵌套語法的情況下,通常需要將最后一個答案(而不是所有答案) 返回服務(wù)器以便分割提示。
嵌套語法的例子
a. 哪個國家?
b. 哪個城市?
c. 哪個機(jī)場?
如果必須進(jìn)一步提交答案,則只有最后一個答案是所關(guān)心的,因為目 的是確定哪個機(jī)場。由于存儲器的限制,將整個問題分成三個較小的語法。在順序語法的情況中,用戶不僅僅是關(guān)心最后一個問題的答案,而且 關(guān)心對整個問題的每個部分的答案。在某種分割之后,必須連接與每個子 部分相關(guān)的答案并且將其存儲在末尾,以產(chǎn)生與服務(wù)器本身識別整個語法 等同的效果。
順序語法的例子
a. 名字是什么?
b. 姓氏是什么?
c. 位置在何處?
在此情況中我們關(guān)心完整的答案,因為合并后的問題是"您想要誰的 電話號碼以及位置在何處?",其答案可能是(Nitendra Rajput在辦公室)。
與分割和合并相關(guān)的不同可能性
1) 在服務(wù)器20處識別整個問題并且無需分割與該問題相關(guān)的整體大 型語法(Big Grammar)。
2) 將問題劃分成若干較小的部分并且在客戶端一側(cè)完成語音識別。 每次都將與提示相關(guān)的語法傳送給客戶端設(shè)備10。在嵌套語法的情況中, 語法依賴于用戶給出的答案,但是在順序語法的情況中,傳送的語法可獨 立于答案或可依賴于用戶之前給出的答案(例如,布爾答案)。
3 )另 一種可能是在若干較小的部分之中,在服務(wù)器20處標(biāo)識一些部 分并且在客戶端設(shè)備10處標(biāo)識其他部分。在這種配置中,與將在客戶端 10處標(biāo)識的問題相關(guān)的語法被傳送給客戶端。
4)在傳送語法中存在一個潛在問題。即使客戶端10不需要返回任何 內(nèi)容給服務(wù)器20,客戶端也還是要回到服務(wù)器以使得服務(wù)器能夠根據(jù)之前 的答案傳送合適的語法。這將增大客戶端10的響應(yīng)時間。所以,如果客戶 端具有足夠的存儲器來處理所有語法,則應(yīng)將所有語法傳送給客戶端,以 防止客戶端還需要回到服務(wù)器以使得傳送合適的語法。
例子
a.哪個國家?b.哪個城市?
在這種情況中,第二個問題依賴于第一個問題。所以我們在客戶端IO 處保留所有國家的所有城市的語法(如果該客戶端的能力允許的話),而 不是基于前一個問題的答案傳送用于第二個問題的合適語法。
5) 在理想條件下,服務(wù)器20的存儲器M夠大的,所以可在服務(wù)器 20上合并任何數(shù)目的問題。然而,在客戶端設(shè)備10處,將考慮客戶端IO 的存儲器限制來完成語法合并??梢源嬖诙喾N提示合并組合。這意味著如 果將多個問題發(fā)送到客戶端10以便合并,則可能并不是所有問題都在客戶 端處合并。
例子
a. 您的名字?
b. 您的地址?
c. 您父親的名字?
將發(fā)送這三個問題以在客戶端10處進(jìn)行合并。然而,考慮到客戶端 10的存儲器限制,也許只有第一個和最后一個問題^皮合并。
6) 無需在客戶端10的存儲器限制的基礎(chǔ)上完成分割/合并。其他可 能的考慮包括"無匹配,,數(shù)的計數(shù),或"無輸入"數(shù)的計數(shù)。如果用戶處 于匆忙之中,則可以執(zhí)行合并,而如果用戶不能處理大型問題而僅愿意回 M小的問題,則可以執(zhí)行分割??稍谟脩籼峁┑男畔⒌幕A(chǔ)上執(zhí)行分割。 例如,如果用戶通過相應(yīng)提示提供了比所需信息更多的信息,則可以執(zhí)行 分割。
例子
a. 您的名字?
b. 您的姓氏和出生日期?
如果用戶對第一個問題的回答是"Neeraj Chaudhary",則第二個問 題可被分割成兩個部分,并且僅詢問問題"您的出生日期?"。
附錄A包括一個以擴(kuò)展XVML語言編寫的樣例程序。如示出的,可 以分析該樣例程序并將其劃分成兩個部分,這兩個部分可以分別在力良務(wù)器20和客戶端設(shè)備10上運行。
圖4示出了用于同步在客戶端10和服務(wù)器20上執(zhí)行的處理的通信層。 話音腳本(即VXMLext文件)401在VXMLext解釋器層被處理,該層包 括分解器403和解釋器的一組功能特定的模塊405。解釋器層是客戶端10 和服務(wù)器20所執(zhí)行的分析的一部分。在一種配置中,解釋器層是話音瀏覽 器的一部分,該話音瀏覽器同時駐留在客戶端和服務(wù)器上,即客戶端話音 瀏覽器和服務(wù)器話音瀏覽器22。
將功能特定的模塊405的輸出提供給運行在服務(wù)器20上的服務(wù)器引擎 407和運行在客戶端10上的客戶端引擎409。引擎407、 409又與同步客戶 端-服務(wù)器交互的同步器411進(jìn)行通信。同步器411與運行在服務(wù)器20上 的瀏覽器代碼413和運行在客戶端410上的瀏覽器代碼415進(jìn)行交互。同 步器411和瀏覽器代碼413、 415共同構(gòu)成了通信層。
當(dāng)'目的地,中指定了多個值(以'/,分隔)時,第一個值是首選 目的地。如果標(biāo)簽無法在第一目的地中執(zhí)行,則在下一個指定位置完成執(zhí) 行。作為這些基本值的組合的值在執(zhí)行順序中具有以下含義
*客戶端/服務(wù)器在客戶端上執(zhí)行。如果執(zhí)行未成功,則在服務(wù)器 上執(zhí)行。
*客戶端/部分的/服務(wù)器在客戶端上執(zhí)行。如果執(zhí)行未成功,則 在客戶端上完成部分執(zhí)行并在服務(wù)器上完成其余執(zhí)行。如果此操作也不成 功,則在服務(wù)器上執(zhí)行。
*客戶端/分割在客戶端上執(zhí)行。如果未成功,則將對話分割成多 個子對話,然后在客戶端上執(zhí)行。
*客戶端/分割/服務(wù)器在客戶端上執(zhí)行。如果未成功,則將對話 分割成多個子對話并在客戶端上執(zhí)行。如果此操作也不成功,則在服務(wù)器 上執(zhí)4于該對話。
*客戶端/服務(wù)器/分割在客戶端上執(zhí)行。如果未成功,則在服務(wù)
器上執(zhí)行。如果此操作也不成功,則將對話分割成多個子對話并在客戶端 上執(zhí)行。如果同樣失敗,則在服務(wù)器上執(zhí)行多個子對話。
*月l務(wù)器/客戶端該值是有效的,但是只對〈merge〉和〈blocl^標(biāo)簽 有意義。當(dāng)與〈merge〉一起使用時,合并后的對話將在服務(wù)器上執(zhí)行,并 且如果未成功,則該對話被分割,然后在客戶端上執(zhí)行。
現(xiàn)在將針對目的地值為'客戶端/分割/服務(wù)器,的情況對同步層進(jìn) 行描述。
當(dāng)處理在客戶端IO上發(fā)生時,服務(wù)器20處于等待模式。如果處理成 功,則客戶端10編寫'成功,消息并將已識別的字符串寫入要發(fā)送給月良務(wù) 器20的文件。然后客戶端10移動到下一個對話,該對話如在VXMLext (話音腳本)401中指定的那樣將在客戶端10或服務(wù)器20上發(fā)生。
如果在客戶端10的處理未成功,則該客戶端通過使用運行在其上的適 當(dāng)模塊405再次分割呼叫流而繼續(xù)。服務(wù)器20仍處在等待狀態(tài)。如果在客 戶端的所有步驟均未成功,則最后將'未成功,消息發(fā)送給服務(wù)器20并且 將所識別的字符串設(shè)置為空字符串。然后,處理在服務(wù)器20上繼續(xù)進(jìn)行, 與客戶端10相比,服務(wù)器20具有更好的識別準(zhǔn)確性和更好的處理能力。
如果第一次嘗試失敗,則服務(wù)器20將分割問題。在這種情況下,即使 服務(wù)器20處的識別嘗試失敗,客戶端10也必須知道服務(wù)器的當(dāng)前狀態(tài)。 這是因為即使識別發(fā)生在服務(wù)器20上,客戶端IO也具有錄制語音、發(fā)送 該語音到服務(wù)器20、然后接收并播放合成語音的任務(wù)。
當(dāng)所有處理都在客戶端10上發(fā)生時,服務(wù)器20沒有任何任務(wù)并可保 持休眠,直到已在客戶端IO上嘗試了標(biāo)簽"目的地"所允許的所有情況。
由于通信層傳送已識別的字符串,所以對于連接的、順序的和嵌套的 呼叫流,策略是變化的。
a)應(yīng)記住的是,在連接問題的情況下,應(yīng)在連接之后提交所有答案。
例子-您的名字?
需要連接下面三個部分
1.您的名?2. 您的中間名?
3. 您的姓?
b) 在嵌套呼叫流的情況下,僅需提交最后一個問題的答案。 例子-我們只關(guān)心機(jī)場,但是將詢問下面的嵌套問題-哪個國家?
哪個城市? 哪個機(jī)場?
c) 在連續(xù)呼叫流的情況下,需要提交最后一個問題的答案 例子-我們只關(guān)心座位號
1. 告訴我在1到20、 21到40、 41到60、 61到80之間的座位號;
2. 告訴我您的座位號。
隨后的用來同步客戶端10和服務(wù)器20的方法對于其他目的地值(服 務(wù)器/客戶端,服務(wù)器/客戶端/分割,客戶端/服務(wù)器等)是類似的, 但是其中事件發(fā)生的順序?qū)㈦S目的地值而變化。
圖3是一類適于執(zhí)行用于在客戶端和服務(wù)器之間共享話音應(yīng)用處理的 計算機(jī)軟件的計算機(jī)系統(tǒng)300的示意圖。計算機(jī)軟件在安裝在計算機(jī)系統(tǒng) 300上的合適的操作系統(tǒng)下執(zhí)行,并且可被視為包括用于完成特定步驟的 各種軟件代碼裝置。計算機(jī)系統(tǒng)300可被用作服務(wù)器20。通過下面描述的 修改,計算機(jī)系統(tǒng)300的結(jié)構(gòu)也可用在客戶端設(shè)備10中。
計算機(jī)系統(tǒng)300的組件包括計算機(jī)320、鍵盤310和鼠標(biāo)315以及顯 示器3卯。計算機(jī)320包括處理器340、存儲器350、輸入/輸出(1/0)接 口 360、 365、 ^L頻接口 345和存^i殳備355。
處理器340是執(zhí)行操作系統(tǒng)和在操作系統(tǒng)下執(zhí)行的計算機(jī)軟件的中央 處理單元(CPU)。存儲器350可包括隨M取存儲器(RAM)和只讀存
儲器(ROM),并在處理器340的控制下使用。
視頻接口 345連接到顯示器3卯并提供在顯示器390上顯示的信號。 從例如鍵盤310和鼠標(biāo)315提供用于操作計算機(jī)320的用戶輸入。也可以 使用例如麥克風(fēng)的其他類型的輸入。也可以使用一個或多個揚聲器(未示 出)以可聽的方式輸出信號。存^i殳備355可包括盤驅(qū)動器或任何其他合 適的存儲介質(zhì)。
計算機(jī)320的每個組件都連接到包括數(shù)據(jù)、地址和控制總線的內(nèi)部總 線330以允許計算機(jī)320的組件經(jīng)由總線330互相通信。
計算機(jī)系統(tǒng)300可使用到網(wǎng)絡(luò)(在圖3中表示為因特網(wǎng)380)的通信 信道385經(jīng)由輸^/輸出(I/O)接口 365連接到一個或多個類似的計算才幾。
可以將計算機(jī)軟件記錄在便攜存儲介質(zhì)上,在這種情況下,計算機(jī)系
統(tǒng)300從存儲設(shè)備355訪問計算機(jī)軟件程序。備選地,計算機(jī)320可直接 從因特網(wǎng)380訪問計算機(jī)軟件。在這兩種情況中,用戶都可以例如使用鍵 盤310和鼠標(biāo)315操作在計算機(jī)320上執(zhí)行的編程的計算機(jī)軟件來與計算 才幾系統(tǒng)300交互。
可同樣適當(dāng)?shù)厥褂闷渌渲没蝾愋偷挠嬎銠C(jī)系統(tǒng)來執(zhí)行協(xié)助實施在此 描述的技術(shù)的計算機(jī)軟件。此外,在實施所描述的技術(shù)中,可以使用諸如 數(shù)字信號處理器之類的定制器件和專用硬件。
手持客戶端設(shè)備IO可具有與圖3中顯示的相類似的計算結(jié)構(gòu)。顯示器 3卯和小鍵盤被集成在通常不具有鼠標(biāo)315的客戶端設(shè)備10中??蛻舳嗽O(shè) 備IO中的I/0接口 365是用于經(jīng)由蜂窩網(wǎng)絡(luò)發(fā)送和接收信號的^機(jī),并 且客戶端設(shè)備10還包括麥克風(fēng)和揚聲器以處理可聽的輸入和輸出。
潛論
可對在此描述的技術(shù)和配置做出各種改變和修改,這對相關(guān)領(lǐng)域的技 術(shù)人員來說是顯而易見的。
附錄A
VXML擴(kuò)展樣例程序
<formula>formula see original document page 20</formula>
此文件是提供給分析器的,將生成以下的‘VXML服務(wù)器’和‘VXML客戶端’,文件并使得它們分別在服務(wù)器和客戶端上運行。
生成的VXML服務(wù)器<formula>formula see original document page 21</formula>
——""幕ww,w抓,w^"總efj5r^
spj it:ti考,'—*^---------------------------------------1—1
<field J7細(xì)& "一
<gr,3i TOr grammar desti"5t:ip72 Sefpne spJifctii^r*/>
-----^----^-------一——一—
,。羊>","".禍剛,,,</_p2,j>t> 《9'r3j if ^r src欲,."V》
<grn^iar #/》
《prcy^psx"^,,,柳閱,,,<r/proip&> 《7r3,sr ■src23"-......
標(biāo)簽庫
1. 合并
屬性 源
目的地
2. 分割
屬性 源
目的地3. 塊
新屬性
處理
分割塊
4. 字段 新屬性 執(zhí)行
5. 轉(zhuǎn)到合并
7. 轉(zhuǎn)到分割
8. Vxmlext
插入此標(biāo)簽以將所述語言與正常的Vxml語言進(jìn)行區(qū)分,因為它具有 各種其他特性。
還添加了用于合并和分割多個提示的特定標(biāo)簽(語法 <p(promptmimberafter p)>)
權(quán)利要求
1.一種在客戶端-服務(wù)器計算系統(tǒng)中靈活地處理話音應(yīng)用的方法,所述方法包括以下在所述服務(wù)器上的步驟接收指示所述客戶端的計算能力的數(shù)據(jù);根據(jù)所述接收的數(shù)據(jù)選擇一組指令,所述一組指令指定了要由所述客戶端在用戶與所述計算系統(tǒng)之間的基于話音的對話中執(zhí)行的任務(wù);以及將所述一組指令提供給所述客戶端以便執(zhí)行。
2. 如權(quán)利要求l所述的方法,還包括以下步驟如果一個或多個所述任務(wù)未成功地在所述客戶端上執(zhí)行,則在所述服 務(wù)器上執(zhí)行所述一個或多個任務(wù)。
3. 如權(quán)利要求1或2所述的方法,其中所述接收步驟包括以下子步驟 標(biāo)識所i^戶端;以及檢索所述標(biāo)識的客戶端的所述計算能力的預(yù)定簡檔。
4. 如權(quán)利要求1或2所述的方法,其中所述接收步驟在所述基于話音 的對話的運行時間接收所述數(shù)據(jù)。
5. 如任一上述權(quán)利要求所述的方法,其中所述數(shù)據(jù)包括以下項中的至 少一項所^Jl戶端上可用的存儲器的度量;所^戶端的電池電力;所^戶端的處理能力;以及標(biāo)識所g戶端上可用的一個或多個資源的信息。
6. —種在客戶端-服務(wù)器計算系統(tǒng)中靈活地處理話音應(yīng)用的方法,所 述方法包括以下在客戶端設(shè)備上的步驟接收來自所述服務(wù)器的腳本,根據(jù)指示所i^戶端設(shè)備的計算能力的 數(shù)據(jù)來選擇所^本;分析所述腳本以確定一組將由所述客戶端設(shè)備在用戶與所述客戶端-服務(wù)器計算系統(tǒng)之間的基于話音的對話中執(zhí)行的指令;以及 在所ii^戶端設(shè)備上執(zhí)行所述指令。
7. 如權(quán)利要求6所述的方法,還包括以下步驟 將指示計算能力的所述數(shù)據(jù)從所M戶端設(shè)備發(fā)送到所述服務(wù)器。
8. 如權(quán)利要求6或7所述的方法,還包括以下步驟 通知所述服務(wù)器至少一個所述指令未成功地在所述客戶端設(shè)備上執(zhí)行'
9. 如權(quán)利要求6、 7或8所述的方法,其中所述對話包括要播放給所 述用戶的提示以及對所述提示的期望響應(yīng)的相應(yīng)語法,所述方法進(jìn)一步包 括以下步驟根據(jù)所id^戶端設(shè)備的計算能力,將至少一個所述提示和相應(yīng)語法分 割成多個提示和相應(yīng)語法。
10. 如權(quán)利要求9所述的方法,其中所述腳本包括一個或多個目的地 參數(shù),所述參數(shù)指定了是在所述服務(wù)器上還是在所述客戶端設(shè)備上執(zhí)行所 述多個提示和語法。
11. 如權(quán)利要求6至8中的任一權(quán)利要求所述的方法,其中所述對話 包括將插_;故給所述用戶的提示和期望響應(yīng)的相應(yīng)語法,并且其中根據(jù)所述 客戶端設(shè)備的計算能力,將多個所述提示和相應(yīng)語法合并成一個提示和相 應(yīng)語法。
12. —種用于在客戶端-服務(wù)器計算系統(tǒng)中處理話音應(yīng)用的服務(wù)器,所 述服務(wù)器包括用于接收指示所^戶端的計算能力的數(shù)據(jù)的裝置;用于根據(jù)所述接收的數(shù)據(jù)選擇一組指令的裝置,所述一組指令指定了務(wù);以及用于將所述一組指令提供給所述客戶端以便執(zhí)行的裝置。
13. 如權(quán)利要求12所述的服務(wù)器,包括用于在一個或多個所述任務(wù)未成功地在所^J1戶端上執(zhí)行的情況下, 在所述^^務(wù)器上執(zhí)行所述一個或多個任務(wù)的裝置。
14. 如權(quán)利要求12或13所述的服務(wù)器,其中所述接收裝置包括 用于標(biāo)識所述客戶端的裝置;以及用于檢索所述標(biāo)識的客戶端的所述計算能力的預(yù)定簡檔的裝置。
15. 如權(quán)利要求12或13所述的服務(wù)器,其中所述接收裝置可操作以 在所述基于話音的對話的運行時間接收所述數(shù)據(jù)。
16. 如權(quán)利要求12至15中的任一權(quán)利要求所述的服務(wù)器,其中所述 數(shù)據(jù)包括以下項中的至少一項所述客戶端上可用的存儲器的度量;所ii^戶端的電池電力;所^Ji戶端的處理能力;以及標(biāo)識所ii^戶端上可用的一個或多個資源的信息。
17. —種用于在客戶端-服務(wù)器計算系統(tǒng)中處理話音應(yīng)用的客戶端設(shè) 備,所述客戶端設(shè)備包括用于接收來自所述服務(wù)器的腳本的裝置,根據(jù)指示所述客戶端設(shè)備的 計算能力的數(shù)據(jù)來選擇所述腳本;用于分析所i^本以確定一組將由所ii^戶端設(shè)備在用戶與所ii^戶 端-服務(wù)器計算系統(tǒng)之間的基于話音的對話中執(zhí)行的指令的裝置;以及用于在所^Jl戶端設(shè)備上執(zhí)行所述指令的裝置。
18. 如權(quán)利要求17所述的客戶端設(shè)備,還包括用于將指示計算能力的所述數(shù)據(jù)從所ii^戶端設(shè)備發(fā)送到所述服務(wù)器 的裝置。
19. 如權(quán)利要求17或18所述的客戶端設(shè)備,還包括用于通知所述服務(wù)器至少一個所述指令未成功地在所述客戶端i殳備上 執(zhí)行的裝置。
20. 如權(quán)利要求17、 18或19所述的客戶端設(shè)備,其中所述對話包括 要播放給所述用戶的提示以及對所述提示的期望響應(yīng)的相應(yīng)語法,所述設(shè) 備還包括用于根據(jù)所^戶端設(shè)備的計算能力,將至少一個所述提示和相應(yīng)語法分割成多個提示和相應(yīng)語法的裝置。
21. 如權(quán)利要求20所述的客戶端設(shè)備,其中所述腳本包括一個或多個 目的地參數(shù),所述參數(shù)指定了是在所述服務(wù)器上還是在所述客戶端設(shè)備上 執(zhí)行所述多個提示和語法。
22. 如權(quán)利要求17至19中的任一權(quán)利要求所述的客戶端設(shè)備,其中 所述對話包括將播放給所述用戶的提示和期望響應(yīng)的相應(yīng)語法,并且其中 根據(jù)所^戶端設(shè)備的計算能力,將多個所述提示和相應(yīng)語法合并成一個 提示和相應(yīng)語法。
23. —種計算積一呈序產(chǎn)品,包括記錄在機(jī)器可讀記錄介質(zhì)上的用于控 制服務(wù)器的操作的機(jī)器可讀程序代碼,所述程序代碼在所述服務(wù)器上執(zhí)行 以便執(zhí)行在客戶端-服務(wù)器計算系統(tǒng)中處理話音應(yīng)用的方法,所述方法包括 以下步驟接收指示所iU:戶端的計算能力的數(shù)據(jù);根據(jù)所述接收的數(shù)據(jù)選擇一組指令,所述一組指令指定了要由所ii^戶端在用戶與所述計算系統(tǒng)之間的基于話音的對話中執(zhí)行的任務(wù);以及將所述一組指令提供給所i^:戶端以1更執(zhí)行。
24, 一種計算機(jī)程序產(chǎn)品,包括記錄在機(jī)器可讀記錄介質(zhì)上的用于控 制客戶端設(shè)備的操作的機(jī)器可讀程序代碼,所述程序代碼在所^戶端設(shè) 備上執(zhí)行以便執(zhí)行在客戶端-服務(wù)器計算系統(tǒng)中處理話音應(yīng)用的方法,所述 方法包括以下步驟接收來自所述服務(wù)器的腳本,根據(jù)指示所ii^戶端設(shè)備的計算能力的 數(shù)據(jù)來選擇所一本;分析所述腳本以確定一組將由所述客戶端設(shè)備在用戶與所述客戶端-服務(wù)器計算系統(tǒng)之間的基于話音的對話中執(zhí)行的指令;以及在所ii^戶端設(shè)備上執(zhí)行所述指令。
25. —種用于處理話音應(yīng)用的系統(tǒng),包括客戶端設(shè)備,其具有指示所^戶端設(shè)備的計算能力的相關(guān)數(shù)據(jù); 數(shù)據(jù)存儲裝置,其存儲了多個腳本,所述腳本指定了要在用戶與所述系統(tǒng)之間的基于話音的對話中執(zhí)行的任務(wù);服務(wù)器,其根據(jù)所勤目關(guān)數(shù)據(jù)選擇用于所述客戶端設(shè)備的適當(dāng)腳本;解釋層,其處理所選擇的腳本以針對所述對話確定將在所述客戶端設(shè) 備上執(zhí)行的第一組指令和將在所述服務(wù)器上執(zhí)行的第二組指令;以及同步層,其同步所述第一和第二組指令的執(zhí)行。
26. —種包括計算機(jī)程序代碼裝置的計算機(jī)程序,當(dāng)所述程序在計算 機(jī)上執(zhí)行時,所述裝置適于執(zhí)行如權(quán)利要求1至11中的任一權(quán)利要求所述 的方法。
全文摘要
一種用于處理話音應(yīng)用的系統(tǒng),包括客戶端設(shè)備(10),所述客戶端設(shè)備(10)具有指示其計算能力的相關(guān)數(shù)據(jù)。所述系統(tǒng)可訪問多個腳本,所述腳本指定了將在用戶與所述系統(tǒng)之間的基于話音的對話中執(zhí)行的任務(wù)??稍跒g覽器級別解釋所述腳本。服務(wù)器(20)根據(jù)所述相關(guān)數(shù)據(jù)選擇用于客戶端設(shè)備(10)的適當(dāng)腳本。解釋層處理所選擇的腳本以針對所述對話確定將在客戶端設(shè)備(10)上執(zhí)行的第一組指令和將在服務(wù)器(20)上執(zhí)行的第二組指令。從而根據(jù)客戶端的計算能力在所述客戶端設(shè)備與所述服務(wù)器之間共享計算。
文檔編號G10L15/28GK101341532SQ200680048024
公開日2009年1月7日 申請日期2006年12月13日 優(yōu)先權(quán)日2005年12月20日
發(fā)明者A·A·納納瓦蒂, N·拉伊布 申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1