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

提供對話定位并且能夠進行會話式通信的系統(tǒng)和方法

文檔序號:7597704閱讀:158來源:國知局
專利名稱:提供對話定位并且能夠進行會話式通信的系統(tǒng)和方法
技術領域
本發(fā)明總體上涉及用于在分布式多模態(tài)環(huán)境中提供會話式計算的系統(tǒng)和方法。具體地說,本發(fā)明涉及用于使得用戶可以使用便攜訪問設備與分布式網(wǎng)絡中的實體會話式地通信的系統(tǒng)和方法,其中以與例如用戶語言、(多個)訪問通道、訪問設備的I/O模態(tài)以及地區(qū)/國際設置無關的方式說明了用于與網(wǎng)絡中的一個或多個實體進行通信的交互對話,并且其中用戶訪問設備和/或遠程服務器包括用于根據(jù)用戶語言、用戶首選項、(多個)訪問通道、訪問設備的特性和/或地區(qū)/國際設置來修改交互對話的機制。
背景技術
計算世界正在向這樣的時代發(fā)展,即數(shù)十億遍布各地的互連的客戶機與功能強大的信息服務器通信。實際上,該世紀的特征將是多個可用的信息設備使得普遍存在的信息訪問成為生活中被接受的事實。這種朝著通過因特網(wǎng)、無線網(wǎng)絡或自發(fā)網(wǎng)絡(諸如藍牙和Jini)互連的數(shù)十億遍布各地的設備的發(fā)展將帶來人-機交互根本原理的徹底變革。在不久的將來,諸如蜂窩電話、智能電話、袖珍助手、PDA、PC等個人信息設備將提供無處不在的訪問,它們提供了使用最適合于用戶當前需求和能力的互連模態(tài)來隨時隨地創(chuàng)建、處理和交換信息的能力。
可用信息的不斷增加,以及每個用戶處理這些信息的可用計算能力的提高,隨之帶來了增加人-機通信帶寬的附帶需要。使用設計成在任意給定時刻適合用戶特定需求和能力的各種設備來訪問信息的能力必然意味著這些交互將利用所有可用的輸入/輸出(I/O)模態(tài)以最大化人-機通信的帶寬。
當前的聯(lián)網(wǎng)基礎結構沒有被配置為在分布式環(huán)境中提供對資源的無縫、多通道、多模態(tài)和/或會話式訪問。例如,在設施(appliance)和設備可由語音命令控制的分布式環(huán)境中,例如,能夠進行此類控制的應用、用戶界面和服務器是基于在其中實現(xiàn)此類應用的環(huán)境的本地化和用戶語言而構建的。
作為例子,假設可以使用,例如,一種給定語言的語音命令自動地控制公共房間內(nèi)的燈來關閉、開啟或調(diào)暗燈光。假設一位進入該房間的外國參觀者希望調(diào)暗燈光。如果該參觀者不知道本地命令和/或本地語言,則該參觀者將不能親自控制燈光。但是,該參觀者可以做出某種指示(例如,皺眉,或用外語講一些什么),其可被陪同該參觀者的助手理解,意味著該參觀者想將燈光調(diào)暗。在這種情況下,人類助手可以通過,例如,以適合的語言說出已知的命令或參與和另一個人或?qū)嶓w的對話以調(diào)暗燈光來繼續(xù)該參觀者調(diào)暗燈光的要求。
因此,在上面的例子中,要求用戶使用特定的指示(gesture)(例如,一組特定語言的特定口頭命令)與聯(lián)網(wǎng)的實體來交互是不利的。當前,應用對話的本地化(即,用于其它語言)或?qū)υ挷糠中薷臑檫m合不同的地區(qū)設置(例如,地址格式)要求為每種語言重新設計該應用等。

發(fā)明內(nèi)容
本發(fā)明的示例實施例總體上包括用于在分布式多模態(tài)環(huán)境中提供會話式計算的系統(tǒng)和方法。本發(fā)明的示例實施例還包括用于使得用戶可以使用便攜訪問設備會話式地與分布式網(wǎng)絡中的一個或多個實體通信的系統(tǒng)和方法,其中以與例如用戶語言、(多個)訪問通道、該訪問設備的設備特性(例如,I/O模態(tài)),和/或區(qū)域/國際設置無關的方式說明了用于與網(wǎng)絡中的實體通信的交互對話,并且其中該用戶訪問設備和/或遠程服務器包括根據(jù)用戶語言、用戶首選項、訪問設備特性和/或地區(qū)/國際設置來修改交互對話的機制。
具體地說,在本發(fā)明的一個示例實施例中,提供了使用戶可以會話式地與網(wǎng)絡中的一個或多個實體通信的方法。用戶使用客戶端設備建立與分布式網(wǎng)絡的連接。該客戶端設備將獲得一個或多個命令的說明,所述命令使得用戶可以與所述分布式網(wǎng)絡中的一個或多個實體交互,其中以與用戶語言、訪問通道、客戶端設備I/O(輸入/輸出)模態(tài)、地區(qū)設置或國際設置無關的方式描述所述命令。用戶提供用戶指示以便和目標實體通信,當客戶端設備接收到輸入的用戶指示(例如,口頭命令/詢問、GUI命令/詢問、物理指示(例如,手的運動、血壓升高等))時,客戶端設備將處理輸入的用戶指示以確定目標實體并調(diào)用與該目標實體關聯(lián)的命令。
在本發(fā)明的另一示例實施例中,所述命令包括使用基于交互的編程模型描述的交互(會話式指示)的基本組件。在本發(fā)明的另一示例實施例中,分布式網(wǎng)絡中至少一條命令或所有命令是基本命令的預定有限集合的一部分。
在另一示例實施例中,使用所述會話式指示的預定有限集合中的每個會話式指示的先驗知識來配置客戶端訪問設備,從而訪問設備預載有(或能夠獲得)用于根據(jù)例如客戶端設備的UI特性、用戶首選項說明(例如,用戶語言、命令類型等)以及地區(qū)/國際設置來解釋或修改每個命令的機制。例如,根據(jù)用戶首選項或設備特性,所述命令(會話式指示)能夠以不同的語言(德語、法語等)、不同的模態(tài)/通道(WML、HTML、語音、多模態(tài)(multi-modal)等)、不同的本地化/國際化/地區(qū)化設置(例如,比利時賬號、美國記帳系統(tǒng)、國際帳戶或銀行編號、取決于地區(qū)的地址/郵政編碼格式等)呈現(xiàn)。
在本發(fā)明的另一示例實施例中,一種用于提供與網(wǎng)絡中的實體進行會話式通信的方法包括使用客戶端設備建立與分布式網(wǎng)絡的連接;由客戶端設備獲得一個或多個命令的說明,所述命令使用戶能夠與該分布式網(wǎng)絡中的一個或多個實體交互,其中所述命令被以與用戶語言、訪問通道、客戶端設備I/O(輸入/輸出)模態(tài)、地區(qū)設置或國際設置無關的方式說明;由所述客戶端設備接收所述用戶提供的用戶指示作為輸入以便與目標實體通信;并且根據(jù)用戶首選項說明或所述客戶端設備的特性,或根據(jù)這兩者,來修改所述命令,由此調(diào)用與所述輸入的用戶指示關聯(lián)的命令。在另一示例實施例中,修改過程可以由客戶機側處理、服務器側處理或客戶機側和服務器側處理的組合來執(zhí)行。
從下面結合附圖閱讀的對示例實施例的詳細說明中,本發(fā)明的這些和其它示例實施例、本發(fā)明的各個方面、特點和優(yōu)點將變得顯而易見。


