两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

在基于對(duì)話的電子郵件系統(tǒng)中搜索對(duì)話的制作方法

文檔序號(hào):6441199閱讀:263來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):在基于對(duì)話的電子郵件系統(tǒng)中搜索對(duì)話的制作方法
技術(shù)領(lǐng)域
本發(fā)明總體上涉及客戶機(jī)-服務(wù)器計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)領(lǐng)域,具體地,本發(fā)明涉及一種允許用戶以有效的和用戶界面友好的方式管理大量消息的系統(tǒng)與方法。
背景技術(shù)
為了工作和悠閑,每天,人們?cè)谟?jì)算機(jī)網(wǎng)絡(luò)上發(fā)送和接收數(shù)以百萬(wàn)計(jì)的電子郵件 (也寫(xiě)為“E-mail”)。在許多情況下,由于方便、容易使用以及近乎瞬間完成,電子郵件已成為人們交換信息的極為流行的通信渠道。傳統(tǒng)上,到達(dá)用戶電子郵件賬戶的電子郵件消息以時(shí)間順序由專(zhuān)用電子郵件客戶機(jī)或者在Web瀏覽器窗口中單獨(dú)地顯示,例如,最近的消息出現(xiàn)在瀏覽器窗口的頂部,而最舊的消息出現(xiàn)在瀏覽器窗口的底部。然而,普遍的現(xiàn)象是,在不同時(shí)刻,由兩個(gè)或兩個(gè)以上的人發(fā)送的多條消息可能覆蓋相同的標(biāo)題。一起查看消息,將有助于用戶按適當(dāng)?shù)纳舷挛睦斫飧鳁l消息。人們特別希望具有一種根據(jù)它們各自的主題來(lái)組織和顯示多條消息的系統(tǒng)與方法,該多條消息包括由用戶接收的消息和由用戶發(fā)送的消息。人們還特別希望涉及相同標(biāo)題的所有消息和相同對(duì)話的形成部分被直觀地顯現(xiàn),使得用戶能夠有效地標(biāo)識(shí)由具體發(fā)送者所提交的具體消息,以及使得用戶相對(duì)于對(duì)話中的其它消息,能夠在上下文中知道該對(duì)話中的這些消息。

發(fā)明內(nèi)容
在一個(gè)實(shí)施例中,一種處理消息的方法,接收導(dǎo)向用戶的多條消息,其中,每條消息具有唯一的消息標(biāo)識(shí)符。所述多條消息中的每一條消息與各自的對(duì)話相關(guān)聯(lián),其中,每一對(duì)話具有各自的對(duì)話標(biāo)識(shí)符。而且,每一對(duì)話包括一條或多條消息的集合,其共享滿足第一預(yù)先定義準(zhǔn)則的公共特征集合。按第二預(yù)先定義準(zhǔn)則所確定的次序,作為行集合,顯示對(duì)話的列表,其中,每行對(duì)應(yīng)于所列對(duì)話的一個(gè),并且至少包括發(fā)送者列表、對(duì)話標(biāo)題以及日期/ 時(shí)間值。當(dāng)用戶從所顯示的對(duì)話列表中選擇對(duì)話時(shí),就顯示對(duì)話的內(nèi)容。根據(jù)本發(fā)明的一個(gè)方面,提供一種搜索對(duì)話的方法,在具有一個(gè)或多個(gè)處理器和存儲(chǔ)由所述一個(gè)或多個(gè)處理器執(zhí)行的程序的存儲(chǔ)器的服務(wù)器執(zhí)行,該方法包括從客戶機(jī)接收搜索查詢;識(shí)別與所述搜索查詢相關(guān)的對(duì)話,所述對(duì)話具有共享滿足預(yù)先定義的準(zhǔn)則的公共特征集合的兩個(gè)或更多消息以及各自的對(duì)話標(biāo)識(shí)符,其中,識(shí)別與所述搜索查詢相關(guān)的對(duì)話包括識(shí)別作為一個(gè)整體與所述搜索查詢相關(guān)的對(duì)話;以及返回所述客戶機(jī)以便作為所述搜索查詢的搜索結(jié)果顯示對(duì)應(yīng)于所識(shí)別的對(duì)話的對(duì)話信息。
根據(jù)本發(fā)明的另一個(gè)方面,提供一種服務(wù)器系統(tǒng),包括用于從客戶機(jī)接收搜索查詢的裝置;用于識(shí)別與所述搜索查詢相關(guān)的對(duì)話的裝置,所述對(duì)話具有共享滿足預(yù)先定義的準(zhǔn)則的公共特征集合的兩個(gè)或更多消息以及各自的對(duì)話標(biāo)識(shí)符,其中,識(shí)別與所述搜索查詢相關(guān)的對(duì)話包括識(shí)別作為一個(gè)整體與所述搜索查詢相關(guān)的對(duì)話;以及用于返回所述客戶機(jī)以便作為所述搜索查詢的搜索結(jié)果顯示對(duì)應(yīng)于所識(shí)別的對(duì)話的對(duì)話信息的裝置。


