專(zhuān)利名稱:用于并行多模通信的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明總的來(lái)說(shuō)涉及通信系統(tǒng)和方法,更具體的,涉及多模通信 的系統(tǒng)和方法。
背景技術(shù):
涉及例如手持裝置、移動(dòng)電話、膝上型電腦、PDA、互聯(lián)網(wǎng)設(shè)備、 非移動(dòng)裝置以及其他適當(dāng)裝置等通信裝置的新興技術(shù)領(lǐng)域是,用于獲 得信息和服務(wù)的多模交互應(yīng)用。典型地,駐留在通信裝置上的是至少 一個(gè)用戶代理程序,例如瀏覽器或其他任何用作用戶接口的適當(dāng)軟件。 用戶代理程序可響應(yīng)提取請(qǐng)求(由用戶經(jīng)用戶代理程序輸入或來(lái)自另 一裝置或軟件應(yīng)用),接收提取的信息,經(jīng)內(nèi)部或外部連接在內(nèi)容服 務(wù)器中導(dǎo)航,并呈現(xiàn)信息給用戶。用戶代理程序可以是圖形瀏覽器, 語(yǔ)音瀏覽器或如本領(lǐng)域普通技術(shù)人員可識(shí)別的任何其他適當(dāng)?shù)挠脩舸?理程序。此種用戶代理程序可包括(但不限于)J2ME應(yīng)用程序、 Netscape 、 Internet Explorer 、 java應(yīng)用程序、WAP瀏覽器、即時(shí)消 息傳遞、多媒體接口、 Windows CETM或任何其他適當(dāng)?shù)能浖?shí)現(xiàn)。
多模技術(shù)允許用戶通過(guò)一種模式經(jīng)用戶代理程序獲取例如語(yǔ)音、 數(shù)據(jù)、視頻、音頻或其他信息等信息,以及例如電子郵件、天氣更新、 銀行交易和新聞或其他信息等服務(wù),并通過(guò)另一種不同模式接收信息。 更具體地,用戶可以一種或多種模式提交信息提取請(qǐng)求,例如對(duì)麥克 風(fēng)說(shuō)出提取請(qǐng)求,然后用戶可以用相同模式(即語(yǔ)音)接收提取的信息,或用不同模式接收提取的信息,例如通過(guò)圖形瀏覽器,它在顯示 屏幕上以可視方式呈現(xiàn)返回的信息。在該通信裝置內(nèi),用戶代理程序 以和標(biāo)準(zhǔn)Web瀏覽器或其他駐留在連接到網(wǎng)絡(luò)或其他終端裝置上的裝 置中的適當(dāng)軟件程序相似的方式運(yùn)行。
同樣的,建議可允許用戶使用一個(gè)或多個(gè)用戶輸入和輸出接口的 多模通信系統(tǒng),從而在通信期間促進(jìn)多種模式的通信。用戶代理程序 可位于不同裝置上,例如,網(wǎng)絡(luò)元件,諸如語(yǔ)音網(wǎng)關(guān)可能包括語(yǔ)音瀏 覽器;例如手持裝置可包括圖形瀏覽器,諸如WAP瀏覽器;或其他適 當(dāng)?shù)幕谖谋镜挠脩舸沓绦?。因此,由于多模性能,用戶可以以?種模式輸入,而以不同模式接收返回的信息。
已經(jīng)建議試圖提供兩種不同模式用戶輸入的系統(tǒng),例如以語(yǔ)音模 式輸入某些信息而通過(guò)觸覺(jué)或圖形接口輸入其他信息。 一種建議提議 使用串行異步方法,該方法需要例如用戶首先輸入語(yǔ)音,然后在語(yǔ)音 輸入完成之后發(fā)送短消息。此種系統(tǒng)中的用戶在同一通信期間可能必 須手動(dòng)切換模式。因此,這一建議很麻煩。
另一建議的系統(tǒng)使用單個(gè)用戶代理程序,并在現(xiàn)有HTML頁(yè)面中 標(biāo)示語(yǔ)言標(biāo)簽,從而用戶可以例如使用語(yǔ)音定位到Web頁(yè),而非打出 搜索詞,然后該相同的HTML頁(yè)面允許用戶輸入文本信息。例如,用 戶可以說(shuō)出詞"城市",并打入地址,以從內(nèi)容服務(wù)器獲得可視地圖 信息。然而,此種建議的方法通常強(qiáng)制將具有不同模式的多模式輸入 輸入到一個(gè)裝置上的相同的用戶代理程序(通過(guò)相同瀏覽器輸入)內(nèi)。 因此,通常在相同HTML形式中輸入語(yǔ)音和文本信息,并通過(guò)相同用 戶代理程序處理語(yǔ)音和文本信息。然而該建議需要使用運(yùn)行在單個(gè)裝 置上的單個(gè)用戶代理程序。
因此,對(duì)于較簡(jiǎn)單的裝置,例如具有有限處理能力和存儲(chǔ)容量的 移動(dòng)裝置,復(fù)雜的瀏覽器會(huì)降低裝置性能。同樣,這樣的系統(tǒng)不能促進(jìn)通過(guò)不同用戶代理程序的并行多模信息輸入。此外,期望在多個(gè)裝 置上提供并行多模輸入,從而允許在不同應(yīng)用程序或不同裝置中的分 布式處理。
另一個(gè)建議提議使用多模網(wǎng)關(guān)和多模代理,其中多模代理提取內(nèi) 容并輸出該內(nèi)容到通信裝置中的用戶代理程序(例如瀏覽器)和例如 在網(wǎng)絡(luò)元件中的語(yǔ)音瀏覽器,從而該系統(tǒng)允許某裝置的語(yǔ)音和文本輸 出。然而,此方法看來(lái)不允許用戶在不同模式中通過(guò)不同應(yīng)用程序的 并行信息輸入,因?yàn)樵摻ㄗh也是單個(gè)用戶代理方案,要求輸出不同模 式的提取信息到單個(gè)用戶代理程序或?yàn)g覽器。
因此,需要一種改進(jìn)的并行多模通信設(shè)備和方法。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一方面,提供一種用于多模通信的方法,其包括 發(fā)送對(duì)應(yīng)多種輸入模式的并行多模輸入信息的請(qǐng)求,該多種輸入模式 和在相同會(huì)話期間運(yùn)行的多個(gè)用戶代理程序相關(guān);以及混合從所述多 個(gè)用戶代理程序發(fā)送的、已接收并行多模輸入信息,所述多個(gè)用戶代 理程序發(fā)送的發(fā)送是響應(yīng)并行不同多模信息的請(qǐng)求。
根據(jù)本發(fā)明的另一方面,提供一種多模網(wǎng)絡(luò)元件,包括多個(gè)代 理,每個(gè)都發(fā)送對(duì)應(yīng)多個(gè)輸入模式的并行多模輸入信息請(qǐng)求,該輸入 模式和在相同會(huì)話期間運(yùn)行的多個(gè)用戶代理程序相關(guān);以及多?;旌?br>
引擎,可操作地響應(yīng)自多個(gè)用戶代理程序發(fā)送的、已接收并行多模輸 入信息,該多個(gè)用戶代理程序發(fā)送是響應(yīng)并行不同多模信息的請(qǐng)求, 且所述多?;旌弦婵刹僮鞯赜糜诨旌献远鄠€(gè)用戶代理程序發(fā)送的不 同多模輸入信息,以在相同會(huì)話期間提供來(lái)自不同用戶代理程序的并 行多模通信。
在附圖中為示范目的而非限制目的顯示本發(fā)明,其中相同參考標(biāo) 記表示相同元件,其中
圖1是顯示根據(jù)本發(fā)明一個(gè)實(shí)施例的多模通信系統(tǒng)的例子的框
圖2是顯示根據(jù)本發(fā)明一個(gè)實(shí)施例的用于多模通信的方法的例子 的流程圖3是顯示根據(jù)本發(fā)明一個(gè)實(shí)施例的用于多模通信的方法的例子 的流程圖4是顯示根據(jù)本發(fā)明一個(gè)實(shí)施例的用于混合接收的并行多模輸
入信息的方法的例子的流程圖5是顯示根據(jù)本發(fā)明實(shí)施例的多模網(wǎng)絡(luò)元件的例子的框圖; 圖6是顯示根據(jù)本發(fā)明一個(gè)實(shí)施例的用于保持多模通信連續(xù)性的
方法的例子的流程圖7是顯示圖6所示的流程圖一部分的流程圖;以及
圖8是顯示根據(jù)本發(fā)明一個(gè)實(shí)施例的并行多模通信狀態(tài)存儲(chǔ)器內(nèi)
容的例子的框圖。
具體實(shí)施例方式
簡(jiǎn)要的,多模網(wǎng)絡(luò)元件通過(guò)一個(gè)或多個(gè)裝置上不同的用戶代理程 序促進(jìn)并行多模通信會(huì)話。例如,以語(yǔ)音模式通信的用戶代理程序, 例如包括語(yǔ)音引擎和呼叫/會(huì)話終端的語(yǔ)音網(wǎng)關(guān)內(nèi)的語(yǔ)音瀏覽器,和另 一運(yùn)行在不同模式的用戶代理程序,例如移動(dòng)裝置上的圖形瀏覽器同 步。在通信期間,多個(gè)用戶代理程序可操作的和內(nèi)容服務(wù)器相連,從 而允許并行多模交互。
多模網(wǎng)絡(luò)元件,例如,獲得用于相互之間運(yùn)行在不同模式的多個(gè) 用戶代理程序的模式特有指令,例如通過(guò)獲得和不同模式相關(guān)的不同 的標(biāo)記語(yǔ)言形式,例如和文本模式相關(guān)的HTML形式以及和語(yǔ)音模式 相關(guān)的語(yǔ)音XML形式。多模網(wǎng)絡(luò)元件在通信期間根據(jù)獲得的模式特有 指令,為用戶同步來(lái)自多個(gè)用戶代理程序的輸出。例如,語(yǔ)音瀏覽器被同步輸出音頻到一個(gè)裝置上,而圖形瀏覽器被同步并行輸出顯示到 相同或不同裝置的屏幕上,從而允許用戶通過(guò)一個(gè)或多個(gè)用戶代理程 序輸入。在用戶通過(guò)多個(gè)運(yùn)行在不同模式的用戶代理程序輸入輸入信 息的情況中, 一種方法和設(shè)備響應(yīng)并行不同多模信息的請(qǐng)求,混合 (fuse)或鏈接接收到的并行多模輸入信息,該信息由用戶輸入并從多 個(gè)用戶代理程序發(fā)送。這樣,通過(guò)不同的用戶代理程序促進(jìn)了并行多 模輸入,從而在并行多模會(huì)話期間可以使用多個(gè)裝置或其他裝置,或 采用多種用戶代理程序的一個(gè)裝置。由多模網(wǎng)絡(luò)元件指定不同的代理, 從而和各個(gè)設(shè)定在不同模式的不同用戶代理程序通信。
圖1顯示根據(jù)本發(fā)明一個(gè)實(shí)施例的多模通信系統(tǒng)10的例子。在此 例子中,多模通信系統(tǒng)IO包括通信裝置12,多?;旌戏?wù)器14,語(yǔ) 音網(wǎng)關(guān)16以及內(nèi)容源,例如Web服務(wù)器18。通信裝置12可以是例如 互聯(lián)網(wǎng)設(shè)備,PDA,蜂窩電話,有線置頂盒,電信息通信單元,膝上 型計(jì)算機(jī),臺(tái)式計(jì)算機(jī)或任何其他移動(dòng)或非移動(dòng)裝置。根據(jù)期望的通 信類(lèi)型,通信裝置12還可操作地和無(wú)線局域或廣域網(wǎng)絡(luò)20、 WAP/數(shù) 據(jù)網(wǎng)關(guān)22、短消息服務(wù)中心(SMSC/尋呼網(wǎng)絡(luò))24或任何其他適當(dāng)?shù)?網(wǎng)絡(luò)通信。類(lèi)似地,多?;旌戏?wù)器14可和任何適當(dāng)裝置、網(wǎng)絡(luò)元件 或包括互聯(lián)網(wǎng)、內(nèi)部網(wǎng)、多媒體服務(wù)器(MMS) 26、即時(shí)消息傳遞服 務(wù)器(IMS) 28或任何其他適當(dāng)網(wǎng)絡(luò)的網(wǎng)絡(luò)通信。因此,通信裝置12 經(jīng)通信鏈路21、 23和25與適當(dāng)?shù)木W(wǎng)絡(luò)進(jìn)行有效通信。類(lèi)似地,多模 混合服務(wù)器14也適于經(jīng)如27所指的通用通信鏈路鏈接到不同網(wǎng)絡(luò)。 在此例子中,語(yǔ)音網(wǎng)關(guān)16包含通用語(yǔ)音網(wǎng)關(guān)功能,該通用語(yǔ)音網(wǎng)關(guān)功 能包括(但不限于)語(yǔ)音識(shí)別引擎、手寫(xiě)體識(shí)別引擎、面部識(shí)別引擎、 通話控制、用戶規(guī)定算法以及如所期望的操作和維護(hù)控制器。在此例 子中,通信裝置12包括用戶代理程序30,例如WAP瀏覽器形式的視 覺(jué)瀏覽器(例如圖形瀏覽器)、手勢(shì)識(shí)別、觸覺(jué)識(shí)別或任何其他適當(dāng) 的瀏覽器,還包括例如電話電路,該電話電路包括麥克風(fēng)和揚(yáng)聲器, 如電話電路32所示。還可以使用其它適當(dāng)結(jié)構(gòu)。語(yǔ)音網(wǎng)關(guān)16包括其他用戶代理程序34,例如語(yǔ)音瀏覽器,以適
于由電話電路32的揚(yáng)聲器輸出的形式輸出音頻信息。然而,應(yīng)當(dāng)認(rèn)識(shí) 到,揚(yáng)聲器可位于不是通信裝置12的不同裝置上,例如尋呼機(jī)或其他 PDA,從而輸出音頻到一個(gè)裝置,而在另一裝置上提供經(jīng)用戶代理程 序30的視覺(jué)瀏覽器。還應(yīng)當(dāng)認(rèn)識(shí)到,雖然用戶代理程序34出現(xiàn)在語(yǔ) 音網(wǎng)關(guān)16內(nèi),通信裝置12 (如語(yǔ)音瀏覽器36所示)或其他適當(dāng)裝置 也可包含用戶代理程序34。為了如在此所述的提供并行多模通信,多 個(gè)用戶代理程序,即用戶代理程序30和用戶代理程序34,在給定會(huì)話 中以相互不同的模式操作。因此,用戶通過(guò)簽約公開(kāi)的服務(wù)并在模式 首選數(shù)據(jù)庫(kù)36內(nèi)預(yù)置模式首選項(xiàng),能預(yù)先規(guī)定各用戶代理程序的模式, 數(shù)據(jù)庫(kù)36可通過(guò)Web服務(wù)器18或任何其他服務(wù)器(包括MFS14)訪 問(wèn)。同樣,如果期望,用戶可以在會(huì)話期間選擇或改變給定的用戶代 理程序的模式,如本領(lǐng)域中已知的。
并行多模同步協(xié)調(diào)器42可包括在通信期間臨時(shí)存儲(chǔ)用于多個(gè)用 戶代理程序之一的模式特有指令的緩沖存儲(chǔ)器,補(bǔ)償和用于其他用戶 代理程序的模式特有指令相關(guān)的通信延遲。因此,例如,如果需要, 同步協(xié)調(diào)器42可以考慮系統(tǒng)延遲或其他延遲,等待并輸出模式特有指 令到代理,從而將它們并行呈現(xiàn)在不同用戶代理程序上。
同樣,如果期望,用戶代理程序30可提供輸入接口,以使用戶屏 蔽某些多模式。例如,如果某個(gè)裝置或用戶代理程序允許多模式操作,
用戶可以指示在特定期間屏蔽某個(gè)模式。例如,如果該用戶的輸出模 式是語(yǔ)音,但用戶所處環(huán)境嘈雜,例如用戶可以關(guān)閉到其語(yǔ)音瀏覽器 的輸出。從用戶接收的多模屏蔽數(shù)據(jù)可由多?;旌戏?wù)器14存儲(chǔ)在例 如存儲(chǔ)器602 (參見(jiàn)圖5)中,指示在給定會(huì)話期間屏蔽哪些模式。同 步協(xié)調(diào)器42然后避免獲得那些被標(biāo)識(shí)為屏蔽的模式的模式特有指令。
信息提取器46從多模應(yīng)用程序54獲得用于多個(gè)用戶代理程序30 和34的模式特有指令69。模式特有指令68和70被發(fā)送到用戶代理程序30和34。在此實(shí)施例中,多模應(yīng)用程序54包括識(shí)別模式特有指令
的數(shù)據(jù),這些指令和不同的用戶代理程序,并因此和如下所述不同的
模式相關(guān)。并行多模同步協(xié)調(diào)器42可操作的連接到信息提取器46,用 于接收模式特有指令。并行多模同步協(xié)調(diào)器42還可操作的連接到多個(gè) 代理38a-38n,從而指定給定會(huì)話所需的代理。
在不同的用戶代理程序30和34在不同裝置上時(shí),本方法包括通 過(guò)發(fā)送第一基于模式的標(biāo)記語(yǔ)言形式到一個(gè)裝置來(lái)發(fā)送并行多模輸入 信息68, 70請(qǐng)求,并發(fā)送基于第二模式標(biāo)記語(yǔ)言的形式到一個(gè)或多個(gè) 其他裝置,來(lái)請(qǐng)求在同一通信中來(lái)自不同裝置的不同模式的用戶并行 信息輸入。這些基于標(biāo)記語(yǔ)言的形式作為模式特有指令68, 70而獲得。
多模會(huì)話控制器40用于利用裝置上的會(huì)話控制算法來(lái)檢測(cè)輸入 會(huì)話、應(yīng)答會(huì)話、修改會(huì)話參數(shù)、終止會(huì)話及交換會(huì)話和媒體信息。 如果期望,多模會(huì)話控制器40可以是會(huì)話的主會(huì)話端接點(diǎn),或如果例 如用戶希望建立和例如語(yǔ)音網(wǎng)關(guān)的另一網(wǎng)關(guān)的會(huì)話,它可以是次會(huì)話 端接點(diǎn),語(yǔ)音網(wǎng)關(guān)反過(guò)來(lái)會(huì)建立和多模會(huì)話控制器40的會(huì)話。
同步協(xié)調(diào)器發(fā)送輸出同步消息47和49到各個(gè)代理38a和38n,以 有效同步它們到各個(gè)多個(gè)用戶代理程序的輸出,該同步消息包括并行 多模輸入信息請(qǐng)求。代理38a和38n發(fā)送包含接收的多模輸入信息72 和74的輸入同步消息51和53到并行同步協(xié)調(diào)器42。
并行多模同步協(xié)調(diào)器42使用代理或當(dāng)用戶代理程序有此性能時(shí) 使用用戶代理程序來(lái)發(fā)送并接收同步消息47, 49, 51和53。當(dāng)代理 38a和38n接收來(lái)自不同用戶代理程序的已接收多模輸入信息72和74 時(shí),這些代理發(fā)送包含已接收多模輸入信息72和74的輸入同步消息 51和53到同步協(xié)調(diào)器42。同步協(xié)調(diào)器42前傳接收的信息到多?;旌?引擎44。同樣,如果用戶代理程序34發(fā)送同步消息給多模同步協(xié)調(diào)器 42,多模同步協(xié)調(diào)器42會(huì)發(fā)送該同步消息到會(huì)話中的另一用戶代理程序30。并行多模同步協(xié)調(diào)器42還執(zhí)行消息轉(zhuǎn)換、同步消息濾波,從而 使同步系統(tǒng)更加有效。并行多模同步協(xié)調(diào)器42可以維護(hù)在給定會(huì)話中 正使用的當(dāng)前用戶代理程序列表,從而當(dāng)需要同步時(shí),跟蹤那些需要 被通知的用戶代理程序。
多模混合服務(wù)器14包括多個(gè)多模代理38a-38n、多模會(huì)話控制器 40、并行多模同步協(xié)調(diào)器42、多模混合引擎44、信息(例如模式特有 指令)提取器46以及語(yǔ)音XML解釋器50。至少多模會(huì)話控制器40、 并行多模同步協(xié)調(diào)器42、多?;旌弦?4、信息提取器46以及多模 標(biāo)記語(yǔ)言(例如語(yǔ)音XML)解釋器50可用運(yùn)行一個(gè)或多個(gè)處理裝置的 軟件模塊實(shí)現(xiàn)。這樣,當(dāng)由一個(gè)或多個(gè)處理裝置讀取時(shí),包含可執(zhí)行 指令的存儲(chǔ)器使該一個(gè)或多個(gè)處理裝置執(zhí)行在此描述的關(guān)于各軟件模 塊的功能。多?;旌戏?wù)器14因此包括這些處理裝置,上述裝置可能 包括(但不限于)數(shù)字信號(hào)處理器、微計(jì)算機(jī)、微處理器、狀態(tài)機(jī)或 任何其他適當(dāng)?shù)奶幚硌b置。存儲(chǔ)器可以是ROM、 RAM、分布式存儲(chǔ)器、 閃存任何其他可存儲(chǔ)狀態(tài)或其他數(shù)據(jù)的適當(dāng)存儲(chǔ)器,當(dāng)由處理裝置執(zhí) 行時(shí),這些存儲(chǔ)器可使一個(gè)或多個(gè)處理裝置如在此所述的運(yùn)行。可選 地,軟件模塊的功能適于在硬件或如所期望的,在任何硬件、軟件和 固件的適當(dāng)組合中實(shí)現(xiàn)。
多模標(biāo)記語(yǔ)言解釋器50可以是狀態(tài)機(jī),或其他適當(dāng)硬件、軟件、固件或任何它們的合適組合,此外還執(zhí)行多模應(yīng)用程序54提供的標(biāo)記語(yǔ)言。
圖2顯示執(zhí)行多模通信的,在此例子中由多?;旌戏?wù)器14執(zhí)行 的方法。然而,應(yīng)當(dāng)認(rèn)識(shí)到,在此描述的任何步驟都可以任何適當(dāng)順 序或由任何適當(dāng)裝置或多個(gè)裝置執(zhí)行。對(duì)于當(dāng)前的多模會(huì)話,用戶代 理程序30 (例如WAP瀏覽器)發(fā)送請(qǐng)求52到Web服務(wù)器18,請(qǐng)求 來(lái)自可由Web服務(wù)器18訪問(wèn)的并行多模應(yīng)用程序54的內(nèi)容。這可以 通過(guò)例如輸入U(xiǎn)RL或點(diǎn)擊圖標(biāo)或使用任何其他通用機(jī)制實(shí)現(xiàn)。同樣如虛線52所示,每個(gè)用戶代理程序30和34都發(fā)送用戶模式信息到標(biāo)記 解釋器50。用作內(nèi)容服務(wù)器的Web服務(wù)器18從模式首選數(shù)據(jù)庫(kù)36中 獲得通信裝置12的多模首選項(xiàng)55,之前通過(guò)到并行多模服務(wù)的用戶預(yù) 先處理來(lái)填充該數(shù)據(jù)庫(kù)。Web服務(wù)器18然后通過(guò)可能包含來(lái)自數(shù)據(jù)庫(kù) 36的用戶首選項(xiàng)的通知56通知多?;旌戏?wù)器14,指明例如在并行 多模通信中正在使用哪些用戶代理程序,以及每個(gè)用戶代理程序都設(shè) 定在什么模式。在此例子中,用戶代理程序30被設(shè)定在文本模式,用 戶代理程序34被設(shè)定在語(yǔ)音模式。然后并行多模同步協(xié)調(diào)器42在會(huì) 話期間確定,多個(gè)多模代理38a-38n中的哪些被用于各用戶代理程序 30和34。這樣,并行多模同步協(xié)調(diào)器42將多模代理38a指定為文本代 理,和設(shè)定為文本模式的用戶代理程序30通信。類(lèi)似的,并行多模同 步協(xié)調(diào)器42將多模代理38n指定為傳送用于運(yùn)行在語(yǔ)音模式的用戶代
理程序34的語(yǔ)音信息的多模代理。如Web頁(yè)面提取器46所示的信息 提取器,從和并行多模應(yīng)用程序54相連的Web服務(wù)器18獲得模式特 定指令,例如標(biāo)記語(yǔ)言形式或其他的數(shù)據(jù)。
例如,在多模應(yīng)用程序54請(qǐng)求用戶輸入語(yǔ)音模式和文本模式的信 息時(shí),信息提取器46獲得經(jīng)請(qǐng)求66輸出到用戶代理程序30的相關(guān) HTML標(biāo)記語(yǔ)言形式和輸出到用戶代理程序34的相關(guān)語(yǔ)音XML形式。 然后,由用戶代理程序呈現(xiàn)這些模式特定指令(例如輸出到屏幕或通 過(guò)揚(yáng)聲器)作為輸出。并行多模同步協(xié)調(diào)器42在會(huì)話期間根據(jù)模式特 有指令同步來(lái)自多個(gè)用戶代理程序30和34的輸出。例如,并行多模 同步協(xié)調(diào)器42會(huì)在適當(dāng)時(shí)間發(fā)送代表不同模式的適當(dāng)?shù)臉?biāo)記語(yǔ)言形式 到各個(gè)用戶代理程序30和34,從而當(dāng)在通信裝置12上呈現(xiàn)語(yǔ)音時(shí), 它會(huì)和經(jīng)用戶代理程序30輸出到屏幕上的文本同時(shí)呈現(xiàn)。例如,多模 應(yīng)用程序54以可聽(tīng)指令形式經(jīng)用戶代理程序34給用戶提供關(guān)于期望 經(jīng)文本瀏覽器輸入什么信息的指令,同時(shí)等待來(lái)自用戶代理程序30的 文本輸入。例如,多模應(yīng)用程序54可能需要"請(qǐng)?jiān)谀谕x開(kāi)時(shí)間之 后輸入您的期望目的城市"的語(yǔ)音輸出,同時(shí)經(jīng)用戶代理程序30呈現(xiàn) 輸出到通信裝置顯示器上的字段,該字段指定"C"用于城市,"D"用于目的地。在此例子中,多模應(yīng)用程序不需要用戶的并行多模輸入, 僅需要通過(guò)一種模式,即文本模式的輸入。另一模式被用于提供用戶 指令??蛇x的,在多模應(yīng)用程序54請(qǐng)求用戶經(jīng)多個(gè)用戶代理程序輸入輸 入信息時(shí),多模混合引擎14混合會(huì)話期間并行輸入到不同多模用戶代 理程序的用戶輸入。例如,當(dāng)用戶說(shuō)出"從這里到那里的方向"而同時(shí)在可視地圖上點(diǎn)擊兩個(gè)位置時(shí),語(yǔ)音瀏覽器或用戶代理程序34用"這里"填充開(kāi)始位置字段,用"那里"填充目的位置字段作為已接收輸入信息74,同時(shí)圖形瀏覽器,即用戶代理程序30,用地圖上的第一點(diǎn) 擊點(diǎn)的地理位置(例如緯度/經(jīng)度)填充開(kāi)始位置字段,用地圖上的第 二點(diǎn)擊點(diǎn)的地理位置(例如緯度/經(jīng)度)填充目的位置字段。多模混合 引擎44獲得此信息,并混合用戶輸入的、來(lái)自多個(gè)運(yùn)行在不同模式的用戶代理程序的輸入信息,并確定詞"這里"對(duì)應(yīng)第一點(diǎn)擊點(diǎn)的地理 位置,詞"那里"對(duì)應(yīng)第二點(diǎn)擊點(diǎn)的地理位置(例如緯度/經(jīng)度)。這 樣,多?;旌弦?4具有用戶命令的整套信息。多?;旌弦?4可 能希望將混合信息60回發(fā)到用戶代理程序30和34,從而它們具有和 并行多模通信相關(guān)的完整信息。此時(shí),用戶代理程序30能將此信息提 交到內(nèi)容服務(wù)器18以獲得期望信息。如方框200所示,對(duì)于會(huì)話,本方法包括獲得用于多個(gè)運(yùn)行在彼 此不同的模式中的用戶代理程序的模式特有指令68, 70,例如通過(guò)獲 得各個(gè)多個(gè)用戶代理程序的對(duì)各模式特有的不同類(lèi)型的標(biāo)記語(yǔ)言。如 方框202所示,本方法包括在會(huì)話期間,根據(jù)模式特有指令同步輸出, 例如用戶代理程序,以促進(jìn)用戶的同時(shí)多模操作。這樣,同步了標(biāo)記 語(yǔ)言形式的呈現(xiàn),從而來(lái)自多個(gè)用戶代理程序的輸出經(jīng)多個(gè)用戶代理 程序以不同模式同時(shí)呈現(xiàn)。如方框203所示,并行多模同步協(xié)調(diào)器42 確定用于不同用戶代理程序30和34的模式特有指令68, 70組是否請(qǐng) 求用戶經(jīng)不同用戶代理程序的不同模式的信息并行輸入。如果否,如 方框205所示,并行多模同步協(xié)調(diào)器42前傳僅來(lái)自一個(gè)用戶代理程序的任何接收的輸入信息到目的服務(wù)器或Web服務(wù)器18。然而,如方框204所示,如果用于不同用戶代理程序30和34的 模式特有指令68, 70組請(qǐng)求以不同模式并行輸入的用戶輸入,本方法 包括混合用戶輸入的、用戶代理程序30和34發(fā)送回的已接收并行多 模輸入信息,以產(chǎn)生和運(yùn)行在不同模式的不同用戶代理程序相關(guān)的混 合多模響應(yīng)60。如方框206所示,本方法包括前傳混合的多模響應(yīng)60 到在標(biāo)記語(yǔ)言解釋器50內(nèi)執(zhí)行的當(dāng)前應(yīng)用程序61。當(dāng)前執(zhí)行的應(yīng)用程 序61 (參見(jiàn)圖5)是來(lái)自應(yīng)用程序54的,作為解釋器50 —部分執(zhí)行 的標(biāo)記語(yǔ)言。參考圖1和3,將說(shuō)明多模通信系統(tǒng)IO的更詳細(xì)的操作。如方框 300所示,通信裝置12經(jīng)用戶代理程序30發(fā)送Web內(nèi)容或其他信息 的請(qǐng)求52。如方框302所示,內(nèi)容服務(wù)器18從模式首選數(shù)據(jù)庫(kù)36獲 得識(shí)別用戶的多模首選項(xiàng)數(shù)據(jù)55,以獲得用于會(huì)話的裝置首選項(xiàng)和模 式首選項(xiàng)。如方框304所示,本方法包括內(nèi)容服務(wù)器通知多?;旌戏?務(wù)器14,對(duì)于給定的并行不同多模通信會(huì)話,在哪個(gè)裝置上以何種模 式正運(yùn)行哪個(gè)用戶代理應(yīng)用程序。如前面提到的和方框306所示,建立并行多模同步協(xié)調(diào)器42,根 據(jù)來(lái)自模式首選數(shù)據(jù)庫(kù)36的模式首選項(xiàng)信息55確定用于各個(gè)不同模 式的各個(gè)代理。如方框308所示,本方法包括,如果期望,經(jīng)多模會(huì) 話控制器40接收用于各個(gè)用戶代理程序的用戶模式指定。例如,用戶 可以改變期望模式,使之與存儲(chǔ)在模式首選數(shù)據(jù)庫(kù)36內(nèi)的預(yù)設(shè)模式首 選項(xiàng)55不同。這可以通過(guò)通用會(huì)話消息傳遞實(shí)現(xiàn)。如果用戶改變了特 定用戶代理程序的期望模式,例如如果期望的用戶代理程序在不同的 裝置上,可能需要不同的模式特有指令,例如不同的標(biāo)記語(yǔ)言形式。 如果用戶模式指定改變,信息提取器46根據(jù)為用戶代理應(yīng)用程序選定 的模式提取并請(qǐng)求適當(dāng)?shù)哪J教赜兄噶?。如方?10所示,然后信息提取器46為各個(gè)用戶代理程序并因此為各個(gè)模式,從內(nèi)容服務(wù)器18提取顯示為提取請(qǐng)求66的模式特有指 令。因此,多?;旌戏?wù)器14經(jīng)信息提取器46獲得代表模式的標(biāo)記 語(yǔ)言,從而各用戶代理程序30和34可以根據(jù)標(biāo)記語(yǔ)言以不同模式輸 出信息。然而,應(yīng)當(dāng)認(rèn)識(shí)到,多模混合服務(wù)器14還可獲得任何適當(dāng)?shù)?模式特有指令,而不僅僅是基于標(biāo)記語(yǔ)言的信息。當(dāng)從內(nèi)容服務(wù)器18為各用戶代理程序提取模式特有指令并且沒(méi) 有和模式特有指令68, 70相關(guān)的CMMT時(shí),發(fā)送接收的模式特有指 令69到代碼轉(zhuǎn)換器608 (參見(jiàn)圖5)。代碼轉(zhuǎn)換器608將接收的模式 特有指令代碼轉(zhuǎn)換為解釋器50可理解的基本標(biāo)記語(yǔ)言形式,并用識(shí)別 用于不同模式610的模式特有指令的數(shù)據(jù)來(lái)創(chuàng)建基本標(biāo)記語(yǔ)言形式。 因此,代碼轉(zhuǎn)換器代碼轉(zhuǎn)換模式特有指令,以包括識(shí)別用于另一個(gè)運(yùn) 行在不同模式的用戶代理程序的模式特有指令的數(shù)據(jù)。例如,如果解 釋器50使用例如語(yǔ)音XML的基本標(biāo)記語(yǔ)言,并且如果來(lái)自應(yīng)用程序 54的一組模式特有指令是語(yǔ)音XML,而其余的則是HTML,代碼轉(zhuǎn)換 器606將CMMT嵌入語(yǔ)音XML形式,識(shí)別可以獲得HTML形式的 URL,或識(shí)別真正的HTML形式自身。此外,如果基本標(biāo)記語(yǔ)言中沒(méi) 有模式特有指令,將一組模式特有指令翻譯到基本標(biāo)記語(yǔ)言中,然后 通過(guò)CMMT査詢其他組模式特有指令。可選的,多模應(yīng)用程序54可以提供必需的CMMT信息以促進(jìn)并 行多模會(huì)話期間多個(gè)用戶代理程序的輸出同步。用于各用戶代理程序 的模式特有指令的一個(gè)例子在下面顯示為標(biāo)記語(yǔ)言形式。標(biāo)記語(yǔ)言形 式由多模應(yīng)用程序54提供,并由多?;旌戏?wù)器14使用以提供并行 多模通信會(huì)話。多模語(yǔ)音XML解釋器50假定多模應(yīng)用程序54使用語(yǔ) 音XML作為基本語(yǔ)言。為促進(jìn)多個(gè)用戶代理程序?qū)τ谟脩舻妮敵鐾剑?首先寫(xiě)多模應(yīng)用程序54,以包括或編入并行多模標(biāo)簽(CMMT),例 如語(yǔ)音XML形式內(nèi)的擴(kuò)展名或到HTML形式的索引。CMMT識(shí)別模 式,并指向或包含諸如要由用戶代理程序中之一以所識(shí)別的模式輸出的真實(shí)的HTML形式的信息。CMMT還用作多模同步數(shù)據(jù),它的出現(xiàn) 意味著需要同步不同用戶代理程序的不同模式特有指令。例如,如果語(yǔ)音XML是多模應(yīng)用程序54的基本語(yǔ)言,CMMT可 能表示文本模式。在此例子中,CMMT可包含URL,該URL包含用 戶代理程序要輸出的HTML文本,或包含作為CMMT—部分的HTML。 CMMT可具有標(biāo)記語(yǔ)言屬性擴(kuò)展名的特性。多模語(yǔ)音XML解釋器50 使用信息提取器46提取模式特有指令,并分析(在此例子中是執(zhí)行) 提取的來(lái)自多模應(yīng)用程序的模式特有指令以檢測(cè)CMMT。 一旦檢測(cè)到, 多模語(yǔ)音XML解釋器50解釋CMMT,并如果需要獲得其他模式特有 指令,例如用于文本模式的HTML。例如,CMMT可能指示從哪里獲得用于圖形瀏覽器的文本信息。 下面是顯示用于并行多模路線應(yīng)用程序的語(yǔ)音XML形式的模式特有指 令的例子,該語(yǔ)音XML形式用于要求語(yǔ)音瀏覽器輸出語(yǔ)音"從哪里來(lái)" 以及"到哪里去",同時(shí)圖形瀏覽器顯示"從城市"和"到城市"的 并行多模應(yīng)用程序。接收的由用戶通過(guò)不同瀏覽器輸入的并行多模信息通過(guò)指定字段"從城市"和"到城市"被期待。 表l<vxml version="2.0"〉 <form〉 <block〉<cmmt mode="htmr'src="./itinerary. html7>indicates the non-voice mode is html(text) and that the source info is located at url itinerary, html</block〉<field name="from_city"> expected-text piece of info, trying to collect through graphical browser<grammar src="./city.xmr/> for voice need to list possibleresponses for speech rccog engineWhere from is the prompt that is spoken by voice browser </field〉<field name="to—city"> text expecting <grammar src=",/city. xml"/〉 Where to Voice spoken by voice browser</field> </form〉 </vxml〉因此,以上的標(biāo)記語(yǔ)言形式用代表用于至少一個(gè)用戶代理程序的 模式特有指令的基本標(biāo)記語(yǔ)言書(shū)寫(xiě),CMMT是擴(kuò)展名,指定用于另一 個(gè)運(yùn)行在不同模式的用戶代理程序的模式特有指令。如方框311所示,如果用戶改變首選項(xiàng),本方法包括重新設(shè)定代 理以和該改變一致。如方框312所示,多?;旌戏?wù)器14確定是否到 達(dá)監(jiān)聽(tīng)點(diǎn)。如果到達(dá),進(jìn)入如方框314所示的下一個(gè)狀態(tài)。如果是, 處理完成;如果否,本方法包括同步用于不同用戶代理程序的模式特 有指令。多模語(yǔ)音XML解釋器50輸出,在此例子中,用于用戶代理 程序30的HTML和用于用戶代理程序34的語(yǔ)音XML到并行多模同 步協(xié)調(diào)器42,用于多個(gè)用戶代理程序的輸出同步。這可以通過(guò)例如基 于如上所述的監(jiān)聽(tīng)點(diǎn)的出現(xiàn)而實(shí)現(xiàn)。這些在方框316中示出。如方框318所示,本方法包括,例如由并行多模同步協(xié)調(diào)器42, 發(fā)送同步模式特有指令68和70到對(duì)應(yīng)的代理38a和38n,請(qǐng)求在相同 會(huì)話期間由用戶以不同模式的用戶輸入信息。同步請(qǐng)求68和70被發(fā) 送到各用戶代理程序30和34。例如,對(duì)應(yīng)和不同用戶代理程序相關(guān)的多個(gè)輸入模式的并行不同模式輸入信息的請(qǐng)求顯示為包含模式特有指 令68和70的同步請(qǐng)求。這些例如可以是同步標(biāo)記語(yǔ)言形式。一旦用戶代理程序30和34并行實(shí)施模式特有指令,本方法包括確定在一段超時(shí)時(shí)間周期內(nèi)是否接收到用戶輸入,如方框320所示, 或是否發(fā)生另一事件。例如,多?;旌弦?4可等待一段時(shí)間,以確 定用戶輸入的多模輸入信息是否從多個(gè)用戶代理程序適當(dāng)接收以用于 混合。該等待時(shí)間根據(jù)各用戶代理程序的模式設(shè)定可以是不同的時(shí)間 周期。例如,如果期望用戶并行輸入語(yǔ)音和文本信息,但多?;旌弦?擎在一段時(shí)間內(nèi)不接收該用于混合的信息,它將假定發(fā)生錯(cuò)誤。此外, 多?;旌弦?4還允許返回語(yǔ)音信息比返回文本信息花費(fèi)更多時(shí)間, 因?yàn)榻?jīng)語(yǔ)音網(wǎng)關(guān)16可能需要更長(zhǎng)時(shí)間處理語(yǔ)音信息。在此例子中,要求用戶經(jīng)用戶代理程序30輸入文本,同時(shí)對(duì)麥克 風(fēng)講話,以提供語(yǔ)音信息到用戶代理程序34。如從用戶代理程序30和 34接收的已接收并行多模輸入信息72和74經(jīng)適當(dāng)?shù)耐ㄐ沛溌繁粋鬟f 到各個(gè)代理。應(yīng)當(dāng)注意到,以PCM格式或任何其他適當(dāng)格式傳送如76 所指的在用戶代理程序34和裝置12的麥克風(fēng)及揚(yáng)聲器之間的通信, 在此例子中,不是以可由用戶代理程序輸出的模式特有指令格式。如果用戶通過(guò)文本瀏覽器和語(yǔ)音瀏覽器同時(shí)輸入信息,從而多模 混合引擎44接收從多個(gè)用戶代理程序發(fā)送的并行多模輸入信息,多模混合引擎44如方框322所示將從用戶接收的輸入信息72和74混合。圖4顯示多?;旌弦?4操作的一個(gè)例子。為說(shuō)明起見(jiàn),對(duì)于某 個(gè)事件,"沒(méi)有輸入"意思是用戶未經(jīng)此模式輸入。"不匹配"表示 輸入了一些東西,但它不是期望值。結(jié)果是用戶成功輸入后的一組時(shí) 隙(或字段)名稱以及對(duì)應(yīng)值對(duì)。例如,成功輸入可以是"城市=芝加 哥"以及"州=伊利諾伊"以及"街道"="第一街"以及例如0%到100% 的可信度加權(quán)因子。如上所述,多模混合引擎44是否混合信息取決于 接收或期望接收時(shí)隙名稱(例如可變的)和值對(duì)之間的時(shí)間量,或取 決于接收其他事件。本方法假定給接收信息分配可信度級(jí)別。例如, 根據(jù)模式和信息到達(dá)時(shí)間加權(quán)同步協(xié)調(diào)器可信度。例如,在同一會(huì)話期間(例如說(shuō)出街道名稱并打字輸入)可通過(guò)不同模式輸入同一時(shí)隙 數(shù)據(jù)的情況下,假定打字輸入的數(shù)據(jù)比說(shuō)出的數(shù)據(jù)更準(zhǔn)確。同步協(xié)調(diào) 器基于接收時(shí)間和各個(gè)接收結(jié)果的可信度值組合接收的從多個(gè)用戶代 理程序之一發(fā)送來(lái)的多模輸入信息,該發(fā)送是響應(yīng)并行不同模式信息 的請(qǐng)求。
如方框400所示,本方法包括確定是否存在來(lái)自非語(yǔ)音模式的事
件或結(jié)果。如果是,如方框402所示,本方法包括確定是否存在來(lái)自
除"沒(méi)有輸入"和"不匹配"事件之外的任何模式的任何事件。如果
是,本方法包括返回接收的第一個(gè)這樣的事件到解釋器50,如方框404 所示。然而,如果不存在來(lái)自用戶代理程序的除"沒(méi)有輸入"和"不 匹配"之外的事件,該處理包括,如方框406所示,對(duì)于發(fā)送用于多 ?;旌弦娴膬蓚€(gè)或更多結(jié)果的任何模式,本方法包括按照接收的時(shí) 間順序組合該模式的結(jié)果。當(dāng)用戶對(duì)同一時(shí)隙輸入重復(fù)輸入時(shí)這可能 是有用的。對(duì)于給定時(shí)隙名稱的后面的值會(huì)覆蓋先前的值。多?;旌?引擎根據(jù)構(gòu)成模式的各個(gè)結(jié)果的可信度加權(quán)調(diào)整模式的結(jié)果可信度加 權(quán)。對(duì)于各個(gè)模式,最后結(jié)果是對(duì)每個(gè)時(shí)隙名稱的一個(gè)答案。本方法 包括,如方框408所示,取得來(lái)自方框406的任何結(jié)果,并將其組合 到用于所有模式的一個(gè)組合結(jié)果中。本方法包括從最低可信結(jié)果開(kāi)始,
進(jìn)行到最高可信結(jié)果?;旌辖Y(jié)果中的每個(gè)時(shí)隙名稱接收屬于最可信輸 入結(jié)果的具有該時(shí)隙定義的時(shí)隙值。
如方框410所示,本方法包括確定現(xiàn)在是否有組合結(jié)果。換句話 說(shuō),用戶代理程序是否發(fā)送用于多模混合引擎44的結(jié)果。如果是,本 方法包括如方框412所示,返回組合的結(jié)果到內(nèi)容服務(wù)器18。如果沒(méi) 有,如方框414所示,意味著沒(méi)有或存在更多"沒(méi)有輸入"或"不匹 配"事件。本方法包括確定是否存在任何"不匹配"事件。如果有, 本方法包括返回如方框416所示的沒(méi)有匹配事件。然而,如果沒(méi)有"不 匹配"事件,本方法包括返回"沒(méi)有輸入"事件到解釋器50,如方框 418所示。回到方框400,如果沒(méi)有來(lái)自非語(yǔ)音模式的事件或結(jié)果,本方法
包括確定語(yǔ)音模式是否返回結(jié)果,即用戶代理程序34是否產(chǎn)生已接收 信息74。這在方框420中顯示。如果是,如方框422所示,本方法包 括返回語(yǔ)音響應(yīng)己接收輸入信息到多模應(yīng)用程序54。然而,如果語(yǔ)音 瀏覽器(例如用戶代理程序)不輸出信息,本方法包括確定語(yǔ)音模式 是否返回時(shí)間,如方框424所示。如果是,則如方框426所示,報(bào)告 73該事件給多模應(yīng)用程序54。如果沒(méi)有產(chǎn)生語(yǔ)音模式事件,本方法包 括返回"沒(méi)有輸入"事件,如方框428所示。
下面的表2顯示應(yīng)用到假定數(shù)據(jù)的圖4方法的例子。
表2
VoiceModeCollectedData
街道名稱=密歇根
時(shí)間印記=0
可信度級(jí)別=.85
號(hào)碼=112
時(shí)間印記=0
可信度級(jí)別=.99
TextModeCollectedData
街道名稱=密歇根
時(shí)間印記=0
可信度級(jí)別=1.0
街道名稱^LaSalle
時(shí)間印記=1
可信度級(jí)別=1.0
例如,在方框400,如果沒(méi)有接收到來(lái)自非語(yǔ)音模式的結(jié)果,本 方法進(jìn)行到方框402。在方框402,沒(méi)有接收到任何事件,本方法進(jìn)行到方框406。在方框406,混合引擎將TextModeCollectedData壓縮到每 個(gè)時(shí)隙的 一 個(gè)響應(yīng)。Voice Mode Collected Data保持不動(dòng)。 VoiceModeCollectedData
街道名稱=密歇根
時(shí)間印記=0
可信度級(jí)別=.85
號(hào)碼=112
時(shí)間印記=0
可信度級(jí)別=.99
全部可信度=.85
語(yǔ)音模式保持不動(dòng)。但是分配作為.85的全部可信度值.85是結(jié)果
組中的最低可信度。
TextModeCollectedData
街道名稱=密歇根
時(shí)間印記=0
可信度級(jí)別=1.0
街道名稱-LaSalle
時(shí)間印記=1
可信度級(jí)別=1.0
文本模式從收集的數(shù)據(jù)中刪去密歇根,因?yàn)樵诤竺娴臅r(shí)間印記中 用LaSalle填滿該時(shí)隙。最終結(jié)果像這樣。被分配作為1.0的全部可信 度值l.O是結(jié)果組中的最低可信度級(jí)別。
TextModeCollectedData
街道名稱LaSalle
時(shí)間印記=1
可信度級(jí)別=1.0
全部可信度=1.0
后面的是發(fā)送到方框408的數(shù)據(jù)。 VoiceModeCollectedData
街道名稱=密歇根時(shí)間印記=0 可信度級(jí)別=.85 號(hào)碼=112 時(shí)間印記=0
可信度級(jí)別=.99 全部可信度=.85
TextModeCollectedData
街道名稱-LaSalle
時(shí)間印記=1
可信度級(jí)別=1.0
全部可信度=1.0
在方框408,兩種模式被有效混合到單個(gè)返回結(jié)果中。
首先,取得最低可信度級(jí)別的全部結(jié)果并將其放入最終結(jié)果結(jié)構(gòu)中。
最終結(jié)果
街道名稱=密歇根
可信度級(jí)別=.85
號(hào)碼=112
可信度級(jí)別=.99
然后,最終結(jié)果內(nèi)的下一最低結(jié)果的任何元素都被替換。
最終結(jié)果
街道名稱LaSalle
可信度級(jí)別-1.0
號(hào)碼=112
可信度級(jí)別=.99該最終結(jié)果來(lái)自兩種模式的混合,并被發(fā)送到解釋器,解釋器會(huì) 決定下面做什么(從web提取更多信息或決定需要從用戶獲得更多信 息,并根據(jù)當(dāng)前狀態(tài)重新提示它們。)
圖5顯示多模混合服務(wù)器14的另一實(shí)施例,它包括并行多模會(huì)話 持續(xù)控制器600以及連接到并行多模會(huì)話持續(xù)控制器600的并行多模 會(huì)話狀態(tài)存儲(chǔ)器602。并行多模模式會(huì)話持續(xù)控制器600可以是運(yùn)行在 適當(dāng)處理裝置上的軟件模塊,或可以是任何適當(dāng)硬件、軟件、固件或 它們的適當(dāng)組合。并行多模會(huì)話持續(xù)控制器600在無(wú)會(huì)話條件中根據(jù) 每個(gè)用戶,以數(shù)據(jù)庫(kù)形式或其他適當(dāng)數(shù)據(jù)結(jié)構(gòu)維護(hù)并行多模會(huì)話狀態(tài) 信息604。并行多模會(huì)話狀態(tài)信息604是會(huì)話過(guò)程中配置用于不同并行 多模通信的多個(gè)用戶代理程序的狀態(tài)信息。并行多模會(huì)話持續(xù)控制器 600響應(yīng)訪問(wèn)并行多模會(huì)話狀態(tài)信息604,重新建立先前結(jié)束的并行多 模會(huì)話。多模會(huì)話控制器40通知并行多模會(huì)話持續(xù)控制器600用戶何 時(shí)加入會(huì)話。多模會(huì)話控制器40還和并行多模同步協(xié)調(diào)器通信,以和 任何離線裝置提供同步,或和任何必須重新建立并行多模會(huì)話的用戶 代理程序同步。
并行多模會(huì)話持續(xù)控制器600存儲(chǔ)(例如)代理ID數(shù)據(jù)906,例如 指示在先前并行多模通信會(huì)話期間用于給定模式的代理的URL。如果 期望,并行多模會(huì)話狀態(tài)存儲(chǔ)器602還包括指示在先前并行多模通信 會(huì)話期間用戶輸入填充了哪個(gè)字段或時(shí)隙以及任何這樣的字段或時(shí)隙 的內(nèi)容。此外,并行多模會(huì)話狀態(tài)存儲(chǔ)器602可包括用于并行多模通 信會(huì)話的當(dāng)前對(duì)話狀態(tài)606。某些狀態(tài)包括解釋器50在執(zhí)行應(yīng)用程序 中的執(zhí)行狀態(tài)。由用戶填充的字段內(nèi)的信息可能是以混合輸入信息60 的形式。
如所示的,Web服務(wù)器18可提供用于各模式類(lèi)型的模式特有指令。 在此例子中,以HTML形式提供文本,以語(yǔ)音XML形式提供語(yǔ)音,還以WML形式提供語(yǔ)音。并行多模同步協(xié)調(diào)器42輸出適當(dāng)?shù)男问降?適當(dāng)?shù)拇?。如所示的,語(yǔ)音XML形式通過(guò)指定用于語(yǔ)音瀏覽器的代 理38a輸出,而HTML形式輸出到用于圖形瀏覽器的代理38n。
如果會(huì)話異常中斷,而用戶稍后想回到相同的對(duì)話狀態(tài),則會(huì)話 持續(xù)維護(hù)非常有用。對(duì)于具有不同延遲特性、造成不同模式中輸入和 輸出之間的延遲時(shí)間并需要暫時(shí)存儲(chǔ)信息以補(bǔ)償該時(shí)間延遲的的情 況,模式使用傳送機(jī)制也非常有用。
如圖6-7所示,并行多模會(huì)話持續(xù)控制器600維護(hù)在給定會(huì)話中 對(duì)于給定用戶的多個(gè)用戶代理程序的多模會(huì)話狀態(tài)信息,其中在會(huì)話 期間,用戶代理程序被配置用于不同的并行模式通信。這在方框700 中顯示。如方框702所示,本方法包括響應(yīng)訪問(wèn)多模會(huì)話狀態(tài)信息604, 重新建立先前的并行多模會(huì)話。如方框704所示,更具體的,在并行 多模會(huì)話期間,并行多模會(huì)話持續(xù)控制器600在存儲(chǔ)器602內(nèi)存儲(chǔ)每 個(gè)用戶的多模會(huì)話狀態(tài)信息604。如方框706所示,并行多模會(huì)話持續(xù) 控制器600從會(huì)話控制器檢測(cè)用戶加入會(huì)話,并在存儲(chǔ)器內(nèi)搜索該用 戶ID,以確定該用戶是否參與先前的并行多模會(huì)話。從而,如方框708 所示,本方法包括根據(jù)用戶加入會(huì)話的檢測(cè),訪問(wèn)存儲(chǔ)器602內(nèi)存儲(chǔ) 的多模會(huì)話狀態(tài)信息604。
如方框710所示,本方法包括確定該會(huì)話是否在存儲(chǔ)器604內(nèi)存 在。如果沒(méi)有,則將該會(huì)話指定為新的會(huì)話,并創(chuàng)建新的項(xiàng),以在存 儲(chǔ)器602內(nèi)填充用于記錄新會(huì)話的必要數(shù)據(jù)。這在方框712中顯示。 如方框714所示,如果會(huì)話存在,例如在存儲(chǔ)器602中出現(xiàn)該會(huì)話ID, 本方法包括查詢存儲(chǔ)器602,用戶是否具有正運(yùn)行的現(xiàn)有應(yīng)用程序,如 果是,用戶是否希望重新建立和該應(yīng)用程序的通信。如果用戶期望, 本方法包括從存儲(chǔ)器602中檢索上次提取的信息的URL。這顯示在方 框716中(圖7)。如方框718所示,將對(duì)適當(dāng)代理38a-38n給出如在 方框716中檢索的適當(dāng)URL。如方框720所示,本方法包括根據(jù)存儲(chǔ)在存儲(chǔ)器602內(nèi)的存儲(chǔ)用戶代理狀態(tài)信息606,經(jīng)代理發(fā)送請(qǐng)求到適當(dāng)
的用戶代理程序。
圖8是顯示并行多模會(huì)話狀態(tài)存儲(chǔ)器602的內(nèi)容的一個(gè)例子的框 圖。如圖所示,用戶ID900指定了特定用戶,會(huì)話ID902在用戶具有 存儲(chǔ)在存儲(chǔ)器602內(nèi)的多個(gè)會(huì)話的事件中,和該用戶ID相關(guān)。此外, 用戶代理程序ID904表示,例如運(yùn)行該特定用戶代理程序的裝置的裝 置ID。程序ID可以是用戶程序識(shí)別符、URL或其他地址。代理ID數(shù) 據(jù)906表示在先前并行多模通信期間使用的多模代理。這樣,用戶可 以終止某個(gè)會(huì)話,稍后從用戶停止的地方繼續(xù)。
除此之外,維護(hù)裝置ID904允許系統(tǒng)維護(hù)在并行多模會(huì)話期間采 用的那些裝置的識(shí)別符,以促進(jìn)在并行多模通信期間用戶的裝置切換。
因此,通過(guò)不同模式經(jīng)分布在一個(gè)或多個(gè)裝置(或如果它們包含 在相同裝置中)上的各個(gè)用戶代理程序輸入的多個(gè)輸入以統(tǒng)一和內(nèi)聚 方式混合。同樣,也提供了同步用戶代理程序的呈現(xiàn)和用戶通過(guò)這些 用戶代理程序的信息輸入的機(jī)制。此外,公開(kāi)的多模混合服務(wù)器可連 接到現(xiàn)有裝置和網(wǎng)關(guān),以提供并行多模通信會(huì)話。
應(yīng)當(dāng)理解,對(duì)于本領(lǐng)域普通技術(shù)人員,本發(fā)明不同方面的其他改 變和修改是顯而易見(jiàn)的,且本發(fā)明并不限于描述的特定實(shí)施例。例如, 應(yīng)當(dāng)認(rèn)識(shí)到,雖然用某些步驟描述了本方法,這些步驟可以如所期望 的按照任何適當(dāng)順序執(zhí)行。因此期望本發(fā)明覆蓋落入在此公開(kāi)和聲明 的根本原理的精神和范圍內(nèi)的任何和所有的修改、改變或等同。
權(quán)利要求
1.一種用于多模通信的方法,其包括發(fā)送對(duì)應(yīng)多種輸入模式的并行多模輸入信息的請(qǐng)求,該多種輸入模式和在相同會(huì)話期間運(yùn)行的多個(gè)用戶代理程序相關(guān);以及混合從所述多個(gè)用戶代理程序發(fā)送的、已接收并行多模輸入信息,所述多個(gè)用戶代理程序發(fā)送的發(fā)送是響應(yīng)并行不同多模信息的請(qǐng)求。
2. 如權(quán)利要求l的方法,包括步驟在發(fā)送并行多模輸入信息請(qǐng)求之前,確定和每一個(gè)應(yīng)用程序相關(guān) 的不同模式的代理,該每一個(gè)應(yīng)用程序和給定會(huì)話的不同模式相關(guān); 以及使用為各個(gè)不同模式確定的代理,同步到多個(gè)用戶代理程序的并 行不同多模輸入信息的請(qǐng)求。
3. 如權(quán)利要求l的方法,包括等待一段時(shí)間,以確定是否適當(dāng)接 收用于混合的并行多模輸入信息。
4. 如權(quán)利要求3的方法,包括根據(jù)各用戶代理程序的模式,等待 一段不同的時(shí)間。
5. 如權(quán)利要求l的方法,其中,所述發(fā)送對(duì)應(yīng)多種輸入模式的并 行多模輸入信息的請(qǐng)求包括發(fā)送用于多個(gè)相互之間運(yùn)行在不同模式 的用戶代理程序的模式特有指令,從而請(qǐng)求不同模式的并行信息輸入。
6. 如權(quán)利要求l的方法,其中,所述發(fā)送對(duì)應(yīng)多種輸入模式的并 行多模輸入信息的請(qǐng)求的步驟包括發(fā)送第一基于模式的標(biāo)記語(yǔ)言到裝置,以及發(fā)送第二基于模式標(biāo)記語(yǔ)言的形式到一個(gè)或多個(gè)裝置,以 請(qǐng)求不同模式的并行信息輸入。
7. 如權(quán)利要求l的方法,包括步驟根據(jù)接收時(shí)間以及各個(gè)接收 結(jié)果的可信度值,組合發(fā)送自多個(gè)用戶代理程序的已接收多模輸入信 息,該發(fā)送是響應(yīng)并行不同多模信息的請(qǐng)求。
8. 如權(quán)利要求1的方法,包括對(duì)模式特有指令進(jìn)行代碼轉(zhuǎn)換,以 包括識(shí)別用于運(yùn)行在不同模式的另一用戶代理程序的模式特有指令的 數(shù)據(jù)。
9. 一種多模網(wǎng)絡(luò)元件,包括多個(gè)代理,每個(gè)都發(fā)送對(duì)應(yīng)多個(gè)輸入模式的并行多模輸入信息請(qǐng) 求,該輸入模式和在相同會(huì)話期間運(yùn)行的多個(gè)用戶代理程序相關(guān);以及多?;旌弦?,可操作地響應(yīng)自多個(gè)用戶代理程序發(fā)送的、已接 收并行多模輸入信息,該多個(gè)用戶代理程序發(fā)送是響應(yīng)并行不同多模 信息的請(qǐng)求,且所述多?;旌弦婵刹僮鞯赜糜诨旌献远鄠€(gè)用戶代理 程序發(fā)送的不同多模輸入信息,以在相同會(huì)話期間提供來(lái)自不同用戶 代理程序的并行多模通信。
10. 如權(quán)利要求9的多模網(wǎng)絡(luò)元件,其中,所述并行不同多模信 息請(qǐng)求包括用于多個(gè)相互之間運(yùn)行在不同模式的用戶代理程序的模式 特有指令,以請(qǐng)求不同模式的并行信息輸入,并且所述多模網(wǎng)絡(luò)元件 包括信息提取器,可操作地用于在相同會(huì)話期間,獲得用于多個(gè)相互之間運(yùn)行在不同模式的用戶代理程序的模式特有指令;以及并行多模同步協(xié)調(diào)器,可操作地連接到信息提取器和多個(gè)代理, 且可操作地用于在會(huì)話期間同步自多個(gè)用戶代理程序輸出的、已接收 并行多模輸入信息。
11. 如權(quán)利要求10的多模網(wǎng)絡(luò)元件,包括并行多模會(huì)話持續(xù)控制器,可操作地連接到多個(gè)用戶代理程序,在沒(méi)有會(huì)話條件下以各個(gè)用戶為基礎(chǔ),維護(hù)多個(gè)用戶代理程序的并行 多模會(huì)話狀態(tài)信息,從而響應(yīng)訪問(wèn)并行多模會(huì)話狀態(tài)信息,重新建立 并行多模會(huì)話,這些用戶代理程序被配置用于會(huì)話期間的不同并行模 式通信;以及存儲(chǔ)器,可操作地連接到所述并行多模會(huì)話持續(xù)控制器,包含并 行多模會(huì)話狀態(tài)信息。
12.如權(quán)利要求9的多模網(wǎng)絡(luò)元件,包括標(biāo)記語(yǔ)言解釋器和可操 作的連接到標(biāo)記語(yǔ)言解釋器的代碼轉(zhuǎn)換器,其中代碼轉(zhuǎn)換器代碼轉(zhuǎn)換 模式特有指令,以包括識(shí)別用于運(yùn)行在不同模式的另一用戶代理程序 的模式特有指令的數(shù)據(jù)。
全文摘要
多模網(wǎng)絡(luò)元件(14)通過(guò)一個(gè)或多個(gè)裝置(12,16)上的不同用戶代理程序(30,34)促進(jìn)并行多模通信會(huì)話。例如,以語(yǔ)音模式通信的用戶代理程序,例如包括語(yǔ)音引擎和/呼叫會(huì)話終端的語(yǔ)音網(wǎng)關(guān)(16)中的語(yǔ)音瀏覽器(34),和運(yùn)行在不同模式的另一用戶代理程序同步,例如在移動(dòng)裝置(12)上的圖形瀏覽器(30)。多個(gè)用戶代理程序(30,34)在會(huì)話期間可操作的和內(nèi)容服務(wù)器(18)連接,從而允許并行多模交互。
文檔編號(hào)G06F3/16GK101291336SQ20071018186
公開(kāi)日2008年10月22日 申請(qǐng)日期2003年2月6日 優(yōu)先權(quán)日2002年2月27日
發(fā)明者大衛(wèi)·丘卡, 拉伊努·皮爾斯, 杰羅姆·揚(yáng)克, 格列格·約翰遜, 瑟那卡·巴拉蘇里亞, 詹姆士·費(fèi)爾蘭斯, 迪拉尼·加拉格達(dá)拉 申請(qǐng)人:摩托羅拉公司