圖1是根據(jù)本發(fā)明的一個示例實施例的用于提供與分布式網(wǎng)絡中的實體的會話式通信的系統(tǒng)的方塊圖。
圖2是一個可以根據(jù)本發(fā)明的一個示例實施例實現(xiàn)以便建立基于交互的應用(包括描述與分布式網(wǎng)絡中的實體交互對話的會話式指示)的應用框架的示意圖。
圖3是可以根據(jù)本發(fā)明的一個示例實施例作為用于管理和修改交互對話以便能夠與分布式網(wǎng)絡中的實體會話式通信的方法實現(xiàn)的MVC(模型-視圖-控制器)示例的示意圖。
圖4是可以根據(jù)本發(fā)明的一個示例實施例實現(xiàn)用于解釋和修改交互對話以便能夠與分布式網(wǎng)絡中的實體會話式通信的系統(tǒng)/方法的示意圖。
圖5是根據(jù)本發(fā)明的一個示例實施例用于提供與分布式網(wǎng)絡中的實體會話式通信的方法的示意圖。
圖6是根據(jù)本發(fā)明的另一個示例實施例用于提供與分布式網(wǎng)絡中的實體會話式通信的系統(tǒng)的示意圖。
具體實施例方式
本發(fā)明的示例實施例總體上包括用于在分布式多模態(tài)環(huán)境中提供會話式計算的系統(tǒng)和方法。具體地說,本發(fā)明的示例實施例包括用于使得用戶能夠使用便攜訪問設備會話式地與分布式網(wǎng)絡中的一個或多個實體通信的系統(tǒng)和方法,其中以與例如用戶語言、(多個)訪問通道、訪問設備的特征(例如,I/O模態(tài))和/或地區(qū)/國際設置無關的方式來說明用于與網(wǎng)絡中的實體通信的交互對話,并且其中所述用戶訪問設備和/或遠程服務器包括用于根據(jù)用戶語言、用戶首選項、訪問設備特征和/或地區(qū)/國際設置來修改所述交互對話的機制。因此,根據(jù)此處描述的本發(fā)明的示例實施例的系統(tǒng)和方法允許用戶通過多模態(tài)、多通道或會話式交互來訪問和控制分布式環(huán)境中的聯(lián)網(wǎng)實體(例如,設施、設備、資源等),而不必關心用戶的語言或位置,并且可以使用任意適合的普及計算設備,而不必關心例如其I/O模態(tài)。
此處使用的術語“通道”指特定的呈現(xiàn)器(renderer)、設備或特定的模態(tài)。不同模態(tài)/通道的例子包括,例如,語音(諸如VoiceXML)、可視(GUI)(諸如HTML(超文本標記語言))、受限GUI(諸如WML(無線標記語言))、CHTML(緊湊型HTML)以及HDML(手持設備標記語言)、XHTML-MP(移動簡表(mobile profile))和這些模態(tài)的組合。術語“多通道應用”指這樣的應用,其通過不同的通道(例如,VoiceXML、HTML)提供無所不在的訪問,每個時刻使用一個通道。多通道應用不提供跨越不同通道的同步或協(xié)調(diào)。
術語“多模態(tài)”應用指這樣的多通道應用,其中多個通道同時可用并被同時同步。此外,從多通道的角度看,多模態(tài)可以被認為是另一個通道。
此外,此處使用的術語“會話式”或“會話式計算”是指用戶和計算機之間以及不同模態(tài)(I/O能力)的設備或平臺之間的無縫多模態(tài)對話(信息交換),而不必關心訪問設備/通道的I/O能力,優(yōu)選地,使用開放的、彼此協(xié)作的通信協(xié)議和標準,以及會話式(或基于交互的)編程模型,該模型將應用數(shù)據(jù)內(nèi)容(第三層)和事務邏輯(第二層)與用戶交互和用戶操作(即,如下詳述的由交互范例使用編程)的數(shù)據(jù)模型分隔開。術語“會話式應用”是指這樣的應用,其支持應用內(nèi)的和跨越獨立開發(fā)的應用的多模態(tài)、自由流交互(例如,混合型初始對話(mixed initiative dialogs)),優(yōu)選地,使用短程和長程上下文(包括以前的輸入和輸出)以消除用戶意圖的歧義并理解用戶意圖。會話式應用可以利用NLU(自然語言理解)。
現(xiàn)在參看圖1,其中示出了根據(jù)本發(fā)明的一個示例實施例用于提供與分布式網(wǎng)絡環(huán)境中的實體(設施、設備、服務器、資源等)會話式通信的系統(tǒng)的示意圖。系統(tǒng)(10)包括用戶訪問設備(11),其可以訪問并控制分布式通信網(wǎng)絡(13)中的一個或多個通用會話式應用(12)(或“UCA”),或者與它們通信。訪問設備(11)可以包括,例如,諸如PDA、蜂窩電話或遠程控制設備等的無線設備。一般地,網(wǎng)絡(13)代表各種類型的網(wǎng)絡/網(wǎng)絡連接,包括例如無線網(wǎng)絡、IP網(wǎng)絡(例如,因特網(wǎng)、廣域網(wǎng)、局域網(wǎng))、自發(fā)的專用網(wǎng)絡(諸如藍牙)等以及諸網(wǎng)絡的任意組合。應當理解,本發(fā)明還可以使用其它“通道”和網(wǎng)絡/連接來實現(xiàn),并且此處出現(xiàn)的網(wǎng)絡均不應被解釋為對本發(fā)明的范圍的限制。
系統(tǒng)(10)還包括設施頁面服務器(14),其與一個或多個UCA(12)關聯(lián)。頁面服務器(14)包括一個或多個應用,所述應用描述了用戶接口(UI)并且允許用戶以與通道/模態(tài)/語言/地區(qū)無關的方式與UCA(12)(或其它注冊的UCA)交互,從而實現(xiàn)會話式(或多模態(tài),或多通道)交互。服務器(14)可以分布在網(wǎng)絡(13)上或本地地位于關聯(lián)的UCA(12)內(nèi)(如虛線所示)。
更具體地,設施頁面服務器(14)包括一個應用/web服務器,其包括一個或多個應用,所述應用使得用戶能夠使用訪問設備(11)會話式地與網(wǎng)絡(13)中存在的UCA(12)通信和交互。在本發(fā)明的一個示例實施例中,使用一個編程模型來創(chuàng)建所述應用,其中以與例如用戶語言、客戶端設備(11)的通信模態(tài)、以及網(wǎng)絡環(huán)境的地區(qū)/本地/國際化設置無關的方式來描述會話式對話。特別地,使用“基于交互的”編程語言來編寫所述應用,其中所述會話式對話(交互邏輯)被單獨地描述并且與,例如,針對給定通道、用戶語言、用戶首選項以及地區(qū)設置的轉(zhuǎn)換的描述無關。此外,用于實現(xiàn)所述會話式對話的交互邏輯以與用于驅(qū)動與一個或多個UCA(12)關聯(lián)的后端邏輯和數(shù)據(jù)的事務邏輯無關的方式編寫。
另外,在一個示例實施例中,應用的交互邏輯按照交互基元或“會話式指示”的有限集合對該應用進行抽象。“會話式指示”(或者在此處被稱為通用“命令”)定義了以與通道/模態(tài)/語言/地區(qū)無關的方式描述的交互的基本組件。所述會話式指示是以這樣一種方式定義的,即它們可以普遍地被應用于具有各種類型的聯(lián)網(wǎng)實體的各種類型的可能用戶交互。例如,“會話式指示”(諸如“開”和“關”)可以被應用于為與燈、電視、計算機或任何其它可以被打開或關閉的聯(lián)網(wǎng)設備交互而編寫的應用中。
在本發(fā)明的一個示例實施例中,使用一個或多個“會話式指示”的預定義排列/順序來編寫給定UCA(12)的應用,以說明所允許的用于與該UCA(12)交互的命令。在一個示例實施例中,從一個通用地預定義的會話式指示的有限集合中選擇用于給定應用的“會話式指示”。可以用這種預定義集合中的每個會話式指示的先驗知識來配置訪問設備(11),從而訪問設備(11)能夠根據(jù)例如訪問設備(11)的UI特性、用戶首選項說明(語言、命令類型等)以及地區(qū)設置來解釋并修改每個會話式的指示。下面將說明用于以通用的會話式指示實現(xiàn)基于交互的應用的各種示例實施例。
在本發(fā)明的一個示例實施例中,訪問設備(11)可以用于訪問和控制UCA(12)(或其它實體),或是與其通信,所述UCA(12)(或其它實體)已向,例如,分布式域中的服務器(14)注冊。訪問設備(11)被配置為發(fā)現(xiàn)、注冊網(wǎng)絡(13)中的“可以會話式地知道的”實體(包括,例如,UCA(12)或頁面服務器(14))并與其進行協(xié)商。更具體地,在本發(fā)明的一個示例實施例中,當訪問設備(11)進入一個給定的分布式網(wǎng)絡環(huán)境并“發(fā)現(xiàn)”其它可以會話式地知道的實體時,訪問設備(11)將繼續(xù)進行“注冊”和“協(xié)商”過程,這使得訪問設備(11)能夠獲得使得能夠與分布式環(huán)境中的實體交互的相關“概念”。例如,相關“概念”可以包括對所有已注冊的實體和分布式環(huán)境中所支持的相應命令(會話式指示)的說明。如上面所指出的,用于給定實體的(多個)會話式指示定義了用戶和該實體之間的交互對話。
此外,在本發(fā)明的一個示例實施例中,訪問設備(11)按照例如用戶首選項和設備特性來修改所述交互對話(如會話式指示所說明的)。特別地,如上面所指出的,在本發(fā)明的一個示例實施例中,與一個給定環(huán)境相關聯(lián)的會話式指示的集合基本上是一個通用地預定義的會話式指示的有限集合的子集,訪問設備(11)先前已經(jīng)對其有所了解。并且訪問設備(11)包括用于解釋并修改此類會話式指示的機制。因此,當訪問設備(11)獲得分布式環(huán)境中相關的“概念”時,訪問設備(11)能夠解釋所獲得的概念并且修改所述交互對話,從而使得用戶能夠與UCA(12)交互。例如,訪問設備(11)可以翻譯用戶的通用指示(例如,語音命令、物理運動、GUI輸入等),或是將用戶的指示映射到相應的“會話式指示”,從而調(diào)用與UCA(12)相關聯(lián)的已注冊的命令。此外,訪問設備(11)可以基于默認說明、用戶首選項和/或設備特性將所述會話式指示以不同的語言、模態(tài)、通道和本地/國際/地區(qū)設置呈現(xiàn)。例如,基于用戶首選項和/或設備特性,會話式指示可以以不同的語言(德語、法語等)、不同的模態(tài)/通道(WML、HTML、語音、多模態(tài)等)、不同的本地化/國際化/地區(qū)化設置(例如,比利時賬號、美國記帳系統(tǒng)、國際記帳和銀行編號、取決于地區(qū)的地址/郵政編碼格式等)呈現(xiàn)。下面將更詳細地討論這些概念。
再次參考圖1,在本發(fā)明的一個示例實施例中,訪問設備(11)包括通信堆棧(15)、多模態(tài)外殼(16)(或?qū)υ捁芾砥?、GUI呈現(xiàn)瀏覽器(17)、GUI I/O設備(18)(例如,顯示)、語音呈現(xiàn)瀏覽器(19)、音頻I/O設備(20)(例如,麥克風、揚聲器),一個或多個嵌入的會話式引擎(21),以及轉(zhuǎn)換規(guī)則(22)和元信息(23)的數(shù)據(jù)庫。
通信堆棧(15)實現(xiàn)了能夠?qū)崿F(xiàn)網(wǎng)絡連接和通信的通信協(xié)議(例如,藍牙、HTTP、WAP等)。此外,在一個示例實施例中,通信堆棧(15)實現(xiàn)了能夠?qū)崿F(xiàn)實時DSR(分布式語音識別)應用的會話式通信協(xié)議,諸如用于語言的實時編碼和傳輸?shù)膮f(xié)議,以及用于為進行遠程處理(例如,語言處理)在分布式設備/應用之間實時地交換控制信息的協(xié)議,其使用了披露于,例如,提交于2002年3月21日的名稱為“ConversationalNetworking Via Transport,Coding and Control Conversational protocols”的美國專利申請No.10/104,925中的方法和技術,該申請具有共同受讓人并且其全部內(nèi)容在此引入作為參考。
此外,通信堆棧(15)可以實現(xiàn)會話式協(xié)議,該協(xié)議能夠?qū)崿F(xiàn)分布式環(huán)境中聯(lián)網(wǎng)設備/應用之間的會話式發(fā)現(xiàn)、注冊和協(xié)商,所述會話式協(xié)議諸如上面引入的美國專利申請No.10/104,925以及名稱為“System andMethod For Providing Network Coordinated Conversational Services”的美國專利申請No.09/806,425和名稱為“Conversational Computing ViaConversational Virtual Machine”的美國專利申請No.09/806,565中所描述的那些協(xié)議,這些申請具有共同受讓人并且其全部內(nèi)容在此引入作為參考。這種會話式協(xié)議還能夠自動地和協(xié)調(diào)地在分布式環(huán)境中的本地和遠程應用/設備/服務器之間共享會話式功能和資源。
在一個示例實施例中,對話管理器(16)使用如下面參考圖3所述的MVC范例并根據(jù)用戶首選項說明和/或設備特性來管理和修改交互對話。更具體地,通過實例的方式,對話管理器(16)分析并處理由服務器(14)接收的頁面(包括描述交互邏輯的會話式指示)以生成一個映射,該映射使得能夠使用例如預先加載在訪問設備(11)上的相關轉(zhuǎn)換規(guī)則(22)和/或元信息(23),將用戶輸入的指示(例如,語音命令、GUI命令等)映射/翻譯成接收到的頁面中的會話式指示。此外,對話管理器(16)可以使用適合的轉(zhuǎn)換規(guī)則(22)和/或元信息(23)來生成一個或多個特定于模態(tài)的腳本,所述腳本由相應的呈現(xiàn)瀏覽器(例如,GUI瀏覽器(17)和語音瀏覽器(19))處理,從而以一個或多個(同步后的)模態(tài)(例如,語音或GUI)展現(xiàn)會話式用戶接口。
例如,提交于2000年4月6日的名稱為“Methods and Systems ForMulti-Modal Browsing and Implementation of A Conversational MarkupLanguage”的美國專利申請No.09/544,823,提交于2000年2月18日的名稱為“Systems and Methods For Synchronizing Multi-Modal Interactions”的美國專利申請No.09/507,526,以及提交于2001年12月4日的名稱為“Systems and Methods For Implementing Modular DOM(Document ObjectModel)-Based Multi-Modal Browsers”的美國專利申請No.10/007,092中描述了各種用于實現(xiàn)對話管理器(16)(多模態(tài)外殼)的體系結構和協(xié)議,所有這些申請具有共同受讓人并且其全部內(nèi)容在此引入作為參考。下面將說明與對話管理器(16)的示例實施例和功能有關的細節(jié)。
訪問設備(11)還包括一個或多個嵌入的語音引擎(21),其用于為語音呈現(xiàn)瀏覽器(19)提供基于語音的處理。通過實例的方式,語音引擎(21)可以包括ASR(自動語音識別)引擎、NL(自然語言)分析器引擎、TTS(文本-語音)引擎和SPID(說話者識別/驗證)引擎和/或用于預先/拖后處理音頻(語音)信號的任何其它引擎/處理器,諸如,例如,用于編碼/解碼在訪問設備(11)和遠程引擎服務器(24)之間傳輸?shù)囊纛l數(shù)據(jù)的上行/下行編解碼器。ASR引擎使得系統(tǒng)能夠理解用戶的口頭發(fā)音,以便能夠處理口頭命令和其它從用戶處接收的口頭輸入。用于自然語言理解應用的NL分析器從ASR引擎接收數(shù)據(jù)流并處理這些數(shù)據(jù)。TTS引擎將文本轉(zhuǎn)換為語音并且使得訪問設備(11)能夠重放例如來自文本字符串的合成提示。SPID引擎用于例如當訪問設備(11)支持生物測定識別/驗證時識別說話者。
應當理解圖1中訪問設備(11)的體系結構僅僅是具有足夠資源以實現(xiàn)諸如例如嵌入式語音引擎和語音瀏覽器(胖客戶端配置)的各種組件的訪問設備的示例。在訪問設備(11)的資源有限的其它實施例中,訪問設備的各種組件可以分布在網(wǎng)絡(13)上(瘦客戶端配置)。例如,如圖1所示,當訪問設備(11)不具備進行本地語音處理所需的資源時,訪問設備(11)可以訪問遠程會話式引擎服務器(24)以獲得某些語音服務。此外,語音瀏覽器(19)可以位于遠程并且可以通過網(wǎng)絡(13)訪問。在這樣的情況下,可以為流音頻實現(xiàn)各種會話式協(xié)議(15)并交換控制信息,以便能夠?qū)σ孢M行遠程控制并同步不同的呈現(xiàn)視圖,如上面引入的美國專利申請No.10/104,925中所述。
此外,在訪問設備具有有限資源的本發(fā)明的其他示例實施例中,可以在遠程服務器中進行交互對話的修改。例如,訪問設備(11)可以在給定的分布式環(huán)境中獲得相關的交互概念,以及接收輸入的用戶指示,然后將該相關的交互概念和輸入的用戶指示發(fā)送給具有處理該用戶指示和修改該交互對話的轉(zhuǎn)換機制的指定服務器。例如,指定的服務器可以預先裝載有根據(jù)例如用戶首選項說明和/或訪問設備特性來修改交互對話所需的轉(zhuǎn)換規(guī)則和元信息。在這樣的情況下,如果必要,指定的服務器可以將處理結果傳遞給訪問設備。
如以上所指出的,使用基于交互的編程模型(其中以“用戶-接口”中性方式說明了交互對話(會話式指示))實現(xiàn)了根據(jù)本發(fā)明的示例實施例的系統(tǒng)和方法,所述系統(tǒng)和方法能夠與分布式環(huán)境中的實體進行會話式通信。特別地,使用了編程模型來編寫基于交互的應用,在該編程模型中應用數(shù)據(jù)內(nèi)容(第三層)和事務邏輯(第二層)被與用戶操作的用戶交互和數(shù)據(jù)模型分隔開。此外,數(shù)據(jù)模型和對交互對話的描述被與針對給定通道、用戶首選項、地區(qū)設置等的對此類用戶交互對話轉(zhuǎn)換的描述分隔開,并且與其無關。例如,會話式指示既可以聲明性地(例如,使用XML)也可以命令性地/程序性地(例如,使用beans)編碼。
圖2是根據(jù)本發(fā)明的示例實施例的單獨編寫的編程框架的示意圖,該框架可用于實現(xiàn)基于交互的會話式多模態(tài)的或多通道的應用。單獨編寫的、基于交互的編程模型將各個編程層分隔開,該編程層包括后端數(shù)據(jù)層30、事務邏輯層31、數(shù)據(jù)模型層32、交互邏輯層33、瀏覽層34、專用(specialization)層35和特定模態(tài)展現(xiàn)/呈現(xiàn)層36。
后端數(shù)據(jù)層(30)包括一個后端繼承(legacy)數(shù)據(jù)庫。事務邏輯層(31)是包含有邏輯(即驅(qū)動應用運行的狀態(tài)和條件的編碼集合)以及變量驗證信息的應用的一部分。數(shù)據(jù)模型層(32)(或數(shù)據(jù)類型基元)包括用于由用戶交互填入的數(shù)據(jù)項的一個或多個已定義的數(shù)據(jù)模型,并且聲明了構成應用對話的用戶接口。交互層(33)按照交互基元(例如,會話式指示)的有限集合對應用進行抽象以便用與模態(tài)無關的方式封裝交互邏輯。根據(jù)特定模態(tài)展現(xiàn)層(36)提供的描述,提供了所述應用的特定模態(tài)的表示。專用層(35)提供了一種機制,其用于以一種或多種模態(tài)對展現(xiàn)的一個或多個特征進行裝飾性修改。修飾或?qū)S檬且环N針對給定通道(設備、模態(tài)或瀏覽器)或通道類別(例如,Nokia蜂窩電話等)優(yōu)化應用的方法。例如,專用可以包括為頁面提供背景,將頁面分層更改為幀、在多張板卡(deck of cards)間分段WML文檔、指定TTS提示或音頻提示的語音特性以便重放、當對著顯示的信息說話時改變呈現(xiàn)給用戶的信息、跳過給定模態(tài)中不需要的指示等。
在本發(fā)明的一個示例實施例中,單獨編制的、基于交互的編程模型可以使用,例如,上面引入的美國專利申請No.09/544,823中描述的聲明性的基于交互的標記語言來實現(xiàn)。更具體地,美國專利申請No.09/544,823描述了一種用于基于交互的CML(會話式標記語言)(或者被稱為IML(交互式標記語言))的新穎的編程范例。IML的一個實施例優(yōu)選地包括一個高層的基于XML(可擴展標記語言)的腳本,其可以在此處實現(xiàn),以便使用“會話式指示”指定用戶和計算機之間的交互“對話”或“會話”。如上所指出的,會話式指示是基本的對話組件(基于交互的元素),其體現(xiàn)了與用戶的對話交互的特性。每個會話式指示都以與負責呈現(xiàn)展現(xiàn)材料的設備或應用所提供的特性和UI無關的方式提供了對話的抽象表示。會話式指示是與模態(tài)無關的構建塊,其可以被組合以表示任意類型的基于意圖的用戶交互。
一般地,以基于指示的IML編寫的用戶交互可以具有如下的格式<iml>
<model id=“model_name”>.../model>
<interaction model_ref=“model_name”name=“name”.
...,/interaction.
</iml>
IML交互頁面定義了一種數(shù)據(jù)模型組件(例如,基于XFORMS標準),該組件為用戶交互指定了一個或多個數(shù)據(jù)模型。IML頁面的數(shù)據(jù)模型組件為由一個或多個會話式指示所指定的用戶交互填充的字段聲明了數(shù)據(jù)模型。換言之,該IML交互頁面可以指定被綁定在數(shù)據(jù)模型部分上的用戶交互部分。IML文檔為由用戶交互填充的數(shù)據(jù)項定義了數(shù)據(jù)模型,然后聲明了構成應用對話的用戶接口??蛇x地,IML文檔可以聲明一個默認的實例以用作初始化用戶接口時默認值的集合。
在一個示例實施例中,可以用與XFORMS DataModel和XSchema一致的方式定義數(shù)據(jù)項。數(shù)據(jù)模型被標記以唯一的id屬性,其中該id屬性的值被用作一個屬性的值,此處對于給定的會話式指示元素該id屬性被稱為model_ref,表示為interaction,以指定要用于該交互的數(shù)據(jù)模型。
如上所指出的,在本發(fā)明的一個示例實施例中,可以用于描述用戶接口/用戶交互的會話式指示是預定義的并且是有限的(雖然如果必要,應用開發(fā)人員可以擴展該集合)。會話式指示以這樣一種方式定義,即它們可以普遍地應用于具有各種類型應用的各種類型的可能用戶交互。例如,會話式指示“開”和“關”可應用于為了與電燈、電視、計算機或任意其它可以打開或關閉的設備交互而編寫的應用中。其它的可以被普遍應用的指示和指示組件的例子包括,例如,select(從列表中選擇(單選或多選))、message(向用戶重放提示)、submit(提交一個操作)、自由輸入等。
更具體地,如上面引入的美國專利申請No.09/544,823所說明的,會話式指示message可以被用于向用戶傳達信息消息,所述消息可以作為,例如,顯示的字符串或語音提示呈現(xiàn)。此外,會話式指示select可以用于封裝對話,在所述對話中希望用戶從一組選擇中進行挑選。select指示封裝了提示、默認選擇和合法選擇的集合。上面引入的申請No.09/544,823中描述了其它會話式指示。
通過實例的方式,可以實現(xiàn)下面的IML文檔以定義用戶與蘇打機的交互<iml>
<model id=”SodaMachine”>
<string name=“command”enumeration=“closed”>
<value>drink</value>
<value>credit</value>
</string>
<number name=“credit/”>
<string name=“drink”enumeration=“dynamic”src=http//localhost/servlets/coke-machine/drinks/>
</model>
<interaction name=“SodaMachine”model_ref=“sodaMachine”>
<caption>Soda Machine</caption>
<menu>
<choices>
<choice value=“#credit”>Insert a coin</choice>
<choice value=“#drink”>Select drink</choice>
</choices>
</menu>
<dialog id=“credit”action=“submit”>
<assign name=“SodaMachine.command”expr=“credit”/>
<input name=“SodaMachine.credit”>
<caption>How much would you like to deposit?</caption>
<help>You can deposit money into this coke machine-this willgive you credit for obtaining the drink of your choice</help>
</input>
</dialog>
<dialog id=“drink”action=“submit”>
<assign name=“SodaMachine.command”expr=“drink”/>
<select name=“SodaMachine.drink”>
<caption>What would you like to drink?</caption>
<help>You can pick one of the available drinks.What wouldyou like to drink?</help>
</select>
</dialog>
<submit target=“http//localhost/servlets/soda/executeRequest.class”>
<message>Submitting your require to the soda machine</message>
</submit>
</interaction>
</iml>
上面的示例性IML文檔首先聲明了用于由用戶交互填充的字段的數(shù)據(jù)模型字段command是string類型的枚舉,其具有固定的有效值集合;字段drink是string類型的枚舉,其中有效值的范圍是動態(tài)的,即在運行時確定;以及number類型的字段credit是另一種預先定義的原子類型number的一個例子。元素interaction指定了用戶交互的各個部分。蘇打機允許用戶或是存一些錢或是取一杯飲料—這些可能的用戶動作被封裝在單獨的會話式指示中。元素interaction中的第一個指示是menu,其允許用戶選取可用動作中的一個動作。每個用戶動作被封裝在單獨的dialog元素中,每個dialog元素具有一個action屬性,該屬性設置成submit。完成了指示時,交互繼續(xù)到指示submit,其負責向后端應用提交所表達的用戶意圖。
用于第一個可能的用戶動作的指示dialog從用戶處獲得字段credit的值。用于選擇飲料的指示dialog使用了一個select指示,以允許用戶選取可用飲料之一??捎眠x擇的列表—與在數(shù)據(jù)模型中用于相應枚舉的可接受的值的列表類似—是動態(tài)的并且在運行時被查找。這個例子中的指示input和select使用了IML元素caption和help來封裝用戶提示和幫助文本。在必要時這些元素還可以被進一步專門化以包括特定模態(tài)的內(nèi)容(即,專門化)。
應當理解,上面說明的聲明性框架僅是用于根據(jù)本發(fā)明實現(xiàn)單獨編寫、基于交互的應用的一個示例性實施例,還可以使用其他語言。例如,在本發(fā)明的其它示例實施例中,可以實現(xiàn)基于編程范例的命令性的/程序性的會話式對話(例如,bean,Javabean),該編程范例將數(shù)據(jù)模型和依據(jù)交互對應用的描述與針對給定通道、用戶首選項、地區(qū)設置等轉(zhuǎn)換的說明分隔開??梢猿橄蟮卦跀?shù)據(jù)模型和交互說明的層次上編寫此類對話組件,并且提供呈現(xiàn)外觀功能,其可以為給定的目標模態(tài)、通道、語言、地區(qū)、用戶首選項等提供組件的呈現(xiàn)后的版本。這些呈現(xiàn)外觀功能可以是這樣的類,所述類起源于(繼承自)所述應用的與模態(tài)/通道/語言無關的表示。例如,提交于2001年4月18日的名稱為“Systems and Methods For ProvidingConversational Computer Via JavaServer Pages and Javabeans”的美國專利申請No.09/837,024,以及提交于2001年12月4日的名為“ReusableVoiceXML Dialog Components,Subdialogs and Beans”的美國專利申請No.10/007,084(這些申請具有共同受讓人并且其全部內(nèi)容在此引入作為參考)中所說明的JSP(Javaserver Pages)/beans框架,可以用于實現(xiàn)由交互通過服務器側或客戶機側對交互組件(例如,對話beans)預定集合的處理來編程。
圖3是可以根據(jù)本發(fā)明的一個示例實施例實現(xiàn)以管理和修改所述交互對話的MVC(模型-視圖-控制器)范例的示意圖。例如,美國專利申請No.09/544,823中詳細說明了該MVC范例。簡要地,圖3所示的MvC(模型-視圖-控制器)范例基于單個信息源、模型M(例如,使用聲明性IML模型描述的會話式指示)并通過多個控制器C1、C2和C3(例如,不同的瀏覽器,諸如語音、GUI和多模態(tài)瀏覽器)來操作,所述模型M被映射到多個視圖(V1、V2)(例如,不同的同步后的通道)。使用此范例,可以使用多個控制器C1、C2和C3實現(xiàn)一個會話式系統(tǒng),所述多個控制器作用于,轉(zhuǎn)換、操作和修改相同的底層模型M以提供同步后的視圖V1、V2(即,將所述單個模型M轉(zhuǎn)換為多個同步視圖)。視圖的同步是通過從不斷地被更新的單個統(tǒng)一表示M生成所有視圖來實現(xiàn)的??梢允褂贸橄髽浣Y構實現(xiàn)同步,所述抽象樹結構被使用轉(zhuǎn)換說明映射到特定通道的表示樹結構。所述轉(zhuǎn)換在各種視圖間提供了自然映射。這些轉(zhuǎn)換可以被反向,以便將給定視圖的特定部分映射到底層模型。換言之,任意給定視圖的任意部分可以被映射回底層的與模態(tài)無關的表示M的生成部分,然后,通過應用適合的轉(zhuǎn)換規(guī)則,該部分可以被映射回不同模態(tài)中的相應視圖。
在本發(fā)明的一個示例實施例中,圖3所示的MVC框架的模型代表了應用的交互對話(會話式指示),其被以與目標通道/模態(tài)/用戶語言/地區(qū)化等無關的方式抽象地描述。在該層次,所述應用具備完整的功能,并與呈現(xiàn)該應用對話的模態(tài)/通道/語言或平臺無關。然后可以使用取決于例如目標通道、用戶首選項、設備特性、地區(qū)設置等的轉(zhuǎn)換規(guī)則修改該應用對話。
圖4是可以根據(jù)本發(fā)明的一個示例實施例實現(xiàn)用于解釋和修改交互對話以便能夠與分布式網(wǎng)絡中的實體會話式通信的系統(tǒng)/方法的示意圖。更具體地,圖4示出了用于管理和修改交互對話的系統(tǒng)和方法,基于上面圖3中說明的MVC范例,該交互對話使用了聲明性IML實現(xiàn)(具有在至少兩個模態(tài)或設備之間的緊密同步)進行了說明。由多模態(tài)外殼(41)使用例如HTTP、WAP、藍牙等的任意傳統(tǒng)傳輸協(xié)議從應用服務器取出一個輸入IML文件(40)。輸入IML文件(40)顯示為包括一個基本對話(由“.”表示的會話式指示或IML頁(40)內(nèi)的節(jié)點)序列。箭頭表示在IML頁內(nèi)聲明的對話的流動。特別地,當以圖形表示時,所述對話被表示為一個樹,即帶有分叉(以及可能的循環(huán))的指示的順序表。
IML文件(40)中的每個組件指示(即,節(jié)點)都標記有特定的node_id(例如,跨越樹的中綴或前綴路徑,或任意其它標號)。多模態(tài)外殼(41)記錄IML文件(40)的每個node_id及其樹/圖結構以構建一個注冊表(43)。多模態(tài)外殼(41)包括一個代碼轉(zhuǎn)換器模塊(42),其用于基于每個指示的類型/性質(zhì)動態(tài)地將每個指示(對話組件)轉(zhuǎn)換為每個已注冊的模態(tài)(例如GUI或語音)的相應組件。例如,如圖4所示,標記有“Node_id”的指示/對話組件被動態(tài)地譯碼為HTML組件(46)和VoiceXML組件(47),它們被傳送到各自的展現(xiàn)瀏覽器(例如,分別傳送給視覺瀏覽器或語音瀏覽器)以便呈現(xiàn)。頁面(46、47)是同步的,一個瀏覽器上的一個指示的任意事件都被發(fā)送到多模態(tài)外殼(41),多模態(tài)外殼(41)利用所述的圖/樹確定如何更新頁面(例如,通過對一個新的node_id進行代碼轉(zhuǎn)換,或跟蹤一個鏈接并更新整個的IML頁)。
從IML到同步的模態(tài)頁面的動態(tài)代碼轉(zhuǎn)換可以使用諸如存儲在數(shù)據(jù)庫(44)中的XSL轉(zhuǎn)換規(guī)則之類的轉(zhuǎn)換規(guī)則來實現(xiàn)。IML文件(40)中的每個指示/對話組件都與一個默認的XSL轉(zhuǎn)換規(guī)則相關聯(lián)??梢曰诖鎯υ谠O備的本地數(shù)據(jù)庫(45)內(nèi)的元信息改寫數(shù)據(jù)庫(44)中的轉(zhuǎn)換規(guī)則。元信息可以包括,例如,設備/瀏覽器首選項(例如,關于該設備的能力的基于能力的信息)、用戶首選項/定制以及應用首選項。此外,可以從IML頁面的內(nèi)容提供者處下載新的XSL轉(zhuǎn)換規(guī)則來改寫轉(zhuǎn)換規(guī)則(44)(例如,如IML文件中的URL所指示的)。在本發(fā)明的其他示例實施例中,希望可以使用JSP或Java bean進行會話式指示的修改/轉(zhuǎn)換。例如,可以將一個Java bean與每個會話式指示關聯(lián),該Java bean帶有其自己的針對每個模態(tài)的呈現(xiàn)外觀功能(通過JSP)。
現(xiàn)在參看圖5,一個流程圖給出了根據(jù)本發(fā)明的一個示例實施例用于提供與分布式網(wǎng)絡中實體的會話式通信的方法。在一個實施例中,用戶可以通過使用便攜訪問設備(或遠程控制設備)建立到分布式網(wǎng)絡的連接(步驟50)并獲得使得能夠與該分布式網(wǎng)絡中的實體交互的有關“概念”(步驟51)來與該分布式網(wǎng)絡中的實體通信。在本發(fā)明的一個示例實施例中,建立通信鏈路和獲得有關的交互“概念”的過程可以包括各種過程,諸如,會話式發(fā)現(xiàn)、注冊和協(xié)商,它們發(fā)生在用戶訪問設備與應用服務器和/或網(wǎng)絡中的一個或多個實體(例如,UCA)之間??梢愿鶕?jù)本發(fā)明的一個示例實施例實現(xiàn)的,用于執(zhí)行會話式發(fā)現(xiàn)、注冊和協(xié)商的各種協(xié)議披露于,例如,上面引入的美國專利申請No.10/104,925、09/806,425和09/806,565中。
例如,可以使用適合的方法進行會話式發(fā)現(xiàn)以“發(fā)現(xiàn)”“能夠會話地理解的”網(wǎng)絡實體(例如,可以使用預先定義的會話式協(xié)議發(fā)現(xiàn)的并交換要被會話式地控制的必要信息的實體)。在一個示例實施例中,使用“廣播和偵聽”過程執(zhí)行會話式發(fā)現(xiàn),這允許創(chuàng)建例如藍牙的動態(tài)的和自發(fā)的網(wǎng)絡。更具體地,用戶的訪問設備可以使用適合的通信協(xié)議廣播一個握手請求(發(fā)現(xiàn))并偵聽來自網(wǎng)絡實體的響應。在一個實施例中,分布式網(wǎng)絡中的每個實體能夠單獨地與用戶的訪問設備通信并響應握手請求。在另一實施例中,使用一個專用的服務器注冊網(wǎng)絡實體,該服務器代表此類已注冊的實體與用戶的訪問設備通信。在另一實施例中,諸實體與用戶的訪問設備通信,但是它們使用一個服務器注冊,該服務器充當訪問設備和實體之間的網(wǎng)關或接口。在本發(fā)明的另一示例實施例中,可以使用一個默認的服務器設置(注冊了每個網(wǎng)絡實體的“地址”),該設置使用戶的訪問設備能夠與該服務器通信并獲得已注冊實體的列表。通過發(fā)現(xiàn)協(xié)議交換的信息包括,例如,用于握手的廣播請求或?qū)φ埱蟮膫陕?、設備/實體標識符的交換、交換用于第一次注冊或協(xié)商的句柄/指針等。
接著,在一個示例實施例中,一個或多個網(wǎng)絡實體的會話式發(fā)現(xiàn)導致一個會話式注冊過程,其使得用戶訪問設備能夠獲得相關概念,所述概念使得能夠與一個或多個發(fā)現(xiàn)的網(wǎng)絡實體交互。此類相關概念包括,例如,被發(fā)現(xiàn)的實體所支持的命令(會話式指示)列表,以及返回句柄/事件,以便在激活此類命令時返回到相應的實體應用。此外,注冊信息可以包括用于獲得必要的數(shù)據(jù)文件(詞匯、語法等)的地址,以便在用戶訪問設備上執(zhí)行某些會話式功能,或包括用戶訪問設備可以訪問的遠程引擎的地址,以便執(zhí)行遠程處理或某些會話式引擎任務(例如,一個將執(zhí)行語音識別任務的服務器等)。用戶訪問設備可以直接從每個被發(fā)現(xiàn)的實體獲得相關概念,也可以通過與本地服務器通信來獲得所述概念,以便能夠與分布式網(wǎng)絡中的實體交互,該本地服務器提供所有已注冊實體的列表以及該分布式網(wǎng)絡中的此類實體所支持的相應的已注冊的命令。
接著,注冊過程導致了協(xié)商過程,其中在用戶訪問設備與網(wǎng)絡實體或諸網(wǎng)絡實體之間交換信息,以便協(xié)商諸如主-從、對等等適合的網(wǎng)絡拓撲并協(xié)調(diào)通信。網(wǎng)絡配置可以基于,例如,每個網(wǎng)絡實體的需求和能力的注冊,其中網(wǎng)絡實體和應用可以在協(xié)商過程中表決給定的臨時配置或者此類配置可由應用來采用,等等。在一個示例實施例中,協(xié)商導致了用戶訪問設備控制并驅(qū)動所述會話。
作為上述過程的結果,用戶訪問設備獲得了適用于分布式環(huán)境的基本命令(或會話式指示)集,這些基本命令以與通道/模態(tài)/地區(qū)無關的方式說明了用于與實體通信的交互對話。此后,訪問設備可以處理并解釋相關命令(例如,會話式指示),以便根據(jù)(多個)訪問通道、訪問設備的I/O模態(tài)、用戶語言、預先指定的用戶首選項和/或地區(qū)/國際設置等修改交互對話和用戶接口(步驟52)。
更具體地,如上面指出的,在一個示例實施例中,分布式環(huán)境中用于給定應用的會話式指示的集合是一個預定義的會話式指示的有限集合的子集,并且用戶訪問設備預先裝載了相關轉(zhuǎn)換機構。此類轉(zhuǎn)換機構包括,例如,針對此類預定義集合中的每個會話式指示,用于交互(對話)對象的呈現(xiàn)外觀功能(命令性編程)或XSL轉(zhuǎn)換規(guī)則(聲明性編程),所述轉(zhuǎn)換機制允許訪問設備基于例如通過轉(zhuǎn)換說明指定的設備的UI特性、用戶首選項(語言、命令類型等)以及區(qū)域設置來處理、解釋和修改給定分布式環(huán)境中的會話式指示(交互組件)。
當用戶希望與所希望的實體交互時,用戶向訪問設備輸入一個期望的指示(命令或詢問),訪問設備將處理輸入的用戶指示以確定目標設備并調(diào)用目標設備的相關命令(步驟53)。例如,對于能夠使用語音的訪問設備,用戶可以發(fā)出口頭命令(詢問)或其它聲音以訪問或控制某個實體。對于能夠使用GUI的訪問設備,用戶可以在顯示出的UI中給定區(qū)域內(nèi)鍵入某個指示(命令或查詢)。此外,對于可以使用視頻(攝像機、屏幕)的訪問設備,用戶可以輸入面部的指示(皺眉、微笑)或作出物理移動(手勢)以訪問或控制某個網(wǎng)絡實體。應當理解,任意類型的I/O模態(tài)都可以用于輸入用戶的指示,這取決于訪問設備的配置和資源。
訪問設備將處理用戶輸入的指示,將用戶輸入的指示翻譯或映射成相關命令(會話式指示)以便調(diào)用該命令(步驟53),然后向目標實體提交相關的位串(步驟54)。
應當理解,在本發(fā)明的一個示例實施例中,訪問設備是多模態(tài)設備,并且可以根據(jù)用戶首選項(命令類型、用戶語言等)將各種用戶指示映射到一個給定的命令(會話式指示)。作為一個例子,燈(會話式設施)的相關命令(指示)可以是“打開”和“關閉”,并且此類命令可以以“Switchon”或“Switch off”以及“allumer”和“eteindre”或其它語言來呈現(xiàn)。此外,作為一個例子,基于預先指定的用戶首選項和轉(zhuǎn)換說明,基本命令“打開”可以被多個用戶指示中的一個指示調(diào)用。例如,通過用戶以用戶的語言口頭地發(fā)出一個所希望的命令(例如,“開”)、或由用戶在一個GUI區(qū)域內(nèi)輸入此類命令或選擇特定的圖標,或通過例如用戶在訪問設備的攝像機中“眨眼”可以調(diào)用命令“打開”。在所有的實例中,用戶訪問設備如例如預先裝載的用戶首選項和/或轉(zhuǎn)換說明所指定的那樣將輸入的用戶指示翻譯或映射為相應的命令(會話式指示)。對于語音命令,用戶訪問設備可以本地地執(zhí)行語音識別,或是遠程地執(zhí)行語音識別,其中語音輸入被編碼并傳送給具有必要的資源/數(shù)據(jù)文件的語音服務器,并且結果被傳送回訪問設備以便進一步處理。
處理輸入的用戶指示的步驟還包括解決支持自由流、自然語言理解的UI的上下文模糊。例如,用戶可以發(fā)出命令“打開”以激活分布式網(wǎng)絡中遠程地控制的燈。然而,在分布式網(wǎng)絡中另一實體可以是對命令“打開”做出響應的計算機。在這樣的情況下,訪問設備的對話管理器可以詢問用戶,以便確定輸入的用戶命令的目的并消除該輸入的用戶命令的歧義。例如,訪問設備可以“詢問”用戶(或是通過合成語音,或是通過GUI查詢)“是指燈還是指計算機”。在其他情況下,如本領域的技術人員所了解的,對話管理器可以通過維護上下文歷史(例如,歷史命令、操作、查詢等)來確定命令的目的。例如,如果用戶發(fā)出命令“打開燈”(存儲在所述上下文歷史中),如果用戶隨后發(fā)出“關”,則對話管理器可以理解該命令的對象是指燈(假設先前的上下文(存儲在上下文歷史中)被與該燈關聯(lián))。
如上所指出的,轉(zhuǎn)換說明的示例實施例可以被預先裝載在客戶端的訪問設備上,所述轉(zhuǎn)換說明使得能夠基于用戶首選項、用戶語言、設備特性、地區(qū)設置等修改所述交互對話,并且所述轉(zhuǎn)換說明包括例如會話指示的XSL轉(zhuǎn)換規(guī)則,所述會話指示是使用帶有具有基于交互的對話組件的呈現(xiàn)外觀的基于交互的標記語言(IML)或bean編寫的,以便命令性編程。此外,基于語言識別、或用戶首選項,可以從遠程服務器為每個指示下載新的XSL轉(zhuǎn)換規(guī)則,所述服務器或是一個共享的普通服務器,或是由例如內(nèi)容/服務提供者重定向到一個IML頁面的服務器。當訪問設備的本地引擎不能處理該語言時,此類XSL規(guī)則可以指示客戶端設備的瀏覽器以聯(lián)網(wǎng)模式運行。此外,可以指示以國際語音運行的引擎或能夠處理其它語言的引擎從適當?shù)姆掌飨螺d(如果可行)數(shù)據(jù)文件。對于語言或本地化,希望本地標識符與用于國家和地區(qū)的現(xiàn)有ISO和/或IETF標準相一致。
現(xiàn)在參看圖6,其中示出了根據(jù)本發(fā)明的另一示例實施例用于提供與分布式多模態(tài)環(huán)境中的實體會話式通信的系統(tǒng)的方塊圖。更具體地,圖6中的示例性系統(tǒng)示出了已知X10協(xié)議的擴展。X10是一種通信語言,其允許設備使用例如房屋或建筑物內(nèi)現(xiàn)有的高壓電線通信。在X10系統(tǒng)中,插入或硬布線在房屋(或建筑物)中某一位置的發(fā)射機可以向插入(或硬布線)在房屋或建筑物中另一位置的接收機發(fā)送控制信號(例如,用于一個或多個燈的開、關、調(diào)暗、調(diào)亮等)以遠程地控制設備。
通常,圖6的示例性系統(tǒng)一般包括X10服務器(60)、接口系統(tǒng)(61)和通用會話式遠程控制設備(62)(或UCRCD)。X10服務器(60)從接口系統(tǒng)(61)接收會話式命令并對其進行處理,并將所述會話式命令轉(zhuǎn)換成適合的X10命令以便控制所希望的諸如燈之類的X10應用(未示出)。接口系統(tǒng)(61)在X10服務器(60)和UCRCD(62)之間提供接口。接口系統(tǒng)(61)起網(wǎng)關的作用,它在X10系統(tǒng)和UCRCD(62)之間傳遞并轉(zhuǎn)換協(xié)議。在一個示例實施例中,UCRCD(62)包括可以使用語音的便攜式PDA,所述PDA具有諸如RF、專用(例如,藍牙、跳頻聯(lián)網(wǎng))或IR之類的自發(fā)聯(lián)網(wǎng)的能力。
接口系統(tǒng)(61)包括房間服務器(room server)(63)、IML(或IML服務器)(64)和通信模塊(65)。房間服務器(63)與X10服務器(60)通信以提供必要的通信和協(xié)商,以便能夠通過UCRCD(62)遠程控制X10網(wǎng)絡中的X10應用。IML服務器(64)將向UCRCD(62)提供相應的IML頁面,其中所述IML頁面包括與模態(tài)無關的會話式應用指示,所述會話式應用指示代表了與該環(huán)境中的X10可控的應用關聯(lián)的命令。通信模塊(65)實現(xiàn)諸如藍牙的無線通信協(xié)議以便能夠與進入該聯(lián)網(wǎng)環(huán)境的任何兼容的UCRCD(62)進行無線通信。
UCRCD(62)包括能夠與接口系統(tǒng)(61)通信的相應通信模塊(66)、分析、處理并解釋從IML服務器(64)獲得的IML頁面(67)的IML分析器/處理器(68)(對話管理器)以及將IML頁面(67)的與模態(tài)無關的模態(tài)呈現(xiàn)為設備(62)所支持的一種或多種模態(tài)(例如,視覺和/或語音)的用戶接口模塊(69)。IML處理器/分析器(68)還將來自用戶的輸入指示(例如,口頭命令)翻譯為相應的IML指示。UCRCD(62)還包括安全機制(70)(例如,DONGLE安全密鑰和相應的驗證應用)以確保只有授權的個人才能使用設備(62)進行遠程控制。
使用圖6的示例性系統(tǒng),任何兼容的UCRCD(62)經(jīng)由接口系統(tǒng)(61)都可以發(fā)現(xiàn)連接到例如房屋或建筑物環(huán)境中的X10網(wǎng)絡的X10設施,并交換要被會話式地控制的所需信息。UCRCD(62)經(jīng)由X10服務器(60)和會話式接口系統(tǒng)(61)間接地控制在永久性X10網(wǎng)絡中的X10設施。X10服務器存儲了X10網(wǎng)絡中的每個設施的注冊信息。X10設施向X10服務器(60)注冊它們所支持的命令以及其它可能的有關信息(諸如返回句柄/事件)以便在激活時返回該設施。會話式接口系統(tǒng)(61)提供了所支持命令的與模態(tài)無關、與語言無關、與地區(qū)化/國際化無關的表示。例如當用戶進入房間時,用戶的UCRCD(62)可以被打開,其中設備(62)可以通過適合的會話式協(xié)議周期地廣播握手請求(發(fā)現(xiàn))(如上面所說明的)并且當檢測到這種請求時,接口系統(tǒng)(61)可以做出應答。由此而產(chǎn)生的握手導致了UCRCD(62)的注冊和協(xié)商,其中可以同意,例如,由UCRCD(62)驅(qū)動所述會話。UCRCD(62)將修改該對話,并且獲得必要的詞匯、基類窗體(baseform)、用于對話的提示/語音效果、語法等。例如,IML頁面可以將UCRCD(62)定向到將執(zhí)行會話式引擎任務的其他引擎(例如,將執(zhí)行語音識別任務等的服務器)的地址。在被激活并從用戶處得到輸入后,根據(jù)不同的設施所支持的命令或通過其它機制,UCRCD(62)可以基于例如識別結果來確定相應的設施。
雖然此處已經(jīng)參考附圖對示例的實施例進行了說明,但是應當理解,本系統(tǒng)和方法并不限于這些精確的實施例,本領域的技術人員可以做出各種其它更改和修改而不偏離本發(fā)明的范圍或精神。所有這些更改和修改都被認為被包括在由所附的權利要求限定的本發(fā)明的范圍內(nèi)。
權利要求
1.一種用于提供與網(wǎng)絡中的實體會話式通信的方法,所述方法包括以下步驟使用客戶端設備建立與分布式網(wǎng)絡的連接;由所述客戶端設備獲得對一個或多個命令的說明,所述命令使得用戶能夠與所述分布式網(wǎng)絡中的一個或多個實體交互,其中所述命令被以與用戶語言、訪問通道、客戶端設備I/O(輸入/輸出)模態(tài)、地區(qū)設置或國際設置無關的方式說明;由所述客戶端設備接收由所述用戶提供的用戶指示作為輸入以便與目標實體通信;以及由所述客戶端設備處理所述輸入的用戶指示以確定所述目標實體并調(diào)用與該目標實體關聯(lián)的命令。
2.如權利要求1的方法,其特征在于,所述輸入的用戶指示包括用戶的口頭發(fā)音或物理移動或它們的組合。
3.如權利要求1的方法,其特征在于,所述命令包括使用基于交互的編程模型描述的交互的基本組件。
4.如權利要求1的方法,其特征在于,所述命令中的至少一個命令或全部命令是預先定義的、所述客戶端設備事先已知的基本命令的有限集合的一部分。
5.如權利要求1的方法,其特征在于,所述獲得步驟包括與所述分布式網(wǎng)絡中的服務器通信以獲得已在該服務器注冊的所述網(wǎng)絡中實體的列表以及關聯(lián)的命令。
6.如權利要求1的方法,其特征在于,還包括所述客戶端設備基于用戶首選項或設備特性或它們的組合來修改所述命令。
7.如權利要求6的方法,其特征在于,基于用戶首選項來修改所述命令包括基于用戶指定的語言來修改所述命令,或者基于用戶指示所指定的命令類型來修改所述命令,或者基于它們的組合來修改所述命令。
8.如權利要求6的方法,其特征在于,基于設備特性來修改所述命令包括基于所述客戶端設備的一個或多個I/O模態(tài)、一個或多個目標通道或者它們的組合來呈現(xiàn)用戶接口。
9.如權利要求8的方法,其特征在于,呈現(xiàn)用戶接口包括呈現(xiàn)同步的多模態(tài)接口。
10.如權利要求1的方法,其特征在于,處理所述輸入的用戶指示包括使用轉(zhuǎn)換規(guī)則將所述輸入的用戶指示轉(zhuǎn)換成相關的命令。
11.如權利要求10的方法,其特征在于,所述轉(zhuǎn)換包括使用部分地由所述用戶首選項定義的轉(zhuǎn)換規(guī)則將所述輸入的用戶指示映射成相關的命令。
12.如權利要求10的方法,其特征在于,所述轉(zhuǎn)換規(guī)則存儲在所述客戶端設備中。
13.如權利要求10的方法,其特征在于,還包括從遠程信息庫獲得所述轉(zhuǎn)換規(guī)則。
14.如權利要求10的方法,其特征在于,所述轉(zhuǎn)換規(guī)則是使用XSLT或bean實現(xiàn)的。
15.如權利要求1的方法,其特征在于,建立通信包括建立專用無線連接。
16.一種計算機可讀的程序存儲裝置,有形地體現(xiàn)可由計算機執(zhí)行的指令程序以執(zhí)行用于提供與網(wǎng)絡中的實體會話式通信的方法步驟,所述方法步驟包括使用客戶端設備建立與分布式網(wǎng)絡的連接;由所述客戶端設備獲得對一個或多個命令的說明,所述命令使得用戶能夠與所述分布式網(wǎng)絡中的一個或多個實體交互,其中所述命令被以與用戶語言、訪問通道、客戶端設備I/O(輸入/輸出)模態(tài)、地區(qū)設置或國際設置無關的方式說明;由所述客戶端設備接收由所述用戶提供的用戶指示作為輸入以便與目標實體通信;以及由所述客戶端設備處理所述輸入的用戶指示以確定所述目標實體并調(diào)用與該目標實體關聯(lián)的命令。
17.如權利要求16的程序存儲裝置,其特征在于,所述輸入的用戶指示包括用戶的口頭發(fā)音或物理移動或它們的組合。
18.如權利要求16的程序存儲裝置,其特征在于,所述命令包括使用基于交互的編程模型描述的交互的基本組件。
19.如權利要求16的程序存儲裝置,其特征在于,所述命令中的至少一個命令或全部命令是預先定義的、所述客戶端設備事先已知的基本命令的有限集合的一部分。
20.如權利要求16的程序存儲裝置,其特征在于,所述用于獲得的指令包括用于與所述分布式網(wǎng)絡中的服務器通信以獲得已在該服務器注冊的所述網(wǎng)絡中實體的列表以及關聯(lián)的命令的指令。
21.如權利要求16的程序存儲裝置,其特征在于,還包括用于所述客戶端設備基于用戶首選項或設備特性或它們的組合來修改所述命令的指令。
22.如權利要求21的程序存儲裝置,其特征在于,所述用于基于用戶首選項來修改所述命令的指令包括用于基于用戶指定的語言來修改所述命令、或者基于用戶指示所指定的命令類型來修改所述命令或者它們的組合來修改所述命令的指令。
23.如權利要求21的程序存儲裝置,其特征在于,所述用于基于設備特性來修改所述命令的指令包括用于基于所述客戶端設備的一個或多個I/O模態(tài)、一個或多個目標通道或它們的組合來呈現(xiàn)用戶接口的指令。
24.如權利要求23的程序存儲裝置,其特征在于,所述用于呈現(xiàn)用戶接口的指令包括用于呈現(xiàn)同步的多模態(tài)接口的指令。
25.如權利要求16的程序存儲裝置,其特征在于,所述用于處理所述輸入的用戶指示的指令包括用于使用轉(zhuǎn)換規(guī)則將所述輸入的用戶指示轉(zhuǎn)換成相關命令的指令。
26.如權利要求25的程序存儲裝置,其特征在于,所述用于轉(zhuǎn)換的指令包括用于使用部分地由用戶首選項定義的轉(zhuǎn)換規(guī)則將所述輸入的用戶指示映射成相關命令的指令。
27.如權利要求25的程序存儲裝置,其特征在于,所述轉(zhuǎn)換規(guī)則存儲在所述客戶端設備中。
28.如權利要求25的程序存儲裝置,其特征在于,還包括用于從遠程信息庫獲得所述轉(zhuǎn)換規(guī)則的指令。
29.如權利要求25的程序存儲裝置,其特征在于,所述轉(zhuǎn)換規(guī)則是使用XSLT或bean實現(xiàn)的。
30.如權利要求16的程序存儲裝置,其特征在于,所述用于建立通信的指令包括用于建立專用無線連接的指令。
31.一種用于提供與網(wǎng)絡中實體的會話式通信的系統(tǒng),所述系統(tǒng)包括包括一個實體的通信網(wǎng)絡,其中與該實體關聯(lián)的應用包括交互式對話,所述交互式對話是以與用戶語言、訪問通道、設備I/O(輸入/輸出)模態(tài)、地區(qū)設置或國際設置無關的方式說明的;以及用于使得用戶能夠與所述實體通信的訪問設備,其中所述訪問設備包括對話管理器,所述對話管理器基于用戶首選項和/或設備特性來修改所述交互對話。
32.如權利要求31的系統(tǒng),其特征在于,所述交互對話包括是預先定義的、基本命令的有限集合一部分的一個或多個基本命令。
33.一種用于提供與網(wǎng)絡中的實體會話式通信的方法,所述方法包括如下步驟使用客戶端設備建立與分布式網(wǎng)絡的連接;由所述客戶端設備獲得對一個或多個命令的說明,所述命令使得用戶能夠與所述分布式網(wǎng)絡中的一個或多個實體交互,其中所述命令被以與用戶語言、訪問通道、客戶端設備I/O(輸入/輸出)模態(tài)、地區(qū)設置或國際設置無關的方式說明;由所述客戶端設備接收由所述用戶提供的用戶指示作為輸入以便與目標實體通信;以及根據(jù)用戶首選項說明或所速客戶端設備特性或它們兩者來修改所述命令以調(diào)用與所述輸入的用戶指示關聯(lián)的命令。
34.如權利要求33的方法,其特征在于,所述修改由客戶機側處理執(zhí)行。
35.如權利要求33的方法,其特征在于,所述修改由服務器側處理執(zhí)行。
36.如權利要求33的方法,其特征在于,所述修改由服務器側和客戶機側處理的組合執(zhí)行。
全文摘要
用于在分布式多模態(tài)環(huán)境中提供會話式計算的系統(tǒng)和方法,特別地,用于使得用戶能夠使用便攜式訪問設備與分布式網(wǎng)絡中的實體進行會話式通信的系統(tǒng)和方法,其中以與例如用戶語言、(多個)訪問通道、訪問設備的I/O模態(tài)以及地區(qū)/國際設置無關的方式說明了用于與網(wǎng)絡中的實體通信的交互對話,并且其中用戶訪問設備和/或遠程服務器包括基于用戶語言、用戶首選項、訪問設備特性和/或地區(qū)/國際設置來修改所述交互對話的機構,從而使得用戶能夠與網(wǎng)絡中的一個或多個實體交互。
文檔編號H04L29/08GK1610346SQ20041008012
公開日2005年4月27日 申請日期2004年9月23日 優(yōu)先權日2003年10月20日
發(fā)明者G·N·拉馬斯瓦米, J·謝迪維, S·H·梅斯 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1