為了更好地理解本發(fā)明的特性與實(shí)施例,應(yīng)結(jié)合下列附圖,參照以下各實(shí)施例的描述,其中,在所有附圖中,相同的參照數(shù)字指向相同的部分。圖I示意性地說(shuō)明了根據(jù)本發(fā)明的基于客戶機(jī)-服務(wù)器的網(wǎng)絡(luò)系統(tǒng)的一個(gè)實(shí)施例。圖2是一個(gè)總流程圖,說(shuō)明了對(duì)話助手如何生成用于顯示由對(duì)話管理系統(tǒng)提供的對(duì)話的各種表格。圖3A是一個(gè)流程圖,說(shuō)明了對(duì)話助手如何生成容納對(duì)話列表的表格。圖3B為根據(jù)本發(fā)明的一個(gè)實(shí)施例的“收件箱”范疇中的對(duì)話列表的示意性屏幕截圖(screenshot)。圖4A是一個(gè)流程圖,說(shuō)明了“更多動(dòng)作”下拉列表的操作。圖4B為用戶如何使用“更多動(dòng)作”下拉列表把對(duì)話從一個(gè)范疇移至另一個(gè)范疇的屏幕截圖。圖5A是一個(gè)流程圖,說(shuō)明了“添加標(biāo)簽”下拉列表的操作。圖5B為用戶如何使用“添加標(biāo)簽”下拉列表向?qū)υ捥砑訕?biāo)簽的屏幕截圖。圖6A是一個(gè)流程圖,描述了對(duì)話助手如何響應(yīng)對(duì)話管理系統(tǒng)的顯示指令生成對(duì)話視圖(view)。圖6B為根據(jù)本發(fā)明的一個(gè)實(shí)施例的對(duì)話視圖的屏幕截圖,其中,按壓縮模式顯示所有的消息。圖6C為根據(jù)本發(fā)明的一個(gè)實(shí)施例的對(duì)話視圖的屏幕截圖,其中,按壓縮模式顯示某些消息,并且按擴(kuò)展模式顯示某些消息。圖6D為根據(jù)本發(fā)明的一個(gè)實(shí)施例的對(duì)話視圖的屏幕截圖,其中,按擴(kuò)展模式顯示所有的消息。圖6E為根據(jù)本發(fā)明的各種實(shí)施例的其中顯示消息的對(duì)話視圖的屏幕截圖。圖7A為一個(gè)流程圖,說(shuō)明了對(duì)話助手如何生成用于顯示匹配用戶的搜索請(qǐng)求的對(duì)話的各種表格。圖7B為根據(jù)本發(fā)明的一個(gè)實(shí)施例的屏幕截圖,其包括與查詢項(xiàng)“Tahoe”相匹配的 3個(gè)對(duì)話。圖7C為根據(jù)本發(fā)明的一個(gè)實(shí)施例的、與查詢項(xiàng)相匹配或不相匹配的對(duì)話中的消息的屏幕截圖,而且其中按不同的模式對(duì)消息加以顯示。圖8為一個(gè)流程圖,說(shuō)明了對(duì)話助手如何與用戶交互,以糾正所有可能錯(cuò)拼的單詞ο圖9A為包含由用戶所編寫(xiě)的回答消息的對(duì)話的屏幕截圖。
圖19描述了對(duì)話服務(wù)器的實(shí)施例。圖9B描述了處于拼寫(xiě)檢查過(guò)程不同階段的3個(gè)獨(dú)立的瀏覽窗口的屏幕截圖。
圖10描述了對(duì)話服務(wù)器的實(shí)施例。
圖11是一個(gè)流程圖,表示了處理所接收的消息的方法。
圖12是一個(gè)流程圖,表示了把消息匹配于對(duì)話的方法。
圖13是一個(gè)流程圖,表示了把屬性賦予消息的方法。
圖14是一個(gè)流程圖,表示了把屬性賦予對(duì)話的方法。
圖15是一個(gè)流程圖,表示了用于搜索對(duì)話并且生成所標(biāo)識(shí)的對(duì)話的表示的方法。
圖16 描述了消息數(shù)據(jù)庫(kù)。
圖17描述了用戶數(shù)據(jù)庫(kù)和用于具體用戶的索引。
圖18描述了一組數(shù)據(jù)結(jié)構(gòu),用于標(biāo)識(shí)對(duì)應(yīng)于所接收消息的對(duì)話和用于確定與所接收的消息相關(guān)的屬性。
具體實(shí)施例方式本發(fā)明涉及用于組織和顯示發(fā)送于用戶以及由用戶所發(fā)送的消息的客戶機(jī)-服務(wù)器系統(tǒng)與對(duì)應(yīng)的方法。圖I示意性地說(shuō)明了客戶機(jī)-服務(wù)器系統(tǒng)的一個(gè)實(shí)施例。該系統(tǒng)包括對(duì)話管理系統(tǒng)102、通信網(wǎng)絡(luò)106以及多個(gè)客戶機(jī)104。對(duì)話包括覆蓋對(duì)話標(biāo)題的一個(gè)或多個(gè)相關(guān)的消息。如以下描述的,除對(duì)話標(biāo)題外,還可以使用附加的準(zhǔn)則判斷哪些消息為每一不同對(duì)話的一部分。消息的發(fā)送者和接收者為對(duì)話的參與者。把所有導(dǎo)向?qū)υ捁芾硐到y(tǒng)102的用戶的所有消息編組為多個(gè)對(duì)話,并且按基于對(duì)話的格式逐一或共同提交于用戶。以下,將給出有關(guān)對(duì)話管理系統(tǒng)102的實(shí)現(xiàn)的更詳細(xì)的討論??蛻魴C(jī)104包括瀏覽器108和對(duì)話助手110。瀏覽器108可以為具有用于顯示對(duì)話的瀏覽器窗口的通用Internet瀏覽器(有時(shí)也稱(chēng)為Web瀏覽器),其也可以為具有用于顯示對(duì)話的窗口的專(zhuān)用瀏覽器應(yīng)用。瀏覽器108使用超文本標(biāo)記語(yǔ)言(HTML)或任何其它適當(dāng)翻譯方法翻譯對(duì)話和對(duì)話中的消息。在用戶通過(guò)瀏覽器108向?qū)υ捁芾硐到y(tǒng)102提交了用于存取存儲(chǔ)在其個(gè)人賬戶中的消息的請(qǐng)求之后,對(duì)話管理系統(tǒng)102根據(jù)用戶的請(qǐng)求,標(biāo)識(shí)用戶的個(gè)人賬戶中的多個(gè)對(duì)話,并且將它們以及一組顯示指令傳送回客戶機(jī)104。作為響應(yīng),對(duì)話助手110生成一個(gè)或多個(gè)跟隨顯示指令的表格,每一個(gè)表格包括某些對(duì)話的信息。 然后,把表格提交于瀏覽器108,并且由瀏覽器108加以翻譯。在另一個(gè)實(shí)施例中,作為選擇,對(duì)話助手110也可以存在于對(duì)話管理系統(tǒng)102中,并且操作于對(duì)話管理系統(tǒng)102中。圖2是一個(gè)總流程圖,說(shuō)明了對(duì)話助手110如何生成用于顯示由對(duì)話管理系統(tǒng)102 提供的對(duì)話的各種表格。在步驟202,在接收了多個(gè)對(duì)話和相關(guān)的顯示指令之后,在步驟 204中,對(duì)話助手110判斷用戶是請(qǐng)求了多個(gè)對(duì)話還是請(qǐng)求了單個(gè)對(duì)話。如果用戶要求多個(gè)對(duì)話,貝1J在步驟206,對(duì)話助手110生成容納對(duì)話列表的表格,每一個(gè)對(duì)話占據(jù)表格中的一行。針對(duì)表格中的每一行,在步驟208,對(duì)話助手110還根據(jù)顯示指令生成列集合以及將加以顯示的相關(guān)的特性。以下,將結(jié)合圖3A和3B,給出如何翻譯這些列中的信息和相關(guān)的特性的更多的細(xì)節(jié)。如果用戶請(qǐng)求單個(gè)對(duì)話,則對(duì)話助手110在步驟210生成用于容納一系列與對(duì)話相關(guān)的消息的不同的表格。在步驟212中,對(duì)話助手110針對(duì)每一條跟隨對(duì)應(yīng)顯示指令的消息,生成子表格和將顯示的一組相關(guān)的特性。以下,將結(jié)合6A 6D給出對(duì)話助手如何翻譯這樣的子表格和相關(guān)特性的更多的細(xì)節(jié)。在生成了用于容納對(duì)話的列表或單個(gè)對(duì)話的表格之后,在步驟214,對(duì)話助手110 生成用于容納一組系統(tǒng)定義的范疇的表格??梢园衙恳粋€(gè)系統(tǒng)定義的范疇與O或多個(gè)對(duì)話相關(guān)聯(lián)。在一個(gè)實(shí)施例中,系統(tǒng)定義的范疇是這樣的屬性響應(yīng)用戶動(dòng)作或當(dāng)滿足預(yù)先定義的準(zhǔn)則時(shí),對(duì)話管理系統(tǒng)102選定對(duì)話。例如,當(dāng)用戶把對(duì)話標(biāo)記為刪除,但尚未采取永久性地從用戶的郵件賬戶中去除對(duì)話所需的步驟時(shí),該系統(tǒng)把“廢紙簍”屬性與該對(duì)話相關(guān)聯(lián)。更具體地講,如果需要的話,對(duì)話管理系統(tǒng)102把屬性“廢紙簍”附接于對(duì)話,并且從對(duì)話中去除現(xiàn)存的屬性,例如“收件箱”。注意,某些系統(tǒng)定義的范疇可能是互斥的。在另一個(gè)例子中,該系統(tǒng)可以自動(dòng)地把“收件箱”屬性和“未被讀取”屬性與新接收的流入消息相關(guān)聯(lián)。以下,結(jié)合圖4A和4B,給出對(duì)系統(tǒng)定義的范疇的更詳細(xì)的討論。接下來(lái),在步驟216,對(duì)話助手110生成容納一組用戶定義的標(biāo)簽的另一個(gè)表格。 圖3B描述了其中顯示了這一表格的編組框347。可以把每一個(gè)用戶定義的標(biāo)簽與O或多個(gè)對(duì)話相關(guān)聯(lián)。在一個(gè)實(shí)施例中,用戶定義的標(biāo)簽為可以將其與所指定的對(duì)話相關(guān)聯(lián)的屬性??梢酝ㄟ^(guò)特定的用戶動(dòng)作或者通過(guò)過(guò)濾器或類(lèi)似機(jī)構(gòu)的操作,確定用戶定義的標(biāo)簽賦予它們的那些對(duì)話。與系統(tǒng)定義的范疇不同,由用戶任意地定義這些標(biāo)簽,而且它們是不互斥的。換句話說(shuō),可以同時(shí)把對(duì)話與多個(gè)標(biāo)簽相關(guān)聯(lián)。例如,在用戶的個(gè)人賬戶中,可能存在兩個(gè)標(biāo)簽“購(gòu)物列表”和“感恩節(jié)”。可以由用戶,也可以由用戶所建立的過(guò)濾器把標(biāo)簽 “購(gòu)物列表”賦予與購(gòu)物相關(guān)的對(duì)話,同時(shí)可以把標(biāo)簽“感恩節(jié)”賦予有關(guān)感恩節(jié)活動(dòng)的對(duì)話,包括感恩節(jié)購(gòu)物。由于用戶定義了標(biāo)簽,所以用戶也可以刪除這一標(biāo)簽。以下,結(jié)合圖 5A和5B,給出了用戶定義的標(biāo)簽的更詳細(xì)的討論。對(duì)于編組框347,當(dāng)用戶選擇(例如,點(diǎn)擊)了編組框347中的用戶定義的標(biāo)簽時(shí),對(duì)話助手110把用于定位與該用戶選擇的標(biāo)簽相關(guān)的對(duì)話的查詢提交于對(duì)話管理系統(tǒng)。然后,執(zhí)行這一查詢,并且向用戶提交這樣的對(duì)話的列表,即如果存在這樣的對(duì)話的列表,則向用戶提交這一列表。對(duì)話管理系統(tǒng)102和對(duì)話助手110協(xié)同運(yùn)作,以允許用戶搜索用戶的郵件賬戶中的消息,并且允許以十分直觀的方式提交搜索結(jié)果。對(duì)話管理系統(tǒng)102從用戶的電子郵件賬戶抽取信息,或者處理由用戶編寫(xiě)的消息,同時(shí),對(duì)話助手110翻譯由對(duì)話管理系統(tǒng)102 所準(zhǔn)備的信息。在其它實(shí)施例中,可以使用在對(duì)話管理系統(tǒng)102和對(duì)話助手110之間的任務(wù)的不同的劃分。由于可以通過(guò)對(duì)話管理系統(tǒng)102或?qū)υ捴?10,也可以通過(guò)這兩者的協(xié)同運(yùn)作,實(shí)現(xiàn)該系統(tǒng)所執(zhí)行的許多任務(wù),所以此處有時(shí)把這兩個(gè)部件統(tǒng)稱(chēng)為“對(duì)話系統(tǒng)”。在步驟218,對(duì)話系統(tǒng)(102和/或110)可以生成用于容納由用戶所提交的一組搜索的表格,以致用戶可以重新訪問(wèn)(或者更精確地說(shuō),可以重新生成)新近的搜索結(jié)果。以下,結(jié)合圖7A 7C,給出了基于搜索的對(duì)話列表生成的更詳細(xì)的描述。另外,在步驟220,對(duì)話系統(tǒng)還可以生成用于容納由用戶新近訪問(wèn)的一組對(duì)話的表格(例如,圖3B的編組框349 中所顯示的表格)。這一特性類(lèi)似于Web瀏覽器的退回按鈕。在步驟222,對(duì)話助手110把這些表格提交于瀏覽器108用于顯示。除按圖2中所示的次序之外,還可以以多種可能的次序執(zhí)行步驟214 220。在某些實(shí)施例中,可以省略這些表格生成步驟中的某些步驟。
生成對(duì)話列表現(xiàn)在,參照?qǐng)D3A,例如,響應(yīng)用戶或客戶機(jī)對(duì)用戶的郵件賬戶的收件箱視窗的請(qǐng)求,對(duì)話管理系統(tǒng)102生成對(duì)話列表(步驟302)。如以下將更詳細(xì)加以解釋的,通過(guò)執(zhí)行對(duì)用戶的郵件賬戶的搜索,生成對(duì)話的列表。為了生成針對(duì)收件箱視窗的對(duì)話的列表,針對(duì)與“收件箱”屬性(有時(shí)將其稱(chēng)為標(biāo)簽)相關(guān)的對(duì)話,搜索用戶的郵件賬戶。然后,在步驟 304,對(duì)話管理系統(tǒng)102準(zhǔn)備有關(guān)這些對(duì)話的信息,以加以顯示,如以下將更詳細(xì)加以描述的。另外,在步驟305,對(duì)話管理系統(tǒng)還生成用戶可選擇的動(dòng)作的列表和用戶可選擇的標(biāo)簽的列表。以下結(jié)合圖4和5的討論,說(shuō)明這些用戶可選擇列表的使用。然后,在步驟306,把所得結(jié)果信息發(fā)送于對(duì)話助手,以加以翻譯。在步驟304,對(duì)話管理系統(tǒng)102反復(fù)執(zhí)行一系列步驟(從步驟306至步驟324),以生成一組字段用于對(duì)話列表中的每一對(duì)話。在某些實(shí)施例中,可以按列由對(duì)話助手110翻譯這些字段,以使得用戶能夠容易地掃描對(duì)話列表。對(duì)于每一對(duì)話和一組相關(guān)的消息,對(duì)話管理系統(tǒng)102首先在步驟307生成發(fā)送者列表。發(fā)送者列表包括多個(gè)發(fā)送者標(biāo)識(shí)符,每一個(gè)標(biāo)識(shí)符對(duì)應(yīng)于已創(chuàng)作了至少一條消息的發(fā)送者??筛鶕?jù)其教名、姓、全名、電子郵件地址、照片或唯一的圖標(biāo),或者它們的組合,來(lái)標(biāo)識(shí)發(fā)送者。在某些實(shí)施例中,如果至少兩個(gè)發(fā)送者具有相同的教名,則把每一發(fā)送者的姓的足夠的部分包含在相應(yīng)的發(fā)送者標(biāo)識(shí)符中,以互相區(qū)別發(fā)送者。例如,如果兩個(gè)發(fā)送者均具有教名Paul和第一個(gè)字母不同的姓,則可以使用Paul與姓的第一個(gè)字母的拼接(例如, PaulB和PaulK)來(lái)區(qū)別這兩個(gè)發(fā)送者。本技術(shù)領(lǐng)域的普通技術(shù)人員將會(huì)意識(shí)到標(biāo)識(shí)具有相同教名的兩個(gè)發(fā)送者的其它方式。在其它實(shí)施例中,發(fā)送者的標(biāo)識(shí)符可以基于與駐留在用戶聯(lián)系列表中的特定發(fā)送者相關(guān)的信息。在又一些其它實(shí)施例中,用戶可以針對(duì)特定的發(fā)送者,創(chuàng)建出現(xiàn)在發(fā)送者列表中的昵稱(chēng)。如果發(fā)送者已創(chuàng)作了對(duì)話中的多條消息,則在發(fā)送者列表中其標(biāo)識(shí)符依然僅出現(xiàn)一次。在一個(gè)實(shí)施例中,可以根據(jù)發(fā)送者標(biāo)識(shí)符的相應(yīng)消息到達(dá)系統(tǒng)102的到達(dá)時(shí)間,對(duì)列表中的發(fā)送者標(biāo)識(shí)符進(jìn)行排序。在另一個(gè)實(shí)施例中,根據(jù)發(fā)送者標(biāo)識(shí)符的相應(yīng)的名字,按字母順序?qū)Ρ碇械陌l(fā)送者標(biāo)識(shí)符進(jìn)行排序。接下來(lái),在步驟 308,對(duì)話管理系統(tǒng)102根據(jù)顯示指令,對(duì)發(fā)送者列表進(jìn)行格式化,以突出顯示列表中的一個(gè)或多個(gè)發(fā)送者標(biāo)識(shí)符。此處,對(duì)術(shù)語(yǔ)“突出顯示”的使用,意指按視覺(jué)上有區(qū)別的方式加以顯示,例如按粗體、加下劃線、改變背景顏色、改變字體顏色、改變字體等方式加以顯示。另外,在這一上下文中,術(shù)語(yǔ)“突出顯示”意指以有區(qū)別的方式生成用于顯示某些東西(例如, 文本的所指定的部分)的格式化信息。例如,在某些實(shí)施例中,如果用戶尚未查看他的消息或者尚未將他的消息標(biāo)記為讀取,則對(duì)發(fā)送者的名字進(jìn)行格式化,以用粗體字符加以顯示。在某些實(shí)施例中,對(duì)話助手接收對(duì)話的發(fā)送者列表和/或接收者列表中所列的一個(gè)或多個(gè)人的照片,并且具有對(duì)它們的存取權(quán)。當(dāng)用戶查看對(duì)話的列表或單一對(duì)話以及把光標(biāo)定位在發(fā)送者列表的名字或標(biāo)識(shí)符上時(shí),顯示該發(fā)送者的照片。在某些實(shí)施例中,當(dāng)查看對(duì)話時(shí),對(duì)于所列消息接收者,提供了相同的功能。對(duì)于由大型機(jī)構(gòu)使用的電子郵件系統(tǒng)來(lái)說(shuō),這一特性可能是特別有用的。在某些實(shí)施例中,如果用戶本身已創(chuàng)作了對(duì)話中的至少一條消息,則在步驟310, 對(duì)話管理系統(tǒng)102用針對(duì)用戶的、作為發(fā)送者列表中他的標(biāo)識(shí)符的唯一字符串、或圖標(biāo)、或其它輸出提示,取代發(fā)送者列表中該用戶的名字或其它標(biāo)識(shí)符。唯一字符串的一種選擇是某一特定語(yǔ)言中的自我參照標(biāo)識(shí)符。例如,英語(yǔ)中的代詞“me (我)”可用于表示發(fā)送者列表中的該用戶。因?yàn)樵S多人共享相同的教名,所以與通過(guò)發(fā)送者列表中發(fā)送者的名字標(biāo)識(shí)發(fā)送者相比,這一特性更為有用(當(dāng)然,在可選的實(shí)施例中可以這樣做)。通過(guò)唯一的標(biāo)識(shí)符表示用戶,還有助于用戶容易地標(biāo)識(shí)那些其中用戶已通過(guò)至少貢獻(xiàn)一條消息主動(dòng)參與的對(duì)話。如果許多人都已向?qū)υ捸暙I(xiàn)了消息,則發(fā)送者列表可能會(huì)變得過(guò)長(zhǎng),以致不能適應(yīng)瀏覽器窗口中有限的空間。如果通過(guò)發(fā)送者的電子郵件地址標(biāo)識(shí)發(fā)送者列表中的一個(gè)或多個(gè)發(fā)送者,則情況尤其如此。如果情況如此,則在步驟312,對(duì)話管理系統(tǒng)102根據(jù)各種信息對(duì)發(fā)送者列表中的發(fā)送者進(jìn)行優(yōu)先化處理,以標(biāo)識(shí)在瀏覽器窗口中顯示的發(fā)送者的子集。在一個(gè)實(shí)施例中,該子集至少包括對(duì)話中最后消息的發(fā)送者,而且在可行的情況下,還可以包括尚未由用戶加以查看或尚未由用戶將其標(biāo)記為讀取的消息的發(fā)送者。在另一個(gè)實(shí)施例中,該子集包括對(duì)話中第一所接收消息的發(fā)送者、對(duì)話中最后所接收消息的發(fā)送者,以及根據(jù)優(yōu)先化或打分方法所選擇的O或多個(gè)更多發(fā)送者。在某些實(shí)施例中,把較高的優(yōu)先級(jí)給予在時(shí)間上較晚到達(dá)的消息的發(fā)送者。這種類(lèi)型的優(yōu)先化往往會(huì)增加將顯示未被讀取消息的發(fā)送者的可能性。也可以使用其它類(lèi)型的優(yōu)先化方案。在某些實(shí)施例中,當(dāng)發(fā)送者列表僅標(biāo)識(shí)對(duì)話中的消息發(fā)送者的子集時(shí),發(fā)送者列表包括省略標(biāo)記..”或者其它表示發(fā)送者列表未滿的符號(hào)。在某些實(shí)施例中,在存在著一個(gè)以上的其消息尚未由用戶加以查看或尚未由用戶將其標(biāo)記為被讀取的情況下,該子集標(biāo)識(shí)為可以與可用空間所允許的發(fā)送者一樣多。在步驟314,對(duì)話管理系統(tǒng)102針對(duì)對(duì)話創(chuàng)建消息數(shù)目指示符,該消息數(shù)目指示符指示對(duì)話中消息的數(shù)目,不包括永久性刪除的或被標(biāo)識(shí)為將加以刪除的消息。消息數(shù)目指示符可以為一對(duì)括號(hào)中的數(shù)字,例如,“ (3) ”表示對(duì)話中存在3條消息。在某些實(shí)施例中,當(dāng)對(duì)話僅包括一條消息時(shí),不為該對(duì)話生成消息數(shù)目。消息數(shù)目指示符也可以為圖標(biāo)。圖標(biāo)可以為彩色編碼的,以提供額外的信息,例如,以表示對(duì)話中的多少條消息仍未被讀取(即尚未被查看或?qū)⑵錁?biāo)記為被讀取的)。接下來(lái),在步驟316,對(duì)話管理系統(tǒng)102為被處理的對(duì)話生成對(duì)話標(biāo)題。通常,對(duì)話標(biāo)題為對(duì)話中第一條消息的主題,或者如果其超過(guò)預(yù)先定義的長(zhǎng)度,則為該題目的截?cái)嗟陌姹?。在另一個(gè)實(shí)施例中,通過(guò)試探性地檢查第一條消息的內(nèi)容確定對(duì)話標(biāo)題,或者作為選擇,也可不僅僅檢查第一條消息。在一個(gè)實(shí)施例中,如果對(duì)話至少包括一條具有“未被讀取的”屬性的消息,則在瀏覽器窗口中既突出顯示消息數(shù)目標(biāo)識(shí)符,也突出顯示對(duì)話標(biāo)題,以引起用戶的注意。在另一個(gè)實(shí)施例中,僅突出顯示對(duì)話標(biāo)題,以指示一個(gè)或多個(gè)未被讀取的消息。根據(jù)已建立的電子郵件標(biāo)準(zhǔn),可以把消息發(fā)送于至少3種類(lèi)型的接收者,一個(gè)主要類(lèi)接收者,在“To: ”字段中列出了其地址;兩個(gè)次要類(lèi)接收者,在“Ce: ”字段中或者在 “Bcc:”字段中列出了它們的地址。因此,對(duì)話管理系統(tǒng)102在步驟318創(chuàng)建了針對(duì)該用戶的接收者狀態(tài)指示符,接收者狀態(tài)指示符為對(duì)話中用戶參與性的另一個(gè)指示符。在一個(gè)實(shí)施例中,使用第一有區(qū)別的指示符,例如“ > > ”,標(biāo)記其中用戶為任何消息的主接收者的對(duì)話,使用第二有區(qū)別的指示符,例如“ > ”,標(biāo)記其中用戶為至少一條消息的次接收者而且不是任何消息的主接收者的對(duì)話,以及其中未明確把用戶列為任何消息的接收者的對(duì)話(例如,因?yàn)榘严⒈话l(fā)送于編組或郵寄列表)不接收特殊標(biāo)記。在其它實(shí)施例中,可以按其它視覺(jué)上有區(qū)別的方式,例如通過(guò)突出顯示代表這些對(duì)話的一個(gè)或多個(gè)部分行,表示其中用戶為至少一條消息的主接收者的對(duì)話以及其中用戶僅為次接收者的對(duì)話。在另一個(gè)實(shí)施例中,使用第一有區(qū)別的指示符,例如“ > > ”,標(biāo)記其中用戶為至少一條消息的唯一主接收者的對(duì)話,使用第二有區(qū)別的指示符,例如“ > ”,標(biāo)記其中把至少一條消息直接發(fā)送于用戶的電子郵件地址而不是郵寄列表的對(duì)話,以及其中未明確把用戶列為任何消息的接收者的對(duì)話(例如,因?yàn)榘严⒈话l(fā)送于組或郵寄列表)不接收特殊標(biāo)記。在某些實(shí)施例中,對(duì)話管理系統(tǒng)102在步驟320創(chuàng)建對(duì)話的摘錄。這一摘錄向用戶提供了對(duì)話的內(nèi)容的預(yù)覽,而用戶不必打開(kāi)對(duì)話。在一個(gè)實(shí)施例中,根據(jù)對(duì)話中最近的消息生成摘錄。在另一個(gè)實(shí)施例中,從對(duì)話中的第一條消息(即最舊的消息)抽取摘錄。在又一個(gè)實(shí)施例中,根據(jù)預(yù)先定義的試探性規(guī)則,例如列出對(duì)話中最頻繁出現(xiàn)的一組關(guān)鍵字, 從對(duì)話中的所有消息中抽取摘錄。如果對(duì)話管理系統(tǒng)102響應(yīng)于用戶所提交的搜索而正在準(zhǔn)備對(duì)話列表,則其在步驟322創(chuàng)建摘錄,該摘錄包括與用戶所提交的查詢項(xiàng)目相匹配的突出顯示部分,在一個(gè)或多個(gè)方面,這類(lèi)似于包括諸如Google搜索引擎的搜索引擎所返回的搜索結(jié)果的摘錄。最后,在步驟324,對(duì)話管理系統(tǒng)102標(biāo)識(shí)對(duì)話的日期/時(shí)間值。這一日期/時(shí)間值通常規(guī)定了瀏覽器窗口中對(duì)話的列表的顯示次序。在某些實(shí)施例中,向?qū)υ挼牧斜碇械拿恳粚?duì)話賦予等于與用于生成該對(duì)話列表的搜索準(zhǔn)則相匹配的最新消息的日期/時(shí)間的日期/時(shí)間。例如,如果使用了用戶指定的搜索查詢(例如,“Tahoe湖”),則對(duì)于對(duì)話的列表中的每一匹配對(duì)話,所賦予的日期/時(shí)間為與用戶指定的搜索查詢相匹配的最新消息的日期/時(shí)間。在另一個(gè)例子中,如果搜索準(zhǔn)則為“收件箱”(即,具有至少一條賦予了收件箱標(biāo)簽的消息的對(duì)話),則賦予對(duì)話列表中的每一對(duì)話的日期/時(shí)間為與收件箱標(biāo)簽相關(guān)的最新消息的日期/時(shí)間。在某些實(shí)施例中,按它們的所賦予的日期/時(shí)間值的相反的時(shí)間次序列出對(duì)話列表中的對(duì)話(即,首先列出最近的對(duì)話)。如此處所使用的,“日期/時(shí)間” 值指的是與某一具體消息相關(guān)的日期值和/或時(shí)間值??梢愿鶕?jù)消息的創(chuàng)建、傳輸、接收或其它事件的日期和/或時(shí)間,把日期和/或時(shí)間與消息相關(guān)聯(lián)。在其它實(shí)施例中,可以使用其它方法或準(zhǔn)則把日期/時(shí)間賦予對(duì)話列表中的每一對(duì)話,也可以使用其它方法,根據(jù)對(duì)話的日期/時(shí)間值來(lái)排序這些對(duì)話。例如,在某些實(shí)施例中,當(dāng)使用先進(jìn)的搜索查詢工具時(shí),給予用戶對(duì)那些其日期/時(shí)間落入指定時(shí)間窗口的 (以及如果存在其它用戶指定的搜索要求就滿足這些要求的)對(duì)話進(jìn)行搜索的選項(xiàng)。根據(jù)用戶指定的目標(biāo)日期或目標(biāo)日期/時(shí)間和列表中每一對(duì)話的日期/時(shí)間之間的時(shí)間長(zhǎng)度, 列出對(duì)話的所得到的列表。因此,可以在目標(biāo)日期或日期/時(shí)間之前和之后把對(duì)話插入對(duì)話的所得到的列表中。圖3B為根據(jù)本發(fā)明的一個(gè)實(shí)施例的“收件箱”范疇中的對(duì)話列表的示意性屏幕截圖。在該屏幕截圖的左上角,有“編寫(xiě)郵件”鏈路340。用戶點(diǎn)擊這一鏈路,開(kāi)始寫(xiě)新消息。 與鏈路340相鄰,有文本框341以及“搜索郵件”按鈕342。在用戶通過(guò)文本框341提交了一個(gè)或多個(gè)查詢項(xiàng)目和接下來(lái)點(diǎn)擊“搜索郵件”按鈕342之后,系統(tǒng)生成與查詢項(xiàng)目相匹配的新顯示列表對(duì)話。在某些實(shí)施例中,由于存在相應(yīng)查詢項(xiàng)目的一個(gè)或多個(gè)同義語(yǔ),所以可能出現(xiàn)匹配。在某些實(shí)施例中,根據(jù)相應(yīng)查詢項(xiàng)目的根,可能出現(xiàn)匹配。例如,對(duì)于“book” 的搜索,可能為單詞“b00k”、“b00ks”、以及“booking”加以匹配。有關(guān)詳細(xì)的情況,請(qǐng)參照?qǐng)D7A和7B。與按鈕342相鄰的是兩個(gè)下拉列表“更多動(dòng)作”列表344和“添加標(biāo)簽”列表 345。關(guān)于這兩個(gè)下拉列表的更詳細(xì)的情況,請(qǐng)分別參照?qǐng)D4和5。在“編寫(xiě)郵件”鏈路340 的正下方,有一系列編組框,每一個(gè)框?qū)?yīng)于圖2中步驟214 220之一所生成的表格。例如,編組框346顯示系統(tǒng)定義的范疇,包括“收件箱”、“加星號(hào)的”、“發(fā)送郵件”、“草稿”、“全部郵件”、“垃圾郵件”以及“廢紙簍”等。在其它實(shí)施例中,所述系統(tǒng)定義的范疇集合可以不同,其包括這些范疇和/或附加范疇的子集。在某些實(shí)施例中,“加星號(hào)的”范疇包括其中用戶計(jì)劃主動(dòng)涉及(例如,通過(guò)向其它參與者發(fā)送消息)的對(duì)話,這類(lèi)似于“To Do”列表。因此,在一個(gè)實(shí)施例中,可以使用星號(hào)標(biāo)志消息,使得用戶可以例如搜索加星號(hào)的消息。在一個(gè)實(shí)施例中,“全部郵件”范疇包括未處于“垃圾郵件”或“廢紙簍”范疇中的所有對(duì)話。注意,由于當(dāng)前的屏幕截圖僅顯示了屬于“收件箱”范疇的對(duì)話,所以突出顯示了編組框346 中的對(duì)應(yīng)鏈路。圖3B中的示意性的屏幕截圖的主要區(qū)域是包括對(duì)話的列表360的表格,每一個(gè)對(duì)話占據(jù)該表格中的一行。每一行還包括檢查框362、發(fā)送者列表364、接收者狀態(tài)指示符 366、對(duì)話標(biāo)題和摘錄368以及日期/時(shí)間值369。在其它實(shí)施例中,針對(duì)每一對(duì)話行的字段的集合可以不同,包括這些字段和/或附加字段的子集。在某些實(shí)施例中,當(dāng)顯示對(duì)話的列表時(shí),所有行具有統(tǒng)一的高度。在其它實(shí)施例中,高度可為可變的,以接納不同的摘錄長(zhǎng)度。如果用戶決定把對(duì)應(yīng)的對(duì)話從一個(gè)系統(tǒng)定義的范疇(例如,“收件箱”)移至另一個(gè)系統(tǒng)定義的范疇(例如,“廢紙簍”),或者如果用戶決定向?qū)?yīng)的對(duì)話附接用戶定義的標(biāo)簽, 則由用戶檢查檢查框362。以上已經(jīng)結(jié)合圖3A給出了所述表格中的其它列或字段的定義。 注意,在第一對(duì)話中存在兩條消息,并且已在第一行中突出顯示了發(fā)送者S2,這意味著還尚未讀取S2所發(fā)送的消息或者尚未將其標(biāo)記為被讀取的。相比之下,第二對(duì)話包括全部已被讀取或已被標(biāo)記為被讀取的4條消息,因此,在第二行中沒(méi)有突出顯示任何東西。在某些實(shí)施例中,提供了用于加星號(hào)狀態(tài)的視覺(jué)指示符。如果對(duì)話中的任何消息具有加星號(hào)的狀態(tài), 則“收件箱”將提供指示對(duì)話至少包含一條加星號(hào)的消息的視覺(jué)指示符。在一個(gè)實(shí)施例中,盡管尚未描述,但圖3B所代表的瀏覽器窗口還包括持續(xù)顯不的消息編寫(xiě)區(qū)域、相關(guān)尋址和主題字段、以及通常與允許編寫(xiě)和發(fā)送消息的表格相關(guān)聯(lián)的其它選項(xiàng)和字段。例如,把這樣的區(qū)域顯示在對(duì)話的列表360之下。因此,在一個(gè)實(shí)施例中, 在單一用戶接口(例如,瀏覽器窗口)中,用戶可具有查看對(duì)話列表的選項(xiàng),并且還可編寫(xiě)新消息,而無(wú)需要求打開(kāi)新窗口(例如,消息編寫(xiě)窗口),并且無(wú)需從當(dāng)前瀏覽器窗口去除對(duì)話的列表。圖4A是一個(gè)流程圖,說(shuō)明了“更多動(dòng)作”下拉列表344的操作。在用戶點(diǎn)擊了該下拉列表之后,在步驟402,瀏覽器顯示系統(tǒng)定義動(dòng)作的列表。在步驟404,用戶在下拉列表中選擇具體的動(dòng)作以及對(duì)話列表中的至少一個(gè)對(duì)話。然后,在步驟406,瀏覽器把用戶選擇的對(duì)話與用戶選擇的動(dòng)作相關(guān)聯(lián),并且在步驟408把它們返回于對(duì)話管理系統(tǒng),以進(jìn)一步加以處理。在步驟410,如果用戶選擇的動(dòng)作導(dǎo)致用戶選擇的對(duì)話從先前所顯示的對(duì)話列表中被去除,則對(duì)話助手從對(duì)話管理系統(tǒng)接收新的對(duì)話的列表,而且對(duì)話助手在瀏覽器中顯示對(duì)話的新列表。參照?qǐng)D4B,圖4B描述了當(dāng)用戶檢查第二對(duì)話的檢查框413、點(diǎn)擊了“更多動(dòng)作”下拉列表、以及選擇了項(xiàng)目“垃圾郵件”415時(shí)所產(chǎn)生的從圖3B的示意性屏幕截圖的變化。結(jié)果,將從“收件箱”范疇去除第二對(duì)話,而且“垃圾郵件”范疇將具有新的成員。注意,下拉列表中的某些動(dòng)作,例如“忽視”和“瞌睡”不具有對(duì)應(yīng)的范疇?!昂鲆暋焙汀邦本鶎?duì)應(yīng)于 “全部郵件”范疇。具體地講,當(dāng)用戶檢查對(duì)話的檢查框,然后點(diǎn)擊“忽視”項(xiàng)目時(shí),將把對(duì)話傳送至“全部郵件”范疇。如果與“忽視”對(duì)話相關(guān)的任何新的消息到達(dá),則系統(tǒng)仍把這一新的消息與該對(duì)話相關(guān)聯(lián),但并不自動(dòng)地把該對(duì)話帶回用戶的注意范圍。然而,用戶可以停止對(duì)對(duì)話的忽視,并且可通過(guò)訪問(wèn)“全部郵件”范疇、檢查所忽視的對(duì)話的檢查框、然后選擇相應(yīng)“更多動(dòng)作”下拉列表中的“收件箱”項(xiàng)目,將其帶回到“收件箱”范疇。如這一例子所示,不同范疇的下拉列表可以具有不同的動(dòng)作項(xiàng)目集合?!邦眲?dòng)作項(xiàng)目允許用戶通過(guò)設(shè)置觸發(fā)條件暫時(shí)忽視對(duì)話,所述觸發(fā)條件可以為時(shí)間驅(qū)動(dòng)的,例如,對(duì)話應(yīng)該從“收件箱” 范疇消失一段時(shí)間(例如,一小時(shí)、一天、一星期等),然后自動(dòng)地返回,或者由事件驅(qū)動(dòng),例如,對(duì)話不應(yīng)返回到“收件箱”范疇,直至未檢查的消息的數(shù)目已達(dá)到預(yù)先確定的極限、或者特定的人已向?qū)υ捸暙I(xiàn)了消息、接收到把用戶指定為主接收者的消息、或者所接收的消息包含特定的單詞或短語(yǔ)。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到也可以使用的其它觸發(fā)條件。范疇化對(duì)話圖5A是一個(gè)流程圖,說(shuō)明了“添加標(biāo)簽”下拉列表345的操作。在用戶點(diǎn)擊了該下拉列表之后,在步驟502,瀏覽器顯示用戶定義標(biāo)簽的列表,以供該用戶加以選擇。在步驟 504,用戶選擇下拉列表中的具體標(biāo)簽和對(duì)話列表中的至少一個(gè)對(duì)話。然后,在步驟506,瀏覽器把用戶選擇的對(duì)話與用戶選擇的標(biāo)簽相關(guān)聯(lián),并且在步驟508把它們發(fā)送回對(duì)話管理系統(tǒng),以進(jìn)一步地加以處理。結(jié)果,與用戶選擇的標(biāo)簽相關(guān)的對(duì)話的列表將包括與步驟506 中的那一標(biāo)簽相關(guān)的對(duì)話。如以下更詳細(xì)描述的,當(dāng)把標(biāo)簽或?qū)傩耘c對(duì)話相關(guān)聯(lián)時(shí),把一個(gè)或多個(gè)條目添加于索引1710(圖17,18),以使載有該標(biāo)簽的對(duì)話的搜索能夠得以定位。在某些實(shí)施例中,也把該標(biāo)簽或?qū)傩蕴砑佑趯?duì)話數(shù)據(jù)庫(kù)1808中的一個(gè)或多個(gè)條目(圖18)。 在某些實(shí)施例中,當(dāng)用戶查看對(duì)話時(shí),顯示與該對(duì)話相關(guān)的標(biāo)簽。在某些實(shí)施例中,在針對(duì)列表中每一對(duì)話所提供的信息行中顯示與對(duì)話的列表中的每一對(duì)話相關(guān)的標(biāo)簽。圖5B是一個(gè)示意性的屏幕截圖,描述了當(dāng)用戶檢查第二對(duì)話的檢查框512、然后點(diǎn)擊“添加標(biāo)簽”下拉列表、并且選擇了項(xiàng)目“標(biāo)簽2”514時(shí)所產(chǎn)生的瀏覽器窗口。(注意, “標(biāo)簽2”代表了用戶指定的標(biāo)簽名)。這將導(dǎo)致把“標(biāo)簽2”與所檢查的對(duì)話相關(guān)聯(lián)。因此,可以把所檢查的對(duì)話包括在響應(yīng)于對(duì)與“標(biāo)簽2”相關(guān)的消息的查詢所產(chǎn)生的搜索結(jié)果中。在某些實(shí)施例中,把與對(duì)話的列表中的每一對(duì)話相關(guān)的標(biāo)簽顯示在表格的對(duì)應(yīng)的行中, 于是,“標(biāo)簽2”將會(huì)被顯示在對(duì)應(yīng)于步驟506中與“標(biāo)簽2”相關(guān)的對(duì)話的行中。當(dāng)然,本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到,用戶可以輸入定制化的標(biāo)簽名和/或系統(tǒng)可以提供預(yù)先定義的標(biāo)簽。查看對(duì)話圖6A是一個(gè)流程圖,描述了對(duì)話助手如何響應(yīng)對(duì)話管理系統(tǒng)的顯示指令生成對(duì)話視圖。在某些實(shí)施例中,在把對(duì)話信息發(fā)送于客戶機(jī)中的對(duì)話助手之前,由對(duì)話管理系統(tǒng)執(zhí)行圖6A中所示的某些動(dòng)作,例如,用于對(duì)要顯示的對(duì)話信息進(jìn)行格式化的動(dòng)作。在步驟602,對(duì)話助手首先接收一系列屬于具體對(duì)話的消息,以及一組相關(guān)的顯示指令。在步驟604,對(duì)話助手標(biāo)識(shí)對(duì)話的標(biāo)題,以及與對(duì)話相關(guān)的任何系統(tǒng)定義的范疇和用戶定義的標(biāo)簽。根據(jù)這些范疇和標(biāo)簽,對(duì)話分別生成用戶可選擇的動(dòng)作的列表和用戶可選擇的標(biāo)簽的列表。這兩個(gè)列表類(lèi)似于圖3B中所不的兩個(gè)下拉列表344和345。在一個(gè)實(shí)施例中,用戶可選擇的動(dòng)作的列表僅包括適用于具體對(duì)話(即,將要顯示的對(duì)話)的動(dòng)作。因此,不能再次把已經(jīng)處于“廢紙簍”范疇的對(duì)話與“廢紙簍”范疇相關(guān)聯(lián)。出于同樣的原因, 用戶可選擇的標(biāo)簽的列表僅包括尚未與具體對(duì)話相關(guān)聯(lián)的標(biāo)簽。從步驟608開(kāi)始,對(duì)話助手為對(duì)話中的各條消息分別生成子表格,該子表格至少包括詳細(xì)消息報(bào)頭和消息體。如此處所使用的,消息體指的是用戶所創(chuàng)建的消息,包括主題參照,不包括通過(guò)消息處理軟件添加于消息的任何系統(tǒng)信息。每一個(gè)詳細(xì)消息報(bào)頭包括發(fā)送者的名字和/或地址以及所有主與次接收者、消息的主題、一組消息級(jí)的動(dòng)作、以及日期 /時(shí)間值。消息級(jí)的動(dòng)作之一包括按消息的原始格式查看消息的選項(xiàng),其包括路由信息以及其它消息系統(tǒng)提供的信息,例如“我的版本”、“內(nèi)容類(lèi)型”等。在步驟610,對(duì)話助手還根據(jù)詳細(xì)消息報(bào)頭創(chuàng)建簡(jiǎn)要消息報(bào)頭。簡(jiǎn)要消息報(bào)頭包括發(fā)送者和接收者的標(biāo)識(shí)符。在某些實(shí)施例中,把接收者從簡(jiǎn)要消息報(bào)頭中排除。如果用戶處于接收者列表中,則在步驟610, 對(duì)話助手把唯一的字符串或圖標(biāo)用作用戶的標(biāo)識(shí)符,這類(lèi)似于發(fā)送者列表中的用戶的標(biāo)識(shí)符。例如,可以把英語(yǔ)中的代詞“me(我)”用于表示簡(jiǎn)要消息報(bào)頭中的用戶。如果消息為標(biāo)識(shí)這一對(duì)話中的具體接收者的第一條消息(即,消息報(bào)頭的主或次接收者字段中的),則對(duì)話助手將在步驟614在簡(jiǎn)要消息報(bào)頭中突出顯示接收者的標(biāo)識(shí)符。另一方面,在某些實(shí)施例中,當(dāng)不再包括先前包括在接收者的列表中的接收者時(shí),對(duì)話助手將按視覺(jué)上有區(qū)別的方式,例如按“疊影”字體,顯示該接收者的標(biāo)識(shí)符。在其它實(shí)施例中,簡(jiǎn)要消息報(bào)頭包括發(fā)送者標(biāo)識(shí)符、消息部分、以及消息的日期/時(shí)間表示。接下來(lái),在步驟616,對(duì)話代理決定如何顯示子表格。如果與子表格相關(guān)的消息尚未由用戶加以查看或尚未由用戶將其標(biāo)記為被讀取的,則在步驟618按擴(kuò)展的模式顯示子表格,即,既顯示簡(jiǎn)要消息報(bào)頭,也顯示完整的消息體。如果消息已被查看或?qū)⑵錁?biāo)記為被讀取的,則在步驟620,以壓縮的模式默認(rèn)地顯示子表格,僅包括簡(jiǎn)要消息報(bào)頭和消息體的一部分(例如,消息的前幾行)。接下來(lái),用戶可以通過(guò)點(diǎn)擊所壓縮的子表格來(lái)對(duì)其加以擴(kuò)展。相類(lèi)似,子表格不描述詳細(xì)消息報(bào)頭,但包括供用戶選擇的選項(xiàng),即如果用戶希望查看詳細(xì)消息報(bào)頭,則在步驟622選擇這一選項(xiàng)。最后,在步驟624,對(duì)話助手在子表格的底部創(chuàng)建一組回答選項(xiàng),例如“回答”、“回答所有人”以及“轉(zhuǎn)發(fā)”。在某些實(shí)施例中,針對(duì)對(duì)話中的每一消息執(zhí)行以上所描述的動(dòng)作的子集。在某些實(shí)施例中,執(zhí)行一個(gè)或多個(gè)附加的格式化動(dòng)作。圖6B為根據(jù)本發(fā)明的一個(gè)實(shí)施例的圖3B中的第二對(duì)話的示意性屏幕截圖。這一屏幕截圖的頂部和左部與圖3B的頂部和左部相同。但對(duì)話的列表360已由消息的列表640 取代。在消息的列表的頂部,是對(duì)話的標(biāo)題“標(biāo)題2” 630、與對(duì)話相關(guān)的所有用戶定義的標(biāo)簽632、以及“擴(kuò)展所有消息”按鈕634。由于用戶已經(jīng)查看了這4條消息,并且把它們標(biāo)記為被讀取的,所以按壓縮的模式顯示列表中的頭3條消息,并且按擴(kuò)展的模式顯示最后(和最新)的消息。在某些實(shí)施例中,當(dāng)不存在未被讀取的消息(即,尚未由用戶加以查看或尚未由用戶將它們標(biāo)記為被讀取的)時(shí),也可以按擴(kuò)展的模式顯示已經(jīng)被標(biāo)記為加星號(hào)的對(duì)話中的消息。這提供了把對(duì)話中的所有消息聚集在一起的視覺(jué)效果。每一個(gè)壓縮的子表格顯示簡(jiǎn)要消息報(bào)頭641和諸如消息體的前幾個(gè)單詞的摘錄643。在某些實(shí)施例中,以彩色標(biāo)
12識(shí)簡(jiǎn)要消息報(bào)頭中的發(fā)送者,使得可以按不同的顏色提交每一發(fā)送者的文本表示。這有助于在所顯示的對(duì)話中對(duì)發(fā)送者加以區(qū)別。在某些實(shí)施例中,由系統(tǒng)生成顏色,直到系統(tǒng)用盡了與發(fā)送者相關(guān)的顏色為止。在某些實(shí)施例中,把顏色與每一對(duì)話相關(guān)聯(lián),以致同一發(fā)送者可以具有與其相關(guān)的不同的顏色,其取決于所顯示的對(duì)話。注意,在簡(jiǎn)要消息報(bào)頭641中突出顯示了所有的接收者,因?yàn)檫@是對(duì)話的第一條消息。相比之下,僅在第二壓縮的子表格中僅僅突出顯示一個(gè)標(biāo)識(shí)符“SI”,因?yàn)檫@是其中SI為對(duì)話中的參與者的第一條消息。擴(kuò)展的子表格包括完整的消息體645、當(dāng)選擇時(shí)將導(dǎo)致詳細(xì)消息報(bào)頭得以顯示的“更多選項(xiàng)”鏈路647、以及回答選項(xiàng)649的列表。由于S4發(fā)送了最后的消息,所以回答選項(xiàng)之一為“回答 S4”,其提醒用戶將對(duì)S4進(jìn)行回答。在某些實(shí)施例中,當(dāng)對(duì)話中的消息的數(shù)目超過(guò)閾值(例如,8或10條消息),以及將按壓縮的子表格顯示該對(duì)話中的多條連續(xù)的消息(例如,從對(duì)話的收件箱列表所選擇的對(duì)話中標(biāo)記為被讀取的消息)時(shí),按不包括文本的第二壓縮的子表格顯示這些消息,從而無(wú)發(fā)送者列表,而且無(wú)摘錄。取而代之,第二壓縮的子表格以小線條表示這些消息中的每一消息。視覺(jué)效果是,這些子表格就像疊卡片中的卡片的邊緣一樣加以顯現(xiàn)。在某些實(shí)施例中,永遠(yuǎn)不按第二壓縮的子表格顯示對(duì)話中的第一和最后的消息,而且更一般地,也不按第二壓縮的子表格表示某些消息,例如那些具有“加星號(hào)”標(biāo)簽的消息。第二壓縮的子表格的使用有助于對(duì)具有大量消息的對(duì)話的查看。該方法可用于表示與用戶指定的搜索查詢相匹配的對(duì)話中的消息,其中對(duì)話具有大于閾值數(shù)目的消息。在這一情況下,由第二壓縮的子表格所表示的消息為不與搜索查詢相匹配的連續(xù)消息組。圖6C是類(lèi)似于圖6B中所示意性屏幕截圖的示意性屏幕截圖,所不同的是(I)在用戶點(diǎn)擊了第一子表格650之后,按擴(kuò)展模式顯不該子表格,(2)最后子表格包括詳細(xì)消息報(bào)頭660,以及(3)在用戶點(diǎn)擊了“回答S4”鏈路之后,把消息回答表格670附接于最后子表格。在一個(gè)實(shí)施例中,當(dāng)用戶正在查看對(duì)話的內(nèi)容時(shí),可以持續(xù)地顯示用于對(duì)某一消息(例如,最后消息)進(jìn)行回答的文本框,即與該消息相關(guān)聯(lián)地顯示這一文本框。換句話說(shuō),顯示消息回答表格670,而且與其相關(guān)的回答文本框可為用戶加以存取,而不要求用戶點(diǎn)擊“回答S4”鏈路。在其它實(shí)施例中,可以針對(duì)對(duì)話中的所有消息,或者針對(duì)所有按擴(kuò)展模式所顯示的消息,持久地顯示消息回答表格。在結(jié)構(gòu)上,第一擴(kuò)展的子表格650與圖6B中所示的最后子表格相同。其包括簡(jiǎn)要消息報(bào)頭、“更多選項(xiàng)”鏈路、消息體以及一組處于子表格底部的回答選項(xiàng)。除了消息發(fā)送者和接收者的電子郵件地址或其它標(biāo)識(shí)符之外,詳細(xì)消息報(bào)頭660還包括用戶可以采取的動(dòng)作的列表。例如,“把這一消息放入廢紙簍”動(dòng)作661允許用戶把消息從對(duì)話中去除。作為默認(rèn)形式,消息回答表格670僅把S4的地址包括在“至”字段中,因?yàn)橛脩粽趯?duì)其進(jìn)行回答的消息的發(fā)送者為S4。然而,如果用戶希望把回答消息發(fā)送給更多的接收者,則消息回答表格還向用戶提供附加的選項(xiàng)(例如,“添加Ce”,“添加Bcc”)。消息回答表格670還允許用戶編輯原始消息的主題和把文檔附接于回答消息。圖6D為用戶點(diǎn)擊了 “擴(kuò)展全部消息”按鈕634之后圖6B中所示對(duì)話的示意性的屏幕截圖。結(jié)果,按擴(kuò)展模式顯示所有4條消息608。注意,按鈕634中的文本改變?yōu)椤皦嚎s全部消息”。在用戶再次點(diǎn)擊了按鈕634之后,對(duì)話的顯示返回到圖6B中所示的格式。圖6E是說(shuō)明了先前所描述的某些特性的對(duì)話的示意性的屏幕截圖。具體地講,圖6E說(shuō)明了在682處當(dāng)對(duì)話中消息的數(shù)目超過(guò)了閾值時(shí)所使用的第二壓縮子表格的例子。盡管用戶不能夠看到這些消息的任何報(bào)頭信息,但用戶仍可以看到在該第二壓縮的子表格中有多少條消息。在某些實(shí)施例中,在描述了如簡(jiǎn)要消息報(bào)頭684和686中所說(shuō)明的簡(jiǎn)要消息報(bào)頭的壓縮子表格中,描述了第二壓縮子表格中的消息的兩端上的消息。在某些實(shí)施例中,以及如圖6E中所示,簡(jiǎn)要消息報(bào)頭包括發(fā)送者、消息部分、以及消息的日期/時(shí)間值,而未描述消息的其它接收者。可以在消息688處看到“加星號(hào)”的特性的例子。消息688中的星號(hào)不同于其它消息在于其星號(hào)被填寫(xiě)了,其表示這一消息具有加星號(hào)的狀態(tài),而其它消息不具有這樣的狀態(tài)。當(dāng)然,可以使用任何提供了有區(qū)別的狀態(tài)的視覺(jué)指示符,而且這一概念不局限于“星號(hào)”,以及是否“填寫(xiě)”了星號(hào)。如以上所描述的,在一個(gè)實(shí)施例中,當(dāng)顯示了對(duì)話,而且不存在未被讀取的消息(如圖6E中所示)時(shí),按擴(kuò)展模式顯示具有加星號(hào)狀態(tài)的消息。在另一個(gè)實(shí)施例中,如果存在尚未被讀取的或尚未被查看的消息,則將按壓縮的子表格但不是按第二壓縮的子表格顯示加星號(hào)的消息688,例如682處的那些消息。其它實(shí)施例預(yù)計(jì)了不同的排列,例如總是按擴(kuò)展模式看到加星號(hào)的消息,而不管是否存在任何尚未被讀取或尚未被查看的消息。使用查詢定位、列表以及顯示對(duì)話如以上所提到的,用戶可以搜索與用戶指定的查詢相匹配的對(duì)話。對(duì)話管理系統(tǒng) 102和對(duì)話助手110協(xié)同運(yùn)作,以生成對(duì)應(yīng)于查詢的搜索結(jié)果,并且按十分直觀的方式把結(jié)果提交于用戶。圖7A是一個(gè)流程圖,說(shuō)明了對(duì)話助手110如何生成用于顯示與用戶的搜索請(qǐng)求相匹配的對(duì)話的各種表格。在某些實(shí)施例中,在向客戶機(jī)中的對(duì)話助手發(fā)送對(duì)話信息之前,由對(duì)話管理系統(tǒng)執(zhí)行圖7A中所示的某些動(dòng)作,例如用于對(duì)將要顯示的對(duì)話信息進(jìn)行格式化的動(dòng)作。在步驟702,對(duì)話助手110從對(duì)話管理系統(tǒng)102接收代表多個(gè)與搜索查詢(其可以包括一個(gè)或多個(gè)查詢項(xiàng)目)相匹配的對(duì)話的信息以及相關(guān)的顯示指令。在步驟704,對(duì)話助手110生成用于容納對(duì)話列表的表格,每一個(gè)對(duì)話占據(jù)該表格中的一行。對(duì)于該表格中的每一行,在步驟706,對(duì)話助手110還生成包含匹配查詢項(xiàng)目的摘錄。在某些實(shí)施例中,對(duì)話助手110還突出顯示與搜索查詢中任何查詢項(xiàng)目相匹配的摘錄項(xiàng)目。在步驟710,顯示對(duì)話的列表。圖7B為根據(jù)這些步驟所產(chǎn)生的對(duì)話的列表的示意性屏幕截圖。在某些實(shí)施例中, 用戶可以指定致使摘錄的生成和/或顯示受到抑制的用戶偏好。在某些實(shí)施例中,當(dāng)把與搜索查詢相匹配的文本放置在消息的報(bào)頭或其它信息中時(shí),所提供的摘錄為消息的第一部分。在某些實(shí)施例中,如果用戶選擇(例如點(diǎn)擊)了代表對(duì)話列表中的對(duì)話的行(例如,圖7B中所示的對(duì)話列表中的行)(步驟712),則在步驟714,對(duì)話助手110顯示所選擇的對(duì)話。為了做到這一點(diǎn),對(duì)話助手生成一系列容納一系列與所選擇對(duì)話相關(guān)的消息的子表格。具體地講,如果從響應(yīng)于用戶指定的搜索查詢所產(chǎn)生的對(duì)話列表中選擇了所選擇的對(duì)話,則按壓縮模式顯示那些其相關(guān)的消息不包含搜索查詢中任何查詢項(xiàng)目的子表格,而按擴(kuò)展模式顯示那些其相關(guān)消息至少包括一個(gè)查詢項(xiàng)目的子表格。對(duì)話助手110還突出顯示消息體中的匹配查詢項(xiàng)目。與指定查詢相匹配的所選擇對(duì)話的顯示例子被描述為圖7C 中的示意性屏幕截圖。如果從對(duì)話的范疇列表,例如從對(duì)話的收件箱列表選擇了所選擇對(duì)話,則消息的最初的顯示如以上針對(duì)圖6C所描述的。
圖7B是一個(gè)列出了 3個(gè)與查詢項(xiàng)目“Tahoe”720相匹配的對(duì)話730的瀏覽器窗口的示意性的屏幕截圖。在3個(gè)對(duì)話730之上,是“搜索選項(xiàng)”鏈路732。用戶可以點(diǎn)擊該鏈路,以修改那些用于進(jìn)行搜索的選項(xiàng)。例如,用戶可以指定是把搜索限制于一個(gè)范疇中的對(duì)話,還是限制于所有的范疇中的對(duì)話。當(dāng)所列對(duì)話屬于兩個(gè)或兩個(gè)以上不同的范疇時(shí),不突出顯示編組框346中的任何一個(gè)范疇。在每一匹配的對(duì)話中,標(biāo)識(shí)了包含項(xiàng)目“Tahoe”的摘錄,并且以突出顯示了單詞“Tahoe”的方式顯示這一摘錄。這些摘錄指出3個(gè)對(duì)話覆蓋了 3個(gè)不同的標(biāo)題,即第一個(gè)對(duì)話涉及到Tahoe湖的滑雪旅行,第二個(gè)對(duì)話涉及Tahoe模型 SUV,而第三個(gè)對(duì)話涉及Tahoe國(guó)家森林公園的野營(yíng)地點(diǎn)。因此,用戶可以使用摘錄中的信息以決定其希望打開(kāi)哪一具體的對(duì)話。圖7C是一個(gè)示意性的屏幕截圖,該屏幕截圖顯示了在用戶對(duì)其進(jìn)行點(diǎn)擊之后第三個(gè)對(duì)話中的所有消息。注意,在這一屏幕截圖中(在編組框346中)已經(jīng)突出顯示了“全部郵件”范疇,表明當(dāng)前把第三個(gè)對(duì)話定位在“全部郵件”范疇中。由于第二條消息包括查詢項(xiàng)目“Tahoe”,所以按擴(kuò)展模式顯示第二子表格,具有突出顯示了的單詞“Tahoe”。拼寫(xiě)檢查圖8為一個(gè)流程圖,說(shuō)明了對(duì)話助手如何與用戶交互,以糾正用戶所編寫(xiě)的消息中可能錯(cuò)拼的單詞。在編寫(xiě)了消息之后和在將其向外發(fā)送之前,用戶可以點(diǎn)擊“更多動(dòng)作” 下拉列表,并且選擇“拼寫(xiě)檢查”項(xiàng)目。注意,圖4B中沒(méi)有顯示這一項(xiàng)目,因?yàn)槠渲邢吕斜韮H包括對(duì)話級(jí)動(dòng)作?!捌磳?xiě)檢查”為僅當(dāng)正在使用一個(gè)消息編寫(xiě)表格時(shí)才顯示在下拉動(dòng)作列表中的消息級(jí)動(dòng)作。響應(yīng)于“拼寫(xiě)檢查”動(dòng)作的用戶選擇,對(duì)話助手把所編寫(xiě)的消息發(fā)送于對(duì)話管理系統(tǒng),然后在步驟802接收所編寫(xiě)消息的經(jīng)過(guò)拼寫(xiě)檢查的拷貝以及顯示指令。在可選的實(shí)施例中,通過(guò)對(duì)話助手或者通過(guò)使用局部字典的局部客戶機(jī)應(yīng)用,執(zhí)行此處所描述的與拼寫(xiě)檢查器相關(guān)的對(duì)話管理系統(tǒng)所執(zhí)行的動(dòng)作。根據(jù)顯示指令,對(duì)話助手在步驟804 突出顯示消息中每一可能錯(cuò)拼的單詞,在步驟806,把每一突出顯示的單詞與系統(tǒng)生成的候選單詞的列表相關(guān)聯(lián),并且在步驟808,在獨(dú)立的瀏覽窗口中顯示重新格式化的消息。當(dāng)用戶選擇了瀏覽窗口中的具體突出顯示的單詞時(shí),對(duì)話助手在拼寫(xiě)糾正窗口中確定用戶選擇的單詞的位置,并且在步驟810,在該窗口附近附接候選替換項(xiàng)目的列表(應(yīng)該加以注意的是,替換項(xiàng)目可以包括一個(gè)或多個(gè)單詞)。然后,對(duì)話助手在步驟812使用候選列表中用戶指定的替換項(xiàng)目,修改拼寫(xiě)糾正窗口中的錯(cuò)拼的單詞。對(duì)話助手還可以在步驟814在用戶指定的方向擴(kuò)展拼寫(xiě)糾正窗口,以致用戶可以在步驟816修正拼寫(xiě)糾正窗口中的一個(gè)以上的單詞。圖9A為一個(gè)屏幕截圖,說(shuō)明了與圖6C中所示的對(duì)話相同的對(duì)話,所不同的是用戶已經(jīng)編寫(xiě)了針對(duì)S4的回答消息817。在發(fā)送該消息之前,用戶決定進(jìn)行拼寫(xiě)檢查。因此, 用戶點(diǎn)擊了“更多動(dòng)作”下拉列表,然后選擇了“拼寫(xiě)檢查”項(xiàng)目818。作為響應(yīng),對(duì)話助手把所編寫(xiě)的消息發(fā)送于對(duì)話管理系統(tǒng),然后把拼寫(xiě)檢查結(jié)果顯示在獨(dú)立瀏覽窗口中。在某些實(shí)施例中,把拼寫(xiě)檢查結(jié)果顯示在與其中用戶正在編寫(xiě)消息的窗口相同的窗口中。實(shí)際上,顯示大體保持相同,所不同的是某些與拼寫(xiě)檢查器相關(guān)的特性的切換(toggling),以及可能錯(cuò)拼單詞的突出顯示。這一實(shí)施例增添了這樣的好處當(dāng)編寫(xiě)消息時(shí),用戶可以在向用戶提供的等效的視覺(jué)上下文中執(zhí)行拼寫(xiě)檢查,而不是向用戶提交不具有這種上下文的獨(dú)立的新窗口。
圖9B描述了包括處于拼寫(xiě)檢查過(guò)程不同階段的3個(gè)獨(dú)立的瀏覽窗口的屏幕截圖。第一窗口 820包括消息的經(jīng)過(guò)拼寫(xiě)檢查的拷貝。具體地講,已經(jīng)在該窗口中突出顯示了 3個(gè)可能錯(cuò)拼的單詞821、823以及825。在用戶點(diǎn)擊了第二單詞823之后,接下來(lái)把單詞“delying”并入一個(gè)如第二瀏覽窗口 830中所示的拼寫(xiě)糾正窗口 832。另外,在拼寫(xiě)糾正窗口之下或者與拼寫(xiě)糾正窗口相鄰地顯示由系統(tǒng)所生成的候選單詞的列表834。然后, 用戶選擇第三替換項(xiàng)目“delaying”,以取代錯(cuò)拼的項(xiàng)目“delying”。如果用戶希望在所糾正的單詞“delaying”之前添加單詞“temporarily”,則用戶可以點(diǎn)擊如第三窗口 840中所示的左箭頭841,把瀏覽器窗口指針定位在錯(cuò)拼項(xiàng)目“delying”之前的位置,然后錄入單詞 “temporarily”。最終,在糾正了所有錯(cuò)拼的單詞之后,用戶點(diǎn)擊“完成”按鈕845,這將導(dǎo)致把消息發(fā)送于S4。對(duì)話服務(wù)器圖10 19有助于描述先前所描述的對(duì)話服務(wù)器102的實(shí)施例。圖10說(shuō)明了對(duì)話服務(wù)器102的一個(gè)實(shí)施例。對(duì)話服務(wù)器102包括對(duì)話引擎1002、修改器引擎1004、消息索引1006、查詢引擎1008、消息數(shù)據(jù)庫(kù)1010、一個(gè)或多個(gè)輔助服務(wù)服務(wù)器1012、拼寫(xiě)檢查器 1014 以及 SMTP 1016。對(duì)話引擎1002經(jīng)由其與通信網(wǎng)絡(luò)106的連接,處理來(lái)自對(duì)話助手110的請(qǐng)求和對(duì)對(duì)話助手110的答復(fù)。通信網(wǎng)絡(luò)106可以包括Internet、一個(gè)或多個(gè)局域網(wǎng)(LAN)、一個(gè)或多個(gè)廣域網(wǎng)(WAN)、其它類(lèi)型的網(wǎng)絡(luò)、或者這樣的網(wǎng)絡(luò)的組合。還把對(duì)話引擎連接于各種輔助性服務(wù)機(jī)構(gòu),例如,輔助服務(wù)服務(wù)器1012和拼寫(xiě)檢查器1014。把查詢引擎1008連接于對(duì)話引擎1002、消息索引1006以及消息數(shù)據(jù)庫(kù)1010。把修改器引擎1004連接在對(duì)話引擎1002和消息索引1006以及消息數(shù)據(jù)庫(kù)1010之間。把SMTP網(wǎng)關(guān)1016連接在對(duì)話引擎 1002和通信網(wǎng)絡(luò)106之間。盡管圖10把對(duì)話服務(wù)器102描述為多個(gè)離散的項(xiàng)目,但該圖更多的意圖是對(duì)對(duì)話服務(wù)器102中可提交的各種特性進(jìn)行功能上的描述,而不是對(duì)此處所描述的實(shí)施例的結(jié)構(gòu)上的示意。實(shí)際上,正如本技術(shù)領(lǐng)域的普通技術(shù)人員將會(huì)意識(shí)到的,可以把獨(dú)立描述的項(xiàng)目加以組合,也可以把某些項(xiàng)目加以分離。例如,可以在單一的服務(wù)器上實(shí)現(xiàn)圖中獨(dú)立描述的某些項(xiàng)目,也可以在一個(gè)或多個(gè)服務(wù)器上實(shí)現(xiàn)單一的項(xiàng)目。對(duì)話服務(wù)器 102中服務(wù)器的實(shí)際數(shù)目以及如何在它們之間分配特性,將隨實(shí)現(xiàn)的不同而不同,并且可能部分地取決于高峰使用期間以及平均使用期間系統(tǒng)必須處理的電子郵件吞吐量。如以上簡(jiǎn)要提及的,對(duì)話引擎1002可以響應(yīng)來(lái)自對(duì)話助手110的、與消息相關(guān)的各種請(qǐng)求,并且經(jīng)由其與通信網(wǎng)絡(luò)106的連接返回基于對(duì)話的答復(fù)。盡管也可以把SMTP網(wǎng)關(guān)1016連接于通信網(wǎng)絡(luò)106,但也可以使SMTP網(wǎng)關(guān)1016更直接地涉及消息的接收與發(fā)送。 例如,在某些實(shí)施例中,SMTP網(wǎng)關(guān)1016使用簡(jiǎn)單郵件傳送協(xié)議(SMIP)傳輸和接收消息。 SMTP網(wǎng)關(guān)1016可以從通信網(wǎng)絡(luò)106接收新的消息,并且把該消息發(fā)送于對(duì)話引擎1002,以進(jìn)行附加處理。另外,SMTP網(wǎng)關(guān)1016還從對(duì)話服務(wù)器1002接收消息,然后(經(jīng)由通信網(wǎng)絡(luò)106)把這些消息傳輸于消息中所指定的接收者地址。對(duì)話引擎1002還可以處理對(duì)可能正在被編寫(xiě)的消息進(jìn)行拼寫(xiě)檢查的請(qǐng)求。對(duì)話引擎1002向拼寫(xiě)檢查器1014發(fā)送將要檢查的文本的各部分,以進(jìn)行拼寫(xiě)檢查。拼寫(xiě)檢查器 1014返回相應(yīng)的信息,包括被標(biāo)識(shí)為可能不正確的拼寫(xiě)的文本的標(biāo)識(shí)。在某些實(shí)施例中,拼寫(xiě)檢查器1014提供了有關(guān)向被標(biāo)識(shí)為可能不正確的拼寫(xiě)的文本提出建議的信息。在某些實(shí)施例中,把這一信息發(fā)送于對(duì)話助手110,以進(jìn)行相繼的處理。一個(gè)或多個(gè)輔助服務(wù)服務(wù)器1012向?qū)υ捯?002提供了附加的服務(wù)。在某些實(shí)施例中,輔助服務(wù)服務(wù)器1012包括垃圾郵件檢測(cè)模塊。以下,參照?qǐng)D11討論垃圾郵件檢測(cè)模塊的操作。在某些實(shí)施例中,輔助服務(wù)服務(wù)器1012包括附件管理模塊,該附件管理模塊對(duì)附接于電子郵件消息的文件的有效存儲(chǔ)與檢索進(jìn)行管理。圖11描述了用于處理所接收消息的實(shí)施例。接收消息、將其賦予對(duì)話、對(duì)其進(jìn)行索引、向其賦予一個(gè)或多個(gè)屬性、并且將其加以存儲(chǔ)。例如,最初可以由SMTP網(wǎng)關(guān)1016接收消息,其中,可進(jìn)行某些處理和操作,然后可以將其傳送于對(duì)話引擎1002(階段1102)。對(duì)話引擎1002可以為該消息生成消息標(biāo)識(shí)符。消息標(biāo)識(shí)符可用于互相區(qū)別消息。在實(shí)施例中,該標(biāo)識(shí)符為由一個(gè)或多個(gè)部分構(gòu)成的N個(gè)比特的數(shù)字。例如,在實(shí)施例中,消息標(biāo)識(shí)符可以為64個(gè)比特的數(shù)字,該數(shù)字由Y個(gè)比特(例如32個(gè)比持或48個(gè)比特)的時(shí)標(biāo)和64-Y 個(gè)比特的消息內(nèi)容的雜湊(hash)組成。雜湊為數(shù)學(xué)函數(shù),其把值從大的域映像至較小的域。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到,存在著許多創(chuàng)建消息標(biāo)識(shí)符的不同的方法, 這些消息標(biāo)識(shí)符提供了用于將消息互相區(qū)別的足夠信息。然后,對(duì)話引擎1002可以把消息解析為其若干構(gòu)成成分(階段1104)。這些成分可能包括發(fā)送者的地址、一個(gè)或多個(gè)接收者地址、消息的主題、“Reference:”字段,如先前所描述的RFC 2822(2001年4月)中所描述的字段、RFC 2822中還描述的“In-R印Iy-To: ” 字段、消息的內(nèi)容、或任何可能包含在消息中的其它信息。在接收了消息之后,在解析消息之前或之后,把消息傳送于垃圾郵件檢查模塊(階段1105),以判斷消息是否與垃圾郵件準(zhǔn)則相匹配。在某些實(shí)施例中,各垃圾郵件檢查模塊與消息的其它處理異步地、并行地運(yùn)行。 在某些實(shí)施例中,垃圾郵件準(zhǔn)則的設(shè)計(jì)旨在判斷消息是否可能為用戶可能不希望讀取的未經(jīng)請(qǐng)求的消息。把所解析的消息添加于消息數(shù)據(jù)庫(kù)(階段1106)。在一個(gè)實(shí)施例中,把該消息添加于消息數(shù)據(jù)庫(kù),而且不進(jìn)行相繼的修改,除非可能要?jiǎng)h除。在消息解析期間所抽取的消息的某些或所有成分被用于幫助對(duì)所接收的消息所屬的對(duì)話(如果存在這樣的對(duì)話)的判斷(階段1108)。例如,可以把消息的主題與具有相同主題的其它消息進(jìn)行比較,因?yàn)閷?duì)話中的消息很可能將具有相同的、或幾乎相同的主題。 如果尚未發(fā)現(xiàn)相匹配的對(duì)話,則把該消息與新的對(duì)話相關(guān)聯(lián)。在已經(jīng)進(jìn)行了對(duì)話關(guān)聯(lián)之后,為消息加索引,以用于搜索(階段1110)。在一個(gè)實(shí)施例中,為消息的整個(gè)文本和報(bào)頭信息的部分加索引。在某些實(shí)施例中,不對(duì)消息體中的 “干擾詞”(例如“the (這一)”、“a(某一)”以及“or (或者)”等單詞)加索引,但對(duì)消息的相關(guān)部分中的所有其它文本加索引。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到,應(yīng)該為可加以搜索的消息的那些部分加索引。如以下所提到的,在某些實(shí)施例中,在消息處理的較后階段,把涉及與消息相關(guān)的屬性的信息添加于索引中。接下來(lái),把屬性的初始集合賦予消息(階段1112)。例如,這些類(lèi)型的屬性可以包括為所接收消息加“未被讀取”標(biāo)簽(這通常意味著消息尚未被查看,或尚未被標(biāo)記為被讀取的),以表示該消息為新的。除了用戶發(fā)送的消息外,最初賦予消息的另一個(gè)屬性是“收件箱”屬性。最初賦予每一消息的另一組屬性是與同一對(duì)話中的其它消息(如果存在的話) 相關(guān)的用戶定義的屬性。通過(guò)搜索以下參照?qǐng)D18所描述的對(duì)話數(shù)據(jù)庫(kù),確定與對(duì)話中的其
1它消息相關(guān)的用戶定義的屬性。最初也可以把其它屬性賦予消息。與消息相關(guān)的屬性可用于搜索消息數(shù)據(jù)庫(kù),以獲取具有類(lèi)似屬性的消息。例如,可以執(zhí)行搜索以搜索所有被標(biāo)明為 “未被讀取”的消息。另外,也可以把對(duì)話的屬性添加于消息,因?yàn)椋谝粋€(gè)實(shí)施例中,消息繼承了其對(duì)話的屬性。在某些實(shí)施例中,與消息相關(guān)的屬性可以包括與對(duì)話中單條消息相關(guān)而不必與所有消息相關(guān)聯(lián)的屬性。例如,可以把“標(biāo)記為刪除”屬性(有時(shí)也將其稱(chēng)為“廢紙簍”屬性) 與對(duì)話中的單一的消息相關(guān)聯(lián),而不與同一對(duì)話中的其它消息相關(guān)聯(lián)。標(biāo)記為刪除的消息還由系統(tǒng)加以存儲(chǔ),并且還與對(duì)話相關(guān)聯(lián),但通常在顯示對(duì)應(yīng)的對(duì)話時(shí)不對(duì)它們加以顯示。 使用一個(gè)或多個(gè)特定的視圖,以使得用戶能夠查看具有屬性“標(biāo)記為刪除”的消息。這樣的視圖向用戶提供了“不刪除”消息的機(jī)會(huì)。另一方面,在某些實(shí)施例中,當(dāng)把用戶定義的標(biāo)簽與對(duì)話相關(guān)聯(lián)時(shí),把該標(biāo)簽與對(duì)話中的所有消息相關(guān)聯(lián)。在某些其它實(shí)施例中,當(dāng)把用戶定義的標(biāo)簽與對(duì)話相關(guān)聯(lián)時(shí),把該標(biāo)簽與對(duì)話中的所有滿足預(yù)先定義的準(zhǔn)則的消息(例如,除那些標(biāo)記為刪除的消息之外的消息)相關(guān)聯(lián)。接下來(lái),把用戶已經(jīng)建立的用戶定義的過(guò)濾器施用于消息(階段1114)。每一用戶定義的過(guò)濾器包括一組過(guò)濾條件和一組動(dòng)作。過(guò)濾條件定義了哪些消息與過(guò)濾器相匹配, 動(dòng)作包括指定將添加于消息或從消息去除的標(biāo)簽的動(dòng)作。過(guò)濾條件可以包括與發(fā)送者、接收者、消息主題中的文本、消息中的文本等相關(guān)的準(zhǔn)則。在某些實(shí)施例中,動(dòng)作可以包括“從收件箱去除”(即,如果存在,則從消息中去除收件箱標(biāo)簽)、向消息添加系統(tǒng)標(biāo)簽(有時(shí)稱(chēng)為范疇)、以及向消息添加用戶定義的標(biāo)簽。例如,過(guò)濾器可以指定所有具有特定項(xiàng)目或者項(xiàng)目組合的消息都應(yīng)該用“廢紙簍”標(biāo)簽標(biāo)明。另一個(gè)過(guò)濾器可以指定,如果項(xiàng)目“Tahoe 湖”出現(xiàn)在消息中的任何地方,則把“假日”標(biāo)簽添加于該消息。注意,在某些實(shí)施例中,階段1112和1114涉及把標(biāo)簽賦予正被處理的消息。在執(zhí)行或準(zhǔn)備執(zhí)行階段1112和1114時(shí),檢索來(lái)自垃圾郵件檢查模塊的結(jié)果(階段1105)。如果垃圾郵件檢查模塊把消息歸類(lèi)為垃圾郵件,則把“垃圾郵件”標(biāo)簽賦予該消息,并且從該消息去除任何沖突的標(biāo)簽(例如,“收件箱”或“廢紙簍”)。在已建立了賦予消息的標(biāo)簽集合之后,修改對(duì)話引擎1002中的索引和某些表(階段1116),以反映賦予該消息的標(biāo)簽集合。通過(guò)添加表示把標(biāo)簽賦予哪一消息的信息來(lái)修改索引。結(jié)果,在這些標(biāo)簽的每一標(biāo)簽上的索引搜索將產(chǎn)生包括正被處理的當(dāng)前消息的消息列表。另外,修改對(duì)話引擎中的至少一個(gè)表或數(shù)據(jù)庫(kù),以表示賦予正被處理的當(dāng)前消息的標(biāo)簽集合。以下,將參照?qǐng)D18描述這一點(diǎn)。最后,可以向消息的發(fā)送者發(fā)送認(rèn)可(階段1118)。在某些實(shí)施例中,可以發(fā)送認(rèn)可,而在另一些實(shí)施例中,可以不發(fā)送認(rèn)可。盡管圖11按特定的次序描述了這些階段,但并不旨在不適當(dāng)?shù)叵拗七@些階段的次序。在其它實(shí)施例中,可以對(duì)這些階段進(jìn)行不同的排序。例如,在對(duì)消息進(jìn)行索引之前, 可以把消息添加于該消息數(shù)據(jù)庫(kù),從而階段1114后可跟階段1110。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到對(duì)這些階段重新進(jìn)行排序的各種方式。把每一消息與對(duì)話相關(guān)聯(lián)參照?qǐng)D12,以下為如何可把消息與對(duì)話相匹配(階段1106)的更詳細(xì)的描述。在對(duì)消息進(jìn)行解析(圖11的階段1104)之后,構(gòu)成成分的各部分可用于規(guī)劃對(duì)候選對(duì)話的搜索查詢(步驟1202)。例如,可以根據(jù)時(shí)間信息、發(fā)送者信息、主題信息、報(bào)頭中的其它信息、或系統(tǒng)提供的信息、或者它們的任何組合來(lái)對(duì)對(duì)話加以關(guān)聯(lián)。一個(gè)實(shí)施例使用帶有 “Reference: ”和/或“In-R印Iy-To: ”字段的消息的主題規(guī)劃搜索查詢。其它實(shí)施例包括搜索查詢中消息的發(fā)送者或者接收者。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到用于產(chǎn)生可與當(dāng)前消息相關(guān)的消息的許多不同的搜索查詢。針對(duì)先前所存儲(chǔ)的消息施用搜索查詢,并且接收候選消息(階段1204)。對(duì)消息或有關(guān)消息的信息進(jìn)行檢查,以判斷哪些消息(如果存在的話)可最好地與當(dāng)前消息相匹配(階段1206)。該消息所屬于的對(duì)話很可能為當(dāng)前消息所屬于的對(duì)話??梢允褂枚喾N不同的方案確定當(dāng)前消息所屬于的對(duì)話。一種方案可以使用當(dāng)前消息的主題。具有相同主題的消息很可能屬于同一對(duì)話。因此,可以規(guī)劃使用當(dāng)前消息的主題的查詢。例如,如果流入的消息具有主題“今天我們應(yīng)去哪里吃午飯? ”,則當(dāng)前消息所屬于的對(duì)話(如果存在的話) 就有可能包括一條或多條具有相同主題的消息。當(dāng)對(duì)主題進(jìn)行比較時(shí),在進(jìn)行比較之前,對(duì)主題進(jìn)行正規(guī)化可能是人們所希望的。在某些實(shí)施例中,對(duì)主題進(jìn)行正規(guī)化包括去除前綴, 例如去除“Re: ”和“Fwd: ”,其通常由某些系統(tǒng)把它們添加于主題。然而,可能人們希望檢查的不僅僅是主題。如果兩條消息具有同樣的主題,但其中的一條早在另一條消息之前就接收了,則它們很可能不是同一對(duì)話的一部分。例如,如果相隔一個(gè)月接收到兩條具有主題“今天我們應(yīng)去哪里吃午飯? ”的消息,則它們不可能為同一對(duì)話的一部分。因此,在本發(fā)明的一個(gè)實(shí)施例中,如果當(dāng)前消息和來(lái)自候選對(duì)話的消息的正?;黝}相匹配,則對(duì)該消息的日期/時(shí)間值的檢查可能是人們所希望的。當(dāng)把消息與對(duì)話相匹配時(shí),可以考慮其它因素,例如接收者、消息內(nèi)容的各部分、 發(fā)送者的域地址、或其它因素。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到,存在用于確定新消息所屬于的對(duì)話的許多不同方式。一旦當(dāng)前消息與令人滿意的匹配消息相匹配,則可以把與該匹配消息相關(guān)的對(duì)話與當(dāng)前消息相關(guān)聯(lián)(階段1206)。另一方面,如果沒(méi)有發(fā)現(xiàn)令人滿意的匹配消息(因而,無(wú)對(duì)話),則把新的對(duì)話標(biāo)識(shí)符與該消息相關(guān)聯(lián)(階段1206)。在某些實(shí)施例中,可以根據(jù)對(duì)話中所接收的初始消息來(lái)創(chuàng)建對(duì)話標(biāo)識(shí)符。例如,可以把系統(tǒng)提供的初始消息的消息標(biāo)識(shí)符(由傳輸或接收系統(tǒng)提供的)用作對(duì)話標(biāo)識(shí)符。然后,把相繼的消息與目前用作為對(duì)話標(biāo)識(shí)符的該消息標(biāo)識(shí)符相關(guān)聯(lián)。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到可用于提供對(duì)話標(biāo)識(shí)符的初始消息的各種特性。在某些實(shí)施例中,這些特性應(yīng)該提供這樣的良好支持該值唯一于該初始消息,使得將不會(huì)把同一對(duì)話標(biāo)識(shí)符賦予多個(gè)對(duì)話。如先前所提到的,在把當(dāng)前消息與對(duì)話(先前存在的或新創(chuàng)建的)相關(guān)聯(lián)(階段 1106)之后,添加初始屬性(階段1108)。參照?qǐng)D13可以更好地理解用于添加這些初始屬性(階段1108)的一個(gè)實(shí)施例。最初,可以檢查消息的發(fā)送者。如果當(dāng)前消息的發(fā)送者不是針對(duì)其正在執(zhí)行這一消息處理的用戶,則當(dāng)前消息很可能已被別人發(fā)送至該用戶。因此, 如果在階段1302斷定當(dāng)前消息的發(fā)送者不是該用戶,則可以把“收件箱”的初始屬性(也稱(chēng)收件箱標(biāo)簽)與當(dāng)前消息相關(guān)聯(lián)(階段1304)?!笆占洹钡膶傩钥捎糜跇?biāo)識(shí)那些已經(jīng)發(fā)送給該用戶的消息。例如,在某些實(shí)施例中,把具有“收件箱”屬性的消息的搜索用于用戶的收件箱視圖的產(chǎn)生。在本文獻(xiàn)中,可交換地使用術(shù)語(yǔ)“屬性”和“標(biāo)簽”。另外,把具體屬性與消息“相關(guān)聯(lián)”,以及使用具體屬性或標(biāo)簽“標(biāo)記”消息被視為是相同的或等效的操作。由于當(dāng)前消息很可能是新的,所以用戶此前尚未查看這一消息也是很可能的。因此,可以把如此指示的“未被讀取”屬性與當(dāng)前消息相關(guān)聯(lián)(階段1306)。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到,可以按能夠達(dá)到同樣結(jié)果的多種方式實(shí)現(xiàn)消息屬性。例如,預(yù)先定義的值可以代表“收件箱”。可以根據(jù)這些屬性搜索具有所希望的屬性的消息足以。也可以把其它屬性與消息相關(guān)聯(lián)。盡管搜索具體屬性的能力比有區(qū)別更為重要,但仍可以按多種形式考慮屬性。屬性可以包括系統(tǒng)定義的屬性,例如,收件箱、廢紙簍、垃圾郵件、全部文檔以及未被讀取。在某些實(shí)施例中,某些系統(tǒng)屬性可能是互斥的(例如,收件箱、廢紙簍以及垃圾郵件)。屬性還可以包括用戶定義的屬性,此處,有時(shí)把它們稱(chēng)為范疇。如果用戶為正被處理的消息的發(fā)送者(如在階段1302所斷定的),或者在把任何可施用的系統(tǒng)屬性添加于消息之后,例如,在添加了 “未被讀取”(階段1306)之后,則把屬于對(duì)話的附加的屬性添加于消息(階段1307)。可以針對(duì)流入的消息檢查和施用某些過(guò)濾條件(階段1308)。在實(shí)施例中,用戶可以建立當(dāng)滿足預(yù)先確定的條件時(shí)把屬性施用于所接收的消息的過(guò)濾器。在另一個(gè)實(shí)施例中,系統(tǒng)可以把一個(gè)或多個(gè)預(yù)先定義的過(guò)濾器施用于所接收的消息。如果當(dāng)前消息與過(guò)濾準(zhǔn)則相匹配,則接下來(lái)可以根據(jù)過(guò)濾器把屬性施用于該消息 (階段1310)。在一個(gè)實(shí)施例中,系統(tǒng)提供了使用戶能夠建立過(guò)濾器的工具,以便不把某些消息放置于“收件箱”中。換句話說(shuō),過(guò)濾器將導(dǎo)致把“收件箱”屬性從消息中去除。在另一個(gè)實(shí)施例中,可以把當(dāng)前消息與特定的用戶定義的屬性相關(guān)聯(lián),例如與指示可以把一個(gè)或多個(gè)對(duì)話與其關(guān)聯(lián)的那一用戶所感興趣的領(lǐng)域的標(biāo)簽相關(guān)聯(lián)。例如,可以把流入的消息與具有標(biāo)簽“食物”的對(duì)話相關(guān)聯(lián),然后,將把“食物”標(biāo)簽與當(dāng)前消息相關(guān)聯(lián)。總體上講,消息繼承了將消息與其相關(guān)聯(lián)的對(duì)話的標(biāo)簽。由于可以把多個(gè)過(guò)濾器施用于所接收的消息, 所以可以把新接收的消息以及它們相關(guān)的對(duì)話與一個(gè)以上的用戶定義的標(biāo)簽相關(guān)聯(lián)。在另一個(gè)實(shí)施例中,用戶可以把瞌睡條件與對(duì)話相關(guān)聯(lián)。在某些實(shí)施例中,當(dāng)用戶特別命令系統(tǒng)這樣做時(shí),才把瞌睡條件與對(duì)話相關(guān)聯(lián)。在某些實(shí)施例中,當(dāng)過(guò)濾器與對(duì)話中的消息相匹配時(shí),把瞌睡條件與對(duì)話相關(guān)聯(lián)。當(dāng)在已經(jīng)把瞌睡條件施加于其的對(duì)話中接收到新消息時(shí),瞌睡條件指定將要執(zhí)行的某些動(dòng)作。例如,瞌睡條件可以使系統(tǒng)免于把收件箱標(biāo)簽與對(duì)話中的新消息相關(guān)聯(lián)。更具體地講,用戶可以把瞌睡條件與對(duì)話相關(guān)聯(lián)(直接地, 或者通過(guò)過(guò)濾器的操作),從而使對(duì)話中的新消息免于被放置在用戶的收件箱中,除非滿足了某些觸發(fā)條件。一個(gè)這樣的觸發(fā)條件可以是直接導(dǎo)向用戶(作為唯一的主接收者)的流入的消息。另一個(gè)這樣的觸發(fā)條件可以是由用戶或系統(tǒng)所選擇的一段時(shí)間的流逝。再一些觸發(fā)條件可以是包含所指定的單詞或短語(yǔ)的所接收的消息。在這一情況下,當(dāng)接收到滿足瞌睡條件的消息時(shí),從對(duì)話中去除該瞌睡條件,并且使用“收件箱”標(biāo)簽標(biāo)記該流入的消息。 在某些實(shí)施例中,還采取了額外的動(dòng)作,例如,把“收件箱”標(biāo)簽添加于對(duì)話中的其它消息。 在另一個(gè)實(shí)施例中,使用“收件箱”標(biāo)簽標(biāo)明具有“未被讀取”標(biāo)簽的對(duì)話中的所有消息。因此,“收件箱”的搜索將返回該對(duì)話。在某些實(shí)施例中,通過(guò)生成瞌睡過(guò)濾器而把瞌睡條件與對(duì)話相關(guān)聯(lián),從而使與對(duì)話相關(guān)聯(lián)的新消息免于被以“收件箱”標(biāo)簽加以標(biāo)記,直至出現(xiàn)預(yù)先定義的事件或條件,在此之后,刪除或修改該瞌睡過(guò)濾器。另一種可施用于所接收的消息的過(guò)濾器是“垃圾郵件”過(guò)濾器,其能夠標(biāo)識(shí)不希望的消息,并且使用“垃圾郵件”標(biāo)簽對(duì)它們加以標(biāo)記(即,把“垃圾郵件”屬性與這樣的消息相關(guān)聯(lián))。圖14說(shuō)明了用于修改對(duì)話的屬性的一個(gè)實(shí)施例。當(dāng)對(duì)話、或者與對(duì)話相關(guān)聯(lián)的流入的消息與過(guò)濾準(zhǔn)則相匹配時(shí),可以修改對(duì)話的屬性。當(dāng)用戶指出對(duì)話應(yīng)具有特定的用戶定義的屬性時(shí),也可以修改對(duì)話的屬性。例如,用戶可以指定應(yīng)該把具體的對(duì)話與“食物”范疇相關(guān)聯(lián)。在這種情況下,使該對(duì)話(和其各自的消息)用“食物”屬性來(lái)標(biāo)記以便與“食物”屬性相關(guān)聯(lián)。用戶還可以指定標(biāo)記為刪除的對(duì)話。在某些方式下,就概念而言,用戶定義的屬性可比于文件夾。然而,本發(fā)明的各實(shí)施例允許把對(duì)話與多個(gè)用戶定義的屬性相關(guān)聯(lián)。在某些實(shí)施例中,當(dāng)把新的屬性與對(duì)話相關(guān)聯(lián)時(shí),使用新屬性標(biāo)記對(duì)話中的所有消息。參照?qǐng)D14,當(dāng)要修改對(duì)話的給定屬性時(shí),規(guī)劃搜索(階段1402)以定位對(duì)話(階段1404)。在發(fā)現(xiàn)對(duì)話(階段1404)之后,可以修改對(duì)話的屬性(階段1406)。用于完成階段1402、1404以及1406的具體機(jī)構(gòu)依賴于用于把屬性與對(duì)話相關(guān)聯(lián)的機(jī)構(gòu)。在某些實(shí)施例中,以對(duì)話為基礎(chǔ)把屬性與對(duì)話相關(guān)聯(lián)。例如,對(duì)話引擎可以維持與每一具體對(duì)話相關(guān)的屬性的列表。作為選擇,或者另外,對(duì)話引擎可以維持索引,該索引把每一所定義的屬性映像為用該屬性標(biāo)記的所有對(duì)話。作為選擇,在某些實(shí)施例中,把與對(duì)話相關(guān)的屬性與該對(duì)話中的各條消息相關(guān)聯(lián)。在這樣的實(shí)施例中,對(duì)話引擎可以維持把每一所定義的屬性映像為用該屬性標(biāo)記的所有消息的索引,而且還可以維持用于把每條消息映像至與該消息相關(guān)的對(duì)話的表或其它機(jī)構(gòu)。與消息相對(duì)照,本發(fā)明的許多特性把對(duì)話使用作為信息的基本單元。例如,收件箱向用戶提交對(duì)話的列表。本發(fā)明的某些特性使用搜索以標(biāo)識(shí)在用戶電子郵件賬戶中的多個(gè)不同對(duì)話視圖中所列的對(duì)話。以下,將參照?qǐng)D15描述搜索對(duì)話以及生成所標(biāo)識(shí)對(duì)話的表示。最初,接收搜索查詢(階段1502)。搜索查詢可以為用戶所指定的,或者為系統(tǒng)所生成的(例如,響應(yīng)于用戶點(diǎn)擊“收件箱”圖標(biāo))。搜索查詢可以基于多種因素。搜索查詢中的搜索項(xiàng)目可以按單詞或單詞的組合的形式來(lái)自用戶。例如,用戶可以搜索包含單詞“硬面包圈”和“便宜”的消息,而且如果存在相關(guān)對(duì)話,則將返回該相關(guān)對(duì)話。系統(tǒng)可以響應(yīng)某些用戶動(dòng)作,生成搜索查詢。例如,如果用戶希望得到收件箱視圖,則系統(tǒng)生成搜索查詢可以搜索具有屬性“收件箱”的對(duì)話??伤阉黜?xiàng)目的任何組合均可用于搜索查詢。如以上所提到的,可搜索項(xiàng)目可以包括消息的文本;與消息、對(duì)話相關(guān)的任何屬性;或者與消息相關(guān)聯(lián)的報(bào)頭信息。在一個(gè)實(shí)施例中,把搜索查詢施加于消息的數(shù)據(jù)庫(kù)將返回一組消息(階段1504)。簡(jiǎn)單參照?qǐng)D10,例如,可以通過(guò)向查詢引擎1008發(fā)送搜索查詢來(lái)實(shí)現(xiàn)這一點(diǎn)。查詢引擎1008可以把搜索查詢施加于該消息索引1006,消息索引1006可以返回消息的列表??梢栽陔A段1504接收這一消息列表。如果希望的話,其它實(shí)施例可以按多種不同的方式返回消息的列表,包括返回一組消息標(biāo)識(shí)符、文檔標(biāo)識(shí)符、全部或部分消息、或者它們的任何組合。在某些實(shí)施例中,針對(duì)作為整體的對(duì)話,而不是針對(duì)各個(gè)消息進(jìn)行搜索。于是,當(dāng)查詢包含第一和第二查詢項(xiàng)目,其中一個(gè)在第一條消息中被發(fā)現(xiàn),另一個(gè)在同一對(duì)話的第二條消息中被發(fā)現(xiàn)時(shí),將把這一對(duì)話視為與所述的查詢相關(guān)聯(lián),因而將其包括在搜索結(jié)果中。例如,考慮這樣一個(gè)對(duì)話其中第一條消息請(qǐng)求關(guān)于午餐地點(diǎn)的想法和相續(xù)的消息,同時(shí)指定具體的餐館,不包括原始消息的文本。如果用戶感興趣于找出其中討論特定餐館和午餐的對(duì)話,則如果針對(duì)整個(gè)對(duì)話的文本施加這一搜索,好象對(duì)話中不存在消息邊界,則搜索更可能產(chǎn)生所希望的結(jié)果。把對(duì)話與在階段1504所返回的消息集合相關(guān)聯(lián)。可以使用多種方法標(biāo)識(shí)相關(guān)的對(duì)話。當(dāng)從在步驟1504所返回的消息集合選擇了消息(階段1506)時(shí),標(biāo)識(shí)消息所屬于的那一對(duì)話(步驟1508)。在一個(gè)實(shí)施例中,可維持把每一消息與對(duì)話相匹配的數(shù)據(jù)結(jié)構(gòu)。 如果維持了這樣的數(shù)據(jù)結(jié)構(gòu),則對(duì)與具體消息標(biāo)識(shí)符相關(guān)的數(shù)據(jù)結(jié)構(gòu)條目的檢查,可以標(biāo)識(shí)消息所屬于的對(duì)話。作為結(jié)果集合,可以把所返回的對(duì)話的數(shù)目限制為預(yù)先定義的數(shù)目。 如果進(jìn)行了這一限制,則該組消息的處理繼續(xù),直到標(biāo)識(shí)了足夠數(shù)目的對(duì)話為止,并且返回結(jié)果。另一方面,可以標(biāo)識(shí)與所返回的消息組相關(guān)聯(lián)的所有對(duì)話,但僅返回子集。一旦通過(guò)標(biāo)識(shí)全部或部分返回結(jié)果所屬于的對(duì)話創(chuàng)建了對(duì)話的列表(階段 1510),則格式化對(duì)話信息,以返回于請(qǐng)求者(階段1512)。格式化階段1512可以格式化多個(gè)不同類(lèi)型的與所標(biāo)識(shí)的對(duì)話相關(guān)聯(lián)的信息,它們的細(xì)節(jié)將隨實(shí)施例的不同而不同。在某些實(shí)施例中,格式化信息為可由用于把對(duì)話信息提交于用戶的對(duì)話助手110加以識(shí)別的類(lèi)型。在某些實(shí)施例中,根據(jù)預(yù)先定義的規(guī)則或規(guī)則組,依照賦予每一對(duì)話的日期/時(shí)間值,排序在階段1510所生成的對(duì)話列表中的對(duì)話。如以上所解釋的,在某些實(shí)施例中, 向?qū)υ捔斜碇械拿恳粋€(gè)對(duì)話賦予等于與用于生成對(duì)話列表的搜索準(zhǔn)則相匹配的最近消息的日期/時(shí)間的日期/時(shí)間,并且根據(jù)這些所賦予的日期/時(shí)間值,排序?qū)υ捔斜碇械膶?duì)話 (例如,按反時(shí)間次序)。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到,存在著對(duì)對(duì)話列表中的對(duì)話進(jìn)行排序和提交的各種其它的方法。在某些實(shí)施例中,代表對(duì)話的列表的經(jīng)過(guò)格式化的對(duì)話數(shù)據(jù)(在階段1512產(chǎn)生) 包括對(duì)含于對(duì)話列表中每一對(duì)話中的消息的數(shù)目的統(tǒng)計(jì)。在某些實(shí)施例中,由對(duì)話助手110 顯示每一對(duì)話的消息統(tǒng)計(jì),以向用戶指示多少消息包含于對(duì)話中。在一個(gè)實(shí)施例中,針對(duì)對(duì)話的列表中的每一對(duì)話創(chuàng)建簡(jiǎn)要對(duì)話報(bào)頭(例如,在階段1512期間),對(duì)話報(bào)頭可以標(biāo)識(shí)對(duì)話中消息的發(fā)送者的列表。這一列表可以包括對(duì)話中全部發(fā)送者或發(fā)送者的子集。在某些實(shí)施例中,對(duì)發(fā)送者的列表進(jìn)行格式化,以便可視地區(qū)別那些已經(jīng)發(fā)送了當(dāng)前由用戶標(biāo)明為“未被讀取”的(對(duì)話中的)消息的發(fā)送者。在另一個(gè)實(shí)施例中,對(duì)話助手110按不同于其它發(fā)送者的格式提交這些發(fā)送者。例如,可以使用粗體或突出顯示的文本標(biāo)識(shí)“未被讀取”消息的發(fā)送者。在另一個(gè)實(shí)施例中,可以通過(guò)用自我參照標(biāo)識(shí)符取代用戶的名字或地址來(lái)處理 (簡(jiǎn)要對(duì)話報(bào)頭中的)消息的發(fā)送者的列表。結(jié)果,當(dāng)顯示對(duì)話的發(fā)送者的列表而不是顯示類(lèi)似于非該用戶的發(fā)送者的用戶的名字或其它標(biāo)識(shí)信息時(shí),顯示自我參照標(biāo)識(shí)符(例如 “me (我)”)。也可以使用其它類(lèi)型的自我參照標(biāo)識(shí)符把正在查看的用戶與其他用戶相區(qū)別。在另一個(gè)實(shí)施例中,對(duì)話的列表中的每一消息的簡(jiǎn)要對(duì)話報(bào)頭可以包括指示用戶如何接收消息的信息。換句話說(shuō),這些信息可以專(zhuān)門(mén)標(biāo)識(shí)如何向用戶發(fā)送消息。例如,可以直接向用戶發(fā)送消息,可以針對(duì)消息拷貝用戶,可以針對(duì)消息盲拷貝用戶,或者可以令用戶為把消息發(fā)送于其的分布列表的一部分??梢韵蛴脩糁赋鲇脩艚邮障⒌倪@些不同方式中
22的一個(gè)或多個(gè)方式。例如,如果向用戶直接發(fā)送消息,則可以使用形象的表示(例如“>”) 指出何時(shí)把對(duì)話提交于用戶。在某些實(shí)施例中,對(duì)話的列表中的每一消息的簡(jiǎn)要信息報(bào)頭包括對(duì)話內(nèi)容的摘錄,該摘錄包括用于以粗體顯示與搜索項(xiàng)目相匹配的文本的信息,而且還包括以正常字體格式化的圍繞匹配文本的文本。當(dāng)針對(duì)收件箱或其它系統(tǒng)范疇生成對(duì)話的列表時(shí),摘錄包括來(lái)自根據(jù)預(yù)先定義的準(zhǔn)則所選擇的對(duì)話的文本。在某些實(shí)施例中,摘錄包括從對(duì)話中的最近消息的開(kāi)始起的文本,而在另一個(gè)實(shí)施例中,摘錄包括自動(dòng)選擇的、指示對(duì)話內(nèi)容的文本。在另一個(gè)實(shí)施例中,當(dāng)用戶從與搜索查詢相匹配的對(duì)話中選擇查看具體的對(duì)話時(shí),對(duì)話引擎可以生成指示對(duì)話中的哪些消息與該查詢相匹配以及哪些消息與該查詢不相匹配的對(duì)話信息。對(duì)話信息還可以包括與該搜索查詢相匹配的消息的文本的一部分。可以對(duì)這一對(duì)話信息進(jìn)行格式化,以向用戶加以顯示。對(duì)話信息可以包括用于按擴(kuò)展模式顯示的格式化的匹配消息和用于按壓縮模式顯示的格式化的非匹配消息??梢园磾U(kuò)展模式把各種類(lèi)型的信息提交于用戶,包括下列所有或部分信息的任意組合報(bào)頭信息、內(nèi)容信息、與搜索查詢相匹配的文本、以及圍繞該搜索查詢的文本。在某些實(shí)施例中,當(dāng)按壓縮模式(例如,響應(yīng)于用戶對(duì)“壓縮所有消息”按鈕或選項(xiàng)的選擇)顯示與搜索查詢相匹配的一條或多條消息時(shí),按壓縮模式針對(duì)這樣的消息所顯示的信息包括消息內(nèi)容的摘錄,該摘錄包括用于以粗體顯示與查詢項(xiàng)目相匹配的文本的信息,而且還包括圍繞以正常字體格式化的匹配文本的文本。在又一個(gè)實(shí)施例中,對(duì)話信息可以指示何時(shí)已向?qū)υ捥砑恿四承┯脩艋蚝螘r(shí)已從對(duì)話去除了某些用戶。例如,如果已把用戶包括于對(duì)話中的消息達(dá)到某一時(shí)間點(diǎn),然后不再包括,則針對(duì)一條或多條相繼消息的信息可以指示用戶不再為對(duì)話的一部分。例如,對(duì)話助手可以通過(guò)使用某種不同于用于顯示那些仍正在參與對(duì)話的用戶的名字的字體顯示該用戶的名字來(lái)實(shí)現(xiàn)這一點(diǎn)。為此目的,對(duì)話助手可以使用“疊影”字體。對(duì)話信息還可以向?qū)υ捥峁╆P(guān)于新參與者的加入的信息。例如,涉及包括新參與者的第一條消息的信息可以包括用于有區(qū)別地顯示新參與者的名字的格式化信息??梢酝ㄟ^(guò)對(duì)話助手把這一信息顯示于用戶,以致新添加的發(fā)送者的名字或其它標(biāo)識(shí)信息可按粗體或某些其它視覺(jué)上有區(qū)別的提交格式得以顯現(xiàn)。對(duì)話信息還可以包括關(guān)于拼寫(xiě)檢查的信息。這一信息可以包括指出哪些單詞被拼寫(xiě)檢查器1014標(biāo)識(shí)為可能不正確拼寫(xiě)的指示信息,以及與正確拼寫(xiě)的建議相關(guān)的信息。圖16提供了根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于存儲(chǔ)消息的格式的說(shuō)明。當(dāng)把消息存儲(chǔ)在消息數(shù)據(jù)庫(kù)中(圖11的階段1114)時(shí),可以按圖16中所說(shuō)明的對(duì)其加以存儲(chǔ)。消息數(shù)據(jù)庫(kù)1602可以存儲(chǔ)關(guān)于消息的信息,例如關(guān)于消息1(1604)至消息x(1606)的信息, 其中,X代表對(duì)應(yīng)于具體用戶的消息的數(shù)目。在一個(gè)實(shí)施例中,把每一用戶的消息存儲(chǔ)于唯一于該用戶的消息數(shù)據(jù)庫(kù)1602中。在另一個(gè)實(shí)施例中,可以把屬于一個(gè)以上用戶的消息存儲(chǔ)于相同的消息數(shù)據(jù)庫(kù)1602中。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到許多使來(lái)自一個(gè)用戶的消息免于作為屬于另一用戶的消息加以顯示的方法。在又一個(gè)實(shí)施例中,可以把來(lái)自一個(gè)以上用戶的消息存儲(chǔ)在消息數(shù)據(jù)庫(kù)1602中,而且每條消息僅具有一個(gè)存儲(chǔ)條目, 以致多個(gè)用戶可參照單一拷貝的消息。
在一個(gè)實(shí)施例中,消息(例如,消息1608)可以包括報(bào)頭信息1612、內(nèi)容1614以及附件1616。報(bào)頭信息1614可以包括消息的報(bào)頭信息,其含有諸如標(biāo)識(shí)發(fā)送者和接收者、消息的時(shí)間/日期值以及主題的信息。其它的信息也可以包含于報(bào)頭信息中,例如RFC 2822 中所描述的其它信息。內(nèi)容1614可以包括消息的內(nèi)容。內(nèi)容1614可以包括文本和/或其它類(lèi)型的內(nèi)容(例如,圖像或照片)。附件1616可以為附接于具體消息的任何信息的內(nèi)容。 例如,可以把附接于消息的文檔放置在消息1610的這一部分中。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到存儲(chǔ)消息信息的其它方式。例如,可以把附件存儲(chǔ)在另一個(gè)存儲(chǔ)結(jié)構(gòu)中,并且把對(duì)其的參照放置在附件1616中。在可選的實(shí)施例中,把每一對(duì)話的所有消息作為單一的記錄、文檔或數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)在消息數(shù)據(jù)庫(kù)中。用戶、消息以及對(duì)話的數(shù)據(jù)結(jié)構(gòu)圖17說(shuō)明了根據(jù)本發(fā)明的實(shí)施例的用戶數(shù)據(jù)庫(kù)和消息索引。用戶數(shù)據(jù)庫(kù)1702可以存儲(chǔ)有關(guān)用戶的信息。所存儲(chǔ)的信息可以包括用戶信息1704。用戶信息1704可能包括與用戶偏好相關(guān)的各種類(lèi)型的用戶信息、安全信息、或者可由本發(fā)明的不同實(shí)施例所使用的任何其它信息。用戶數(shù)據(jù)庫(kù)可以包括用于標(biāo)識(shí)用戶的諸如用戶ID(I) (1706)至用戶ID(m) (1708)的用戶標(biāo)識(shí)信息,用戶ID(I) (1706)至用戶ID(m) (1708)的中m可代表系統(tǒng)的用戶的數(shù)目。特定的用戶ID(m) (1708)可以為針對(duì)每一用戶的唯一的標(biāo)識(shí)符,例如η個(gè)比特的二進(jìn)制數(shù)字。也可以使用其它類(lèi)型的用戶標(biāo)識(shí)。在某些實(shí)施例中,使用用戶的用戶ID標(biāo)識(shí)用于存儲(chǔ)關(guān)于過(guò)濾器、與用戶的郵件賬戶相關(guān)的查詢和標(biāo)簽的信息的數(shù)據(jù)結(jié)構(gòu)集合1720。在某些實(shí)施例中,這些數(shù)據(jù)結(jié)構(gòu)包括用于存儲(chǔ)代表用戶所提交的最后幾個(gè)查詢的信息的查詢超高速緩沖器1722 ;—組用于存儲(chǔ)用戶定義的過(guò)濾器(如果存在的話)的過(guò)濾器數(shù)據(jù)結(jié)構(gòu)1724 ;以及用于存儲(chǔ)代表用戶定義的標(biāo)簽的信息的標(biāo)簽數(shù)據(jù)結(jié)構(gòu)1726??梢园汛鎯?chǔ)在查詢超高速緩沖器1722中的信息所代表的新近的查詢提交于用戶,例如提交于編組框348 (圖3Β)中的用戶,以使用戶能夠容易地把這些查詢重新提交于對(duì)話管理系統(tǒng)。當(dāng)把每一新消息添加于用戶的郵件賬戶時(shí),在對(duì)其處理期間,對(duì)話管理系統(tǒng)使用用戶定義的過(guò)濾器??梢园焉婕坝脩舳x的標(biāo)簽的所存儲(chǔ)信息提交于用戶,例如提交于編組框347(圖3Β)中的用戶,以使用戶能夠容易地請(qǐng)求載有用戶選擇標(biāo)簽的對(duì)話的列表。用戶的用戶ID可以用于標(biāo)識(shí)對(duì)應(yīng)于該用戶的全文本與屬性索引1710??梢园讶谋九c屬性索引1710與具體的用戶相關(guān)聯(lián),以致不同的用戶不能夠搜索與該具體用戶相關(guān)的消息的索引。全文本與屬性索引1710把關(guān)于消息的信息存儲(chǔ)在用戶的郵件賬戶中,以致針對(duì)全文本與屬性索引1710所施加的查詢可以返回匹配消息(如果存在的話)的列表。 該列表可作為消息標(biāo)識(shí)符的列表被返回。包含于針對(duì)具體消息的全文本與屬性索引1710中的信息,可以包括消息的消息 ID 1712、消息1714的內(nèi)容1714以及關(guān)于消息的屬性1716的信息。消息ID 1712是消息的唯一的標(biāo)識(shí)符(即,相對(duì)于針對(duì)同一用戶所存儲(chǔ)的所有其它消息而言,是唯一的)。消息 ID 1712可以為η個(gè)比特的數(shù)字,用于引用存儲(chǔ)在消息數(shù)據(jù)庫(kù)1702中的具體消息。在一個(gè)實(shí)施例中,消息ID 1712可以為64個(gè)比特?cái)?shù)字。消息ID 1712可以由時(shí)標(biāo)信息和與消息ID 1712所指消息的內(nèi)容相關(guān)的信息構(gòu)成。時(shí)標(biāo)信息可以為由系統(tǒng)所提供的Y個(gè)比特(例如,32個(gè)比特或48個(gè)比特)的時(shí)標(biāo),例如,其表示SMTP網(wǎng)關(guān)1018何時(shí)接收消息。與消息的內(nèi)容相關(guān)的信息可以為消息內(nèi)容的64-Y個(gè)比特的雜湊(hash)。把消息的內(nèi)容作為全索引的和可搜索的項(xiàng)目放入索引中。當(dāng)針對(duì)項(xiàng)目或項(xiàng)目的組合搜索索引1710時(shí),索引返回與項(xiàng)目或項(xiàng)目的組合相匹配的消息的消息列表(例如,消息 ID)。某些預(yù)先定義的條件可以規(guī)定比所有匹配的消息少的返回。在另一個(gè)實(shí)施例中,索引 1710返回與查詢中的項(xiàng)目或項(xiàng)目的組合相匹配的對(duì)話列表(例如,對(duì)話ID)。在一個(gè)實(shí)施例中,根據(jù)包含在每一被索引消息的消息ID 1712中的時(shí)標(biāo)信息,對(duì)全文本與屬性索引1710中的搜索項(xiàng)目的條目進(jìn)行排序,以致可以優(yōu)先返回與搜索項(xiàng)目相匹配的最近消息。例如,可以對(duì)相應(yīng)于索引1710中的每一項(xiàng)目的消息的消息ID的列表進(jìn)行排序,以致可以在列表中先于具有較舊時(shí)標(biāo)的消息ID列出具有最新時(shí)標(biāo)的消息ID。在其它實(shí)施例中,與每一消息相關(guān)的日期/時(shí)間信息表不每一消息的接收的日期和/或時(shí)間,但這一日期/時(shí)間信息未嵌入在消息ID中。然而,在這樣的實(shí)施例中,對(duì)索引1710中的條目進(jìn)行排列,以致在列表中可先于具有較舊日期/時(shí)間值的消息ID列出具有最新日期/時(shí)間值的消息的消息ID。也對(duì)與消息相關(guān)聯(lián)的任何屬性1716進(jìn)行索引(即,將它們包括在索引1710中)。 把屬性1716添加于全文本與屬性索引1710中,以致對(duì)于具體屬性的查詢可以返回那些與該具體屬性相匹配的消息。當(dāng)把標(biāo)簽或?qū)傩蕴砑佑趯?duì)話或者從對(duì)話去除時(shí),相應(yīng)地修改索引1710。索引包括把每一所定義的標(biāo)簽或?qū)傩杂诚裼谳d有該標(biāo)簽或?qū)傩缘乃邢?或在其它實(shí)施例中,為對(duì)話)的條目或數(shù)據(jù)。于是,當(dāng)把標(biāo)簽添加于對(duì)話時(shí),也把數(shù)據(jù)添加于索引1710,以把該標(biāo)簽映像于對(duì)話中的所有消息。當(dāng)把標(biāo)簽從對(duì)話去除時(shí),也去除把該標(biāo)簽映像于對(duì)話中的消息的索引中的數(shù)據(jù),或者使該索引無(wú)效。在某些實(shí)施例中,還把每一個(gè)與對(duì)話相關(guān)聯(lián)的標(biāo)簽或?qū)傩蕴砑佑趯?duì)話數(shù)據(jù)庫(kù)1808(圖18)中的一個(gè)或多個(gè)條目。盡管可以把全文本與屬性索引1710配置為能夠把查詢項(xiàng)目映像于各個(gè)消息ID 1712,然而也可以提供其它數(shù)據(jù)結(jié)構(gòu)以把消息ID映像于對(duì)話標(biāo)識(shí)符。圖18描述了一個(gè)這樣的數(shù)據(jù)結(jié)構(gòu)集合的邏輯圖。本技術(shù)領(lǐng)域中的普通技術(shù)人員將會(huì)意識(shí)到可以使用許多不同的數(shù)據(jù)結(jié)構(gòu)把搜索查詢項(xiàng)目映像于對(duì)話或?qū)υ挊?biāo)識(shí)符。如先前所描述的,用戶數(shù)據(jù)庫(kù)1702可以包括引用與具體用戶相關(guān)聯(lián)的全文本與屬性索引1710的用戶ID 1708。參照?qǐng)D18,可以把具體消息ID 1712與消息至對(duì)話映像 1804中的具體對(duì)話ID 1802相關(guān)聯(lián)。消息至對(duì)話映像1804中的每一個(gè)條目把消息ID 1712 關(guān)聯(lián)(即映像)于對(duì)話ID 1802。在某些實(shí)施例中,對(duì)話ID 1804為η個(gè)比特的數(shù)字。這一數(shù)字唯一地標(biāo)識(shí)了消息ID 1712所標(biāo)識(shí)的消息所屬于的具體對(duì)話。在這些實(shí)施例中,用戶的郵件賬戶中的每一對(duì)話具有不同的對(duì)話ID。為了標(biāo)識(shí)與具體對(duì)話相關(guān)聯(lián)的其它消息,可以使用用戶對(duì)話數(shù)據(jù)庫(kù)1808。例如,當(dāng)標(biāo)識(shí)包括在其中一條或多條消息已與具體搜索查詢相匹配的對(duì)話中的其余消息時(shí),可以使用這樣的數(shù)據(jù)庫(kù)。用戶對(duì)話數(shù)據(jù)庫(kù)包括多個(gè)對(duì)話條目1810。每一個(gè)對(duì)話條目1810存儲(chǔ)與該對(duì)話相關(guān)的消息的列表(或者代表消息的其它數(shù)據(jù)結(jié)構(gòu))。例如,對(duì)話條目1812可以包括消息條目1816的鏈接列表,每一個(gè)消息條目對(duì)應(yīng)于對(duì)話中的具體消息。例如,根據(jù)與對(duì)話中的消息相關(guān)聯(lián)的日期/時(shí)間值對(duì)鏈接列表進(jìn)行排序。示例性的消息條目1816包括具體消息的消息ID 1712、報(bào)頭1818以及標(biāo)簽1820。報(bào)頭1818可以包括先前所描述的報(bào)頭信息1612的全部或一部分。標(biāo)簽1820可以包括標(biāo)識(shí)與消息相關(guān)聯(lián)的某些屬性的信息??梢园丫唧w條目1822的消息ID(4) 1712與消息數(shù)據(jù)庫(kù)1602中的具體消息相關(guān)聯(lián)。在某些實(shí)施例中,消息條目1816不包括對(duì)應(yīng)消息體的內(nèi)容。在某些實(shí)施例中,索引1708中的信息和對(duì)話條目1812中的信息有助于把新消息與具體對(duì)話相關(guān)聯(lián),在圖11的階段1106中可做到這一點(diǎn),而且不必存取消息數(shù)據(jù)庫(kù)1602。 當(dāng)把消息標(biāo)識(shí)為盡可能地與新到達(dá)的消息相匹配(圖12的階段1204)時(shí),可以使用匹配消息的報(bào)頭1818來(lái)實(shí)現(xiàn)對(duì)最佳匹配消息的判斷以及因此對(duì)最佳匹配對(duì)話的判斷。例如,報(bào)頭 1818可以包括能夠?qū)⑺鼈?呈正?;问降?與新到達(dá)消息的正?;黝}加以比較的消息的主題信息。也可以把報(bào)頭1818中的其它信息與正被處理的流入消息的報(bào)頭信息進(jìn)行比較。一旦已經(jīng)把對(duì)話標(biāo)識(shí)為匹配的,則可以把所標(biāo)識(shí)對(duì)話的消息條目的標(biāo)簽1820中所標(biāo)識(shí)的屬性施用于流入的消息(圖13的階段1307),而不必從消息數(shù)據(jù)庫(kù)檢索任何消息。當(dāng)從對(duì)話中刪除消息時(shí),可以修改對(duì)話條目1812,而不會(huì)影響對(duì)話中的其它消息。在這種情況下,可以從消息條目的鏈接列表中刪除對(duì)應(yīng)于將要?jiǎng)h除的消息的消息條目 1816(在對(duì)話條目1812中)。于是,將不再把該消息與該對(duì)話相關(guān)聯(lián)。在某些實(shí)施例中,考慮到刪除操作,也可以對(duì)消息至對(duì)話映像1804進(jìn)行修改。如先前所描述的,在某些情況下,例如,人們可能希望使用特定屬性對(duì)刪除的消息進(jìn)行標(biāo)記,但不從對(duì)話中去除該消息。當(dāng)條件為使得可以從對(duì)話中去除該消息時(shí),可以象以上所描述的那樣做??稍试S從消息至對(duì)話映像1802和對(duì)話條目1812中去除消息的條件, 可包括自從把消息標(biāo)記為刪除后的一定量時(shí)間的消逝、用戶的動(dòng)作、或者其它觸發(fā)事件。也可以把對(duì)話標(biāo)識(shí)為刪除,但尚未從用戶的郵件賬戶中去除。當(dāng)把對(duì)話永久性地從用戶的郵件賬戶中去除時(shí),則可以去除針對(duì)該對(duì)話的消息至對(duì)話映象1802的條目。另外,還可以從對(duì)話數(shù)據(jù)庫(kù)1808中去除對(duì)應(yīng)的對(duì)話條目1812,而且還可以從索引1708中去除對(duì)話中的消息的索引條目。如以上所示,在另一個(gè)實(shí)施例中,全文本消息索引1708響應(yīng)查詢,返回對(duì)話標(biāo)識(shí)符的列表。在本實(shí)施例中,可以省略消息至對(duì)話映像1802。取而代之,由對(duì)話數(shù)據(jù)庫(kù)提供完成相應(yīng)于查詢的對(duì)話的處理所需的主要映像。參照?qǐng)D19,實(shí)現(xiàn)上述方法的對(duì)話服務(wù)器102的實(shí)施例包括一個(gè)或多個(gè)處理單元 (CPU) 1902、一個(gè)或多個(gè)網(wǎng)絡(luò)或其它通信接口 1904、存儲(chǔ)器1006以及一個(gè)或多個(gè)用于互連這些部件的通信總線1908。對(duì)話服務(wù)器102可以有選擇地包括含有顯示設(shè)備和鍵盤(pán)的用戶接口。存儲(chǔ)器1906可以包括高速隨機(jī)存取存儲(chǔ)器,并且還可以包括非易失存儲(chǔ)器,例如一個(gè)或多個(gè)磁盤(pán)或光存儲(chǔ)盤(pán)。存儲(chǔ)器1906可以包括遠(yuǎn)離CPU 1902放置的海量存儲(chǔ)器。存儲(chǔ)器1906可以存儲(chǔ)操作系統(tǒng)1916,其包括用于處理各種基本系統(tǒng)服務(wù)和用于執(zhí)行依賴于硬件的任務(wù)的規(guī)程;網(wǎng)絡(luò)通信模塊(或指令)1918,其用于經(jīng)由諸如Internet、其它廣域網(wǎng)、局域網(wǎng)、大都市區(qū)域網(wǎng)等的一個(gè)或多個(gè)網(wǎng)絡(luò)通信接口 1904 (有線或無(wú)線),把對(duì)話服務(wù)器102連接于其它計(jì)算機(jī);以及對(duì)話引擎1002模塊,其用于響應(yīng)來(lái)自對(duì)話助手110的請(qǐng)求,以及向?qū)υ捴?10 提供答復(fù),如先前所描述的,并且可以包括
處理新消息模塊1920,其用于處理新消息,如先前所描述的;搜索模塊1922,其用于搜索用戶的消息,如先前所描述的,搜索模塊1922包括用于處理來(lái)自由用戶1922所提供的輸入的搜索請(qǐng)求的模塊,以及用于處理由對(duì)話助手110所啟動(dòng)的系統(tǒng)生成搜索的模塊1926 ;對(duì)話助手加載器1928,其用于向?qū)υ捴?10提供允許對(duì)話助手處理從對(duì)話服務(wù)器102提供于其的信息的信息。在某些實(shí)施例中,當(dāng)首次把客戶機(jī)計(jì)算機(jī)連接于對(duì)話服務(wù)器102以處理電子郵件消息時(shí),引用對(duì)話助手加載器1928,以把對(duì)話助手110加載于客戶機(jī)計(jì)算機(jī)。在某些實(shí)施例中,每次啟動(dòng)電子郵件對(duì)話期時(shí),對(duì)話助手加載器1928把對(duì)話助手 110加載在客戶機(jī)計(jì)算機(jī)上,而在其它實(shí)施例中,客戶機(jī)計(jì)算機(jī)把對(duì)話助手110從一個(gè)電子郵件對(duì)話期保持到另一個(gè)電子郵件對(duì)話期;回答格式化模塊1930,其用于提供要被提供給對(duì)話助手110的格式化信息,如先前所描述的,包括對(duì)話排序模塊1932,其用于根據(jù)預(yù)先定義的準(zhǔn)則來(lái)排序?qū)υ挘缦惹八枋龅?;選擇對(duì)話模塊1034,其用于從可以被返回的總數(shù)中選擇要被返回到對(duì)話助手110的對(duì)話的預(yù)先確定的數(shù)目;未被讀取/未被查看消息的標(biāo)識(shí)發(fā)送者1936,其用于標(biāo)識(shí)被標(biāo)記為“未被讀取”(即消息未被查看或未被標(biāo)記為被讀取的)消息的消息,如先前所描述的;自我參照模塊1938,其用于提供關(guān)于用自我參照信息取代用戶標(biāo)識(shí)的信息,如先前所描述的; 新接收者模塊1940,其用于標(biāo)識(shí)和提供關(guān)于向?qū)υ捫绿砑咏邮照叩男畔?,如先前所描述的?去除接收者模塊1942,其用于標(biāo)識(shí)和提供關(guān)于不再為對(duì)話的一部分的接收者的信息,如先前所描述的;摘錄模塊1944,其用于獲取和提供關(guān)于匹配消息的某一文本的信息,如先前所描述的;以及全文本模塊1946,其用于檢索傳輸于對(duì)話助手110的消息的全文本,如先前所描述的;以及格式拼寫(xiě)檢查模塊1948,其用于格式化從拼寫(xiě)檢查器1014返回的信息;修改屬性模塊1950,其用于修改對(duì)話和消息的屬性,如先前所描述的;刪除/去除模塊1095,其用于標(biāo)記用于刪除和隨后去除它們的消息或?qū)υ?,如先前所描述的;過(guò)濾模塊1954,其用于創(chuàng)建、監(jiān)視以及執(zhí)行過(guò)濾,如先前所描述的;以及編寫(xiě)/發(fā)送模塊1956,其允許用戶編寫(xiě)消息,并且把所得到的消息提交于SMTP網(wǎng)關(guān) 1016。應(yīng)該認(rèn)識(shí)到,以上所描述的各種特性,例如拼寫(xiě)檢查處理的示例性實(shí)施例,以及顯示方法,不局限于電子消息處理或電子郵件。例如,在其它實(shí)施例中,可以把上述的拼寫(xiě)檢查方法或用戶接口施用于各種類(lèi)型的文檔(例如,字處理文檔),或者與各種類(lèi)型的文檔相結(jié)合加以實(shí)現(xiàn)。已參照具體的實(shí)施例解釋性地進(jìn)行了以上的描述。然而,上述說(shuō)明性的討論不旨在窮舉性地描述本發(fā)明,或者把本發(fā)明限制于所公開(kāi)的精確形式。鑒于以上的講授,對(duì)本發(fā)明進(jìn)行眾多的修改與變更是可能的。對(duì)實(shí)施例的選擇與描述,旨在最好地解釋本發(fā)明的原理及其實(shí)際的應(yīng)用,從而可使本技術(shù)領(lǐng)域中的其它技術(shù)人員能夠通過(guò)所考慮的適合于具體應(yīng)用的各種修改,來(lái)充分利用本發(fā)明及其各種實(shí)施例。
權(quán)利要求
1.一種搜索對(duì)話的方法,在具有一個(gè)或多個(gè)處理器和存儲(chǔ)由所述一個(gè)或多個(gè)處理器執(zhí)行的程序的存儲(chǔ)器的服務(wù)器執(zhí)行,該方法包括從客戶機(jī)接收搜索查詢;識(shí)別與所述搜索查詢相關(guān)的對(duì)話,所述對(duì)話具有共享滿足預(yù)先定義的準(zhǔn)則的公共特征集合的兩個(gè)或更多消息以及各自的對(duì)話標(biāo)識(shí)符,其中,識(shí)別與所述搜索查詢相關(guān)的對(duì)話包括識(shí)別作為一個(gè)整體與所述搜索查詢相關(guān)的對(duì)話;以及返回所述客戶機(jī)以便作為所述搜索查詢的搜索結(jié)果顯示對(duì)應(yīng)于所識(shí)別的對(duì)話的對(duì)話信息。
2.如權(quán)利要求I所述的方法,其中,所述搜索查詢包括至少第一項(xiàng)和第二項(xiàng)。
3.如權(quán)利要求2所述的方法,其中,識(shí)別與所述搜索查詢相關(guān)的對(duì)話包括在所述對(duì)話的第一消息中識(shí)別第一項(xiàng)和在所述對(duì)話的第二消息中識(shí)別第二項(xiàng),其中,第二消息不同于第一消息。
4.如權(quán)利要求3所述的方法,其中,第二消息不包含第一消息的文本。
5.如權(quán)利要求3至4中任何一項(xiàng)所述的方法,其中,識(shí)別與所述搜索查詢相關(guān)的對(duì)話包括在第一消息中識(shí)別第一項(xiàng),而不在第一消息中識(shí)別第二項(xiàng)。
6.如權(quán)利要求5所述的方法,其中,識(shí)別與所述搜索查詢相關(guān)的對(duì)話包括在第二消息中識(shí)別第二項(xiàng),而不在第二消息中識(shí)別第一項(xiàng)。
7.一種服務(wù)器系統(tǒng),包括用于從客戶機(jī)接收搜索查詢的裝置;用于識(shí)別與所述搜索查詢相關(guān)的對(duì)話的裝置,所述對(duì)話具有共享滿足預(yù)先定義的準(zhǔn)則的公共特征集合的兩個(gè)或更多消息以及各自的對(duì)話標(biāo)識(shí)符,其中,識(shí)別與所述搜索查詢相關(guān)的對(duì)話包括識(shí)別作為一個(gè)整體與所述搜索查詢相關(guān)的對(duì)話;以及用于返回所述客戶機(jī)以便作為所述搜索查詢的搜索結(jié)果顯示對(duì)應(yīng)于所識(shí)別的對(duì)話的對(duì)話信息的裝置。
8.如權(quán)利要求7所述的系統(tǒng),其中,所述搜索查詢包括至少第一項(xiàng)和第二項(xiàng)。
9.如權(quán)利要求8所述的系統(tǒng),其中,所述識(shí)別裝置還用于在所述對(duì)話的第一消息中識(shí)別第一項(xiàng)和用于在所述對(duì)話的第二消息中識(shí)別第二項(xiàng),其中,第二消息不同于第一消息。
10.如權(quán)利要求9所述的系統(tǒng),其中,第二消息不包含第一消息的文本。
11.如權(quán)利要求9至10中任何一項(xiàng)所述的系統(tǒng),其中,所述識(shí)別裝置還用于在第一消息中識(shí)別第一項(xiàng),而不在第一消息中識(shí)別第二項(xiàng)。
12.如權(quán)利要求11所述的系統(tǒng),其中,所述識(shí)別裝置還用于在第二消息中識(shí)別第二項(xiàng), 而不在第二消息中識(shí)別第一項(xiàng)。
全文摘要
本發(fā)明公開(kāi)了搜索對(duì)話的方法和服務(wù)器系統(tǒng)。該方法在具有一個(gè)或多個(gè)處理器和存儲(chǔ)由所述一個(gè)或多個(gè)處理器執(zhí)行的程序的存儲(chǔ)器的服務(wù)器執(zhí)行,并且包括從客戶機(jī)接收搜索查詢;識(shí)別與所述搜索查詢相關(guān)的對(duì)話,所述對(duì)話具有共享滿足預(yù)先定義的準(zhǔn)則的公共特征集合的兩個(gè)或更多消息以及各自的對(duì)話標(biāo)識(shí)符,其中,識(shí)別與所述搜索查詢相關(guān)的對(duì)話包括識(shí)別作為一個(gè)整體與所述搜索查詢相關(guān)的對(duì)話;以及返回所述客戶機(jī)以便作為所述搜索查詢的搜索結(jié)果顯示對(duì)應(yīng)于所識(shí)別的對(duì)話的對(duì)話信息。
文檔編號(hào)G06F7/00GK102592209SQ20111041678
公開(kāi)日2012年7月18日 申請(qǐng)日期2005年3月25日 優(yōu)先權(quán)日2004年3月31日
發(fā)明者保羅.T.布克海特, 布賴恩.D.拉科夫斯基, 張北為, 林景宜, 桑杰夫.辛 申請(qǐng)人:谷歌股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
涟源市| 登封市| 洞口县| 夏津县| 盘锦市| 桂阳县| 页游| 万安县| 贞丰县| 红桥区| 吉木乃县| 格尔木市| 沙湾县| 行唐县| 吉林市| 桐柏县| 乐昌市| 比如县| 皋兰县| 红桥区| 临颍县| 鹰潭市| 宁波市| 桐庐县| 千阳县| 襄樊市| 淄博市| 沁源县| 绥滨县| 景泰县| 礼泉县| 贺州市| 青州市| 大冶市| 荣昌县| 犍为县| 织金县| 来宾市| 华蓥市| 彭山县| 汝州市|