亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

與無服務(wù)器在場協(xié)同的系統(tǒng)和方法

文檔序號:6553792閱讀:248來源:國知局
專利名稱:與無服務(wù)器在場協(xié)同的系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)化計算環(huán)境,尤其涉及便于網(wǎng)絡(luò)化計算環(huán)境中的協(xié)同。
技術(shù)背景網(wǎng)絡(luò)化計算環(huán)境已變成工作地點甚至家中的共同特性。這些環(huán)境便于各種各 樣的通信模式,包括電子郵件、即時消息傳送、多媒體文檔服務(wù)器、討論分組、以 及流式音頻和視頻、和臨境交互式感應(yīng)環(huán)境。常規(guī)的軟件應(yīng)用程序已開始利用這些 豐富的通信模式,但是從集成式和可擴展的計算機化協(xié)同平臺的角度而言各自具有 限制和/或缺點。一些常規(guī)計算機軟件應(yīng)用程序提供了多個方面的協(xié)同服務(wù),但不能提供對協(xié) 同者的有效訪問。對協(xié)同者的笨拙和/或有限訪問可呈現(xiàn)對協(xié)同啟動的障礙,從而 阻止對否則功能協(xié)同工具的使用。對協(xié)同者無效訪問的一個方面是一些常規(guī)軟件應(yīng) 用程序不能有效地辨別當前的物理和/或虛擬的位置。另一個方面是一些常規(guī)軟件 應(yīng)用程序不能有效地辨別相關(guān)于協(xié)同功能的兼容性。除了提供各方面協(xié)同服務(wù)的特定版本常規(guī)軟件應(yīng)用程序的功能中的缺點之 外, 一些常規(guī)軟件應(yīng)用程序不能提供可擴展的協(xié)同平臺、框架和/或體系結(jié)構(gòu)。這 并非是小小的失敗。有效的體系結(jié)構(gòu)可持續(xù)多年,并且可被結(jié)合到具有數(shù)百萬個節(jié) 點的網(wǎng)絡(luò)計算環(huán)境中。所建立體系結(jié)構(gòu)的可擴展性、靈活性、可維護性和/或可升 級性的失敗可以是比單個軟件產(chǎn)品版本嚴重得多的問題。發(fā)明內(nèi)容本小節(jié)提出了對本發(fā)明一些實施例的簡化歸納。該歸納不是本發(fā)明的擴展性 縱覽。它并非旨在標識本發(fā)明的關(guān)鍵/重要要素,或劃出本發(fā)明的范圍。其唯一目 的是以簡化方式提出本發(fā)明的一些實施例,作為對此后呈現(xiàn)的更詳細描述的序言。在本發(fā)明的一個實施例中,協(xié)同服務(wù)平臺的無服務(wù)器發(fā)布服務(wù)可便于協(xié)同端 點之間的協(xié)同。該無服務(wù)器發(fā)布服務(wù)可被配置成接受來自協(xié)同端點的通信連接。協(xié)同服務(wù)平臺的用戶可向無服務(wù)器發(fā)布服務(wù)發(fā)布其相關(guān)聯(lián)的協(xié)同在場。例如,用戶的 協(xié)同在場可包括相關(guān)于用戶的有效協(xié)同端點和那些端點上的協(xié)同能力的信息。對所 發(fā)布協(xié)同在場的預(yù)訂可通過無服務(wù)器發(fā)布服務(wù)進行。在本發(fā)明的一個實施例中,協(xié)同在場預(yù)訂消息指定對協(xié)同服務(wù)平臺用戶的協(xié) 同在場的預(yù)訂。協(xié)同在場預(yù)訂消息可從指定對第二用戶的協(xié)同在場的預(yù)訂的第一用 戶處接收??纱_定是否有相關(guān)于第一用戶的預(yù)訂策略。如果沒有與第一用戶相關(guān)的 預(yù)訂策略,則可向第二用戶査詢與第一用戶相關(guān)的預(yù)訂策略。由協(xié)同在場預(yù)訂消息 所指定的預(yù)訂可根據(jù)與第一用戶相關(guān)的預(yù)訂策略被接受。


盡管所附權(quán)利要求具體地闡述了本發(fā)明的特征,但本發(fā)明及其優(yōu)點可結(jié)合附 圖從以下詳細描述中得到最佳的理解,在附圖中圖1是一般地示出可用于實現(xiàn)本發(fā)明一實施例的一示例性計算機系統(tǒng)的示意圖;圖2是示出適于結(jié)合本發(fā)明一實施例的一示例網(wǎng)絡(luò)化計算環(huán)境的示意圖; 圖3是示出根據(jù)本發(fā)明一實施例的用于協(xié)同服務(wù)平臺的一示例計算機軟件體 系結(jié)構(gòu)的框圖;圖4是示出根據(jù)本發(fā)明一實施例的一示例協(xié)同對象模型的一對象建模示圖; 圖5是示出根據(jù)本發(fā)明一實施例的一示例性聯(lián)系人對象的對象界面示圖; 圖6是示出根據(jù)本發(fā)明一實施例的一示例在場對象的對象界面示圖; 圖7是示出根據(jù)本發(fā)明一實施例的一示例發(fā)布對象的對象界面示圖; 圖8是示出根據(jù)本發(fā)明一實施例的一示例能力對象的對象界面示圖; 圖9是示出根據(jù)本發(fā)明一實施例的一示例我的聯(lián)系人(MeContact)對象的對 象界面示圖;圖IO是示出根據(jù)本發(fā)明一實施例的一示例會議對象的對象界面示圖;圖11是示出根據(jù)本發(fā)明一實施例的由協(xié)同服務(wù)平臺執(zhí)行的示例步驟的流程圖;圖12是示出根據(jù)本發(fā)明一實施例的由協(xié)同服務(wù)平臺執(zhí)行的其它示例步驟的流程圖;圖13是示出根據(jù)本發(fā)明一實施例的一示例邀請情形的示意圖;圖14是示出根據(jù)本發(fā)明一實施例的一示例邀請服務(wù)應(yīng)用程序編程接口的示意圖;圖15是示出根據(jù)本發(fā)明一實施例的發(fā)送邀請的示例步驟的流程圖; 圖16是示出根據(jù)本發(fā)明一實施例的由邀請服務(wù)執(zhí)行的發(fā)送邀請的示例步驟的 流程圖;圖17是示出根據(jù)本發(fā)明一實施例的從一般邀請用戶界面對邀請作出響應(yīng)的示 例步驟的流程圖;圖18是示出根據(jù)本發(fā)明一實施例的從應(yīng)用程序?qū)S糜脩艚缑鎸ρ堊鞒鲰憫?yīng) 的示例步驟的流程圖;圖19是示出根據(jù)本發(fā)明一實施例的參與無服務(wù)器在場發(fā)布的示例步驟的流程圖;圖20是示出根據(jù)本發(fā)明一實施例的用于進行協(xié)同在場預(yù)訂的示例步驟的流程圖;圖21是示出根據(jù)本發(fā)明一實施例的用于接受協(xié)同在場預(yù)訂的示例步驟的流程圖。
具體實施方式
在進行本發(fā)明各實施例的描述之前,現(xiàn)在提供對其中可實踐本發(fā)明各個實施 例的計算機的描述。盡管這并不是必需的,但本發(fā)明將在諸如可由計算機執(zhí)行的程 序模塊的計算機可執(zhí)行指令的一般上下文中描述。通常,程序包括執(zhí)行具體任務(wù)或?qū)崿F(xiàn)具體抽象數(shù)據(jù)類型的例程、對象、組件、數(shù)據(jù)結(jié)構(gòu)等。如在本文中所使用的, 術(shù)語"程序"可表示單個程序模塊或協(xié)調(diào)動作的多個程序模塊。術(shù)語"計算機"和 "計算設(shè)備"如在本文中所使用的包括電子地執(zhí)行一個或多個程序的任何設(shè)備,諸 如個人計算機(PC)、手持式設(shè)備、多處理器系統(tǒng)、基于微處理器的可編程消費電器、 網(wǎng)絡(luò)PC、小型計算機、平板PC、膝上型計算機、具有微處理器或微控制器的消費 裝置、路由器、網(wǎng)關(guān)、集線器等。本發(fā)明還可在任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠程處 理設(shè)備執(zhí)行的分布式計算環(huán)境中實踐。在分布式計算環(huán)境中,程序可置于本地和遠 程存儲器存儲設(shè)備中。參看圖1,示出了其上可實現(xiàn)本文中所述的本發(fā)明各發(fā)明的計算機102的基本 配置的一個示例。在其最基本配置中,計算機102通常包括至少一個處理單元104 和存儲器106。處理單元104執(zhí)行根據(jù)本發(fā)明各個實施例執(zhí)行任務(wù)的指令。在執(zhí)行 這些任務(wù)時,處理單元104可向計算機102的其它部分以及計算機102的外部設(shè)備發(fā)送電子信號以產(chǎn)生某些結(jié)果。取決于計算機102的確切配置和類型,存儲器106可以是易失性的(諸如RAM)、非易失性的(諸如ROM或閃存)、或兩者的組合。 該最基本配置在圖1中由虛線108示出。計算機102也可具有附加特征/功能。例如,計算機102還可包括附加存儲(可 移動110和/或不可移動112),包括但不限于磁盤或光盤或帶。計算機存儲介質(zhì)包 括以用于儲存包括計算機可執(zhí)行指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的信息的任 何方法或技術(shù)實現(xiàn)的易失性和非易失性、可移動和不可移動的介質(zhì)。計算機存儲介 質(zhì)包括但不限于RAM、 ROM、 EEPROM、閃存、CD-ROM、數(shù)字多功能盤(DVD) 或其它光學存儲、磁盒、磁帶、磁盤存儲或其它磁性存儲設(shè)備、或可用于儲存所需 信息并可由計算機102訪問的任何其它介質(zhì)。任何這樣的計算機存儲介質(zhì)可以是計 算機102的部分。計算機102較佳地還包含允許設(shè)備與諸如遠程計算機116的其它設(shè)備通信的 通信連接116。通信連接是通信介質(zhì)的一個示例。通信介質(zhì)通常體現(xiàn)為計算機可讀 指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或諸如載波的經(jīng)調(diào)制數(shù)據(jù)信號或其它傳輸機制中的其 它數(shù)據(jù),并包括任何信息傳送介質(zhì)。作為示例而非限制,術(shù)語"通信介質(zhì)"包括諸 如聲學、RF、紅外和其它無線介質(zhì)的無線介質(zhì)。術(shù)語"計算機可讀介質(zhì)"如在本 文中所使用地包括計算機存儲介質(zhì)和通信介質(zhì)。計算機102還可具有諸如鍵盤/小鍵盤、鼠標、筆、語音輸入設(shè)備、觸摸式輸 入設(shè)備等輸入設(shè)備118。還可包括諸如顯示器、揚聲器、打印機等輸出設(shè)備120。 所有這些設(shè)備都是本領(lǐng)域中眾所周知的,并且無需在此贅述。在以下的描述中,本發(fā)明將參照由一個或多個計算設(shè)備執(zhí)行的動作和操作的 符號表示進行描述,除非另有指明。這樣,可以理解,有時稱為計算機正在執(zhí)行的 這些動作和操作包括由計算機的處理單元對以結(jié)構(gòu)化形式表示數(shù)據(jù)的電信號的處理。該處理轉(zhuǎn)換數(shù)據(jù)或?qū)⑵浔4嬖谟嬎銠C的存儲器系統(tǒng)中的單元內(nèi),以本領(lǐng)域技術(shù)人員能很好理解的方式重新配置或以其它方式改變計算機的操作。維護數(shù)據(jù)的數(shù)據(jù) 結(jié)構(gòu)是具有根據(jù)數(shù)據(jù)格式定義的特定屬性的存儲器物理單元。然而,盡管本發(fā)明在前述上下文中進行描述但這并不表示是限制性的,因為本領(lǐng)域技術(shù)人員將理解以下 描述的各種動作和操作也可用硬件來實現(xiàn)。在本發(fā)明一實施例中,計算機軟件體系結(jié)構(gòu)提供一可擴展、靈活、可維護和 可升級的協(xié)同平臺。該體系結(jié)構(gòu)的各個方面可被結(jié)合到一適當?shù)木W(wǎng)絡(luò)化計算環(huán)境 中。該體系結(jié)構(gòu)可啟用和/或擴展與常規(guī)計算機軟件應(yīng)用程序的集成式協(xié)同。特別地,該體系結(jié)構(gòu)可提供綜合的協(xié)同聯(lián)系人管理,包括例如相關(guān)于可用協(xié)同活動的當 前聯(lián)系人在網(wǎng)絡(luò)化計算環(huán)境中的出現(xiàn)和當前聯(lián)系人的能力。圖2示出適于結(jié)合本發(fā)明一實施例的一示例網(wǎng)絡(luò)化計算環(huán)境200。在網(wǎng)絡(luò)化計算環(huán)境中,網(wǎng)絡(luò)202將計算機204、 206和208通信連接到網(wǎng)絡(luò)化集線器210。網(wǎng) 絡(luò)202可以是局域網(wǎng)(LAN)、城域網(wǎng)(MAN)、廣域網(wǎng)(WAN)、個人局域網(wǎng)(PAN) 或其組合。網(wǎng)絡(luò)202可結(jié)合任何適當?shù)木W(wǎng)絡(luò)化組件,諸如集線器、網(wǎng)關(guān)、路由器、 網(wǎng)橋、端口等、以及任何適當?shù)挠嬎銠C可讀介質(zhì)。例如,計算機204、 206、 208 和網(wǎng)絡(luò)化集線器210各自可以是計算機102 (圖l)的實例。網(wǎng)絡(luò)化集線器210可與計算機212、214和216通信連接。該網(wǎng)絡(luò)化集線器210 與計算機212、 214和216—起可被視為是子網(wǎng)絡(luò)或子網(wǎng)218的一個示例,盡管當 然不是限制性示例。計算機212、 214和216被稱為是在同一子網(wǎng)上,并且因此可 享受相對于彼此的優(yōu)先網(wǎng)絡(luò)通信。例如,即使各計算機204、 206、 208、 212、 214 和216彼此可發(fā)送點對點類消息,但子網(wǎng)218可被配置成子網(wǎng)218中的廣播類消息 由子網(wǎng)218內(nèi)的那些計算機212、 214和216接收。協(xié)同平臺的可擴展、靈活、可維護和/或可升級屬性可源自其模塊化結(jié)構(gòu)、其 整體的模塊化結(jié)構(gòu)、模塊之間的交互方式和/或模塊化結(jié)構(gòu)的整體交互模式的一個 或多個方面。圖3示出根據(jù)本發(fā)明一實施例的一示例計算機軟件體系結(jié)構(gòu)300。該 體系結(jié)構(gòu)300的每個方面可在各計算機204、 206、 208、 212、 214和216 (圖2) 上呈現(xiàn),但是本發(fā)明的各個實施例并不受限于此。體系結(jié)構(gòu)300的各個方面可適當 地分布在網(wǎng)絡(luò)化計算環(huán)境200的任何適當子集上,包括整個的網(wǎng)絡(luò)化計算環(huán)境200。 不同版本的體系結(jié)構(gòu)300可出現(xiàn)在不同計算機上,并且各個版本的體系結(jié)構(gòu)300 與每個其它版本的體系結(jié)構(gòu)300的兼容程度可變化。體系結(jié)構(gòu)300可包括協(xié)同服務(wù)平臺302。該協(xié)同服務(wù)平臺302可包括聯(lián)系人管 理服務(wù)304、發(fā)布服務(wù)306、信令服務(wù)308、活動服務(wù)310、數(shù)據(jù)共享服務(wù)312、認 證服務(wù)314和連接服務(wù)316。聯(lián)系人管理服務(wù)304可包括聯(lián)系人存儲318、在場存 儲320、以及聯(lián)系人位置服務(wù)322。發(fā)布服務(wù)306可包括同步服務(wù)324。信令服務(wù) 308可包括邀請服務(wù)326。活動服務(wù)310可包括音頻/視覺(A/V)服務(wù)328。連接 服務(wù)316可包括對等(P2P)服務(wù)330,以及常規(guī)傳輸控制協(xié)議和因特網(wǎng)協(xié)議(TCP/IP) 堆棧332。各個服務(wù)304、 306、 308、 310、 312、 314、 316可包括和/或結(jié)合到能收 發(fā)實現(xiàn)該服務(wù)的消息的對等設(shè)備。在本發(fā)明一實施例中,聯(lián)系人管理服務(wù)304提供對協(xié)同者,即協(xié)同服務(wù)平臺302的用戶的有效訪問。例如,聯(lián)系人管理服務(wù)304可向協(xié)同服務(wù)平臺302的部分 或全部用戶提供聯(lián)系人信息。聯(lián)系人管理服務(wù)304可維護一個或多個數(shù)據(jù)存儲中的 聯(lián)系人數(shù)據(jù)庫。每個聯(lián)系人可以是潛在的協(xié)同者,即協(xié)同服務(wù)平臺的用戶可嘗試參 與和每個聯(lián)系人的一個或多個協(xié)同活動。聯(lián)系人管理服務(wù)304可提供包括圖形用戶界面(GUI)的一個或多個用戶界面,該GUI提供聯(lián)系人例如以供用戶選擇,和/ 或使得該用戶能相對于一特定聯(lián)系人調(diào)用協(xié)同服務(wù)平臺302動作。聯(lián)系人存儲318可儲存聯(lián)系人對象和"MeContact"對象(以下參照圖4更詳 細地描述)。在場存儲320可儲存聯(lián)系人對象的在場對象(也在以下參照圖4更詳 細地描述)。在本發(fā)明一實施例中,在場數(shù)據(jù)比聯(lián)系人數(shù)據(jù)更頻繁地改變,使得單 獨的數(shù)據(jù)存儲318、 320可針對不同的對象更新頻率最優(yōu)化。聯(lián)系人位置服務(wù)322可相對于一給定聯(lián)系人提供各種位置數(shù)據(jù)的一種或多種。 物理靠近可以是聯(lián)系人位置的一個方面,例如物理位置的一個或多個代理可用來估 計聯(lián)系人與用戶的物理距離。無線電接收機處的信號強度是物理距離代理的一個示 例。虛擬位置可以是聯(lián)系人位置的另一個方面。例如,聯(lián)系人可在諸如圖2網(wǎng)絡(luò) 202的一個或多個網(wǎng)絡(luò)上、和/或諸如計算機204、 206、 208、 212、 214和216的一 個或多個網(wǎng)絡(luò)節(jié)點上活動。此外,聯(lián)系人可以是注冊但不活動的、或在線但未現(xiàn)的、 或具有某些其它適當?shù)奈恢脿顟B(tài)。聯(lián)系人位置服務(wù)322可查詢適當?shù)淖员砗?或 啟動例如對等搜索或?qū)Φ让Q解析機制,以便于定位一特定聯(lián)系人。發(fā)布服務(wù)306可提供對聯(lián)系人所發(fā)布的數(shù)據(jù)的訪問。在本發(fā)明一實施例中, 感興趣的用戶可預(yù)訂聯(lián)系人發(fā)布的對象,并在發(fā)布聯(lián)系人更新所發(fā)布對象的任何時 候接收通知。同步服務(wù)324可負責維護發(fā)布預(yù)訂的數(shù)據(jù)庫。特別地,發(fā)布服務(wù)206 可提供對聯(lián)系人所發(fā)布的在場信息的訪問。信令服務(wù)308可提供在網(wǎng)絡(luò)化計算環(huán)境200 (圖2)中出現(xiàn)的聯(lián)系人之間的協(xié) 同會議的建立和終止、以及會議進行中參數(shù)的更新。在本發(fā)明一實施例中,協(xié)同會 議的建立、更新和終止是根據(jù)發(fā)布/預(yù)訂語義提供的。在本發(fā)明一實施例中,信令 服務(wù)308結(jié)合了會話啟動協(xié)議(SIP)的實現(xiàn),諸如由Handley等人在因特網(wǎng)工程 任務(wù)組(IETF) i青求注解(RFC) 2543 (1999年3月)中的"SIP: Session Initiation Protocol" ("SIP:會話啟動協(xié)議")中描述的會話啟動協(xié)議。邀請服務(wù)326可使邀請和相關(guān)消息能向聯(lián)系人往返發(fā)送。例如,訪問一計算 機212上的網(wǎng)絡(luò)化計算環(huán)境200 (圖2)的系統(tǒng)用戶可邀請某其它計算機204、 206、 208、 212、 214和/或216上的聯(lián)系人參與一協(xié)同活動。邀請服務(wù)326可利用聯(lián)系人位置服務(wù)322來定位聯(lián)系人并傳遞邀請。邀請服務(wù)326可包括諸如圖形用戶界面 (GUI)的各種用戶界面,用于向被邀請人呈現(xiàn)邀請細節(jié),并使該被邀請人能接受、 拒絕和/或明確地忽略該邀請。一示例邀請服務(wù)326在以下參照圖13更詳細地描述。 活動服務(wù)310可實現(xiàn)協(xié)同活動、和/或提供對協(xié)同應(yīng)用程序在協(xié)同服務(wù)平臺302 中的集成的支持。例如,活動服務(wù)310可向常規(guī)協(xié)同應(yīng)用程序提供協(xié)同服務(wù)平臺 302順應(yīng)應(yīng)用程序編程接口 (API)。順應(yīng)API可包括用于相對于活動能力査詢一特 定聯(lián)系人或計算機204、 206、 208、 212、 214、 216 (圖2),以及用于確定應(yīng)用程 序?qū)S醚堃蟮墓δ?。音頻/視覺服務(wù)328是適于結(jié)合到活動服務(wù)310中的協(xié)同 服務(wù)的一個示例。數(shù)據(jù)共享服務(wù)312可使數(shù)據(jù)能以包括文件、文檔、流和對象的任意適當格式 共享。該數(shù)據(jù)共享服務(wù)312可提供數(shù)據(jù)傳送、數(shù)據(jù)復制和/或數(shù)據(jù)同步。數(shù)據(jù)共享 可基于聯(lián)系人、參與活動、參與會議、和/或諸如網(wǎng)絡(luò)化計算環(huán)境200 (圖2)用戶 組的任何適當訪問控制列表(ACL)條目來啟用和禁用。認證服務(wù)314可生成并驗證認證憑證,例如聯(lián)系人與其它活動和會議參與者 的認證憑證。認證服務(wù)314可使聯(lián)系人能被分類成受信任聯(lián)系人和不受信任聯(lián)系 人。認證服務(wù)314可使聯(lián)系人與聯(lián)系人位置無關(guān)、或根據(jù)復雜的網(wǎng)絡(luò)化計算環(huán)境 200 (圖2)的出現(xiàn)而受到信任。在本發(fā)明一實施例中,連接服務(wù)316使協(xié)同服務(wù)平臺302服務(wù)實例之間能通 過網(wǎng)絡(luò)化計算環(huán)境200 (圖2)通信,例如計算機212上的第一信令服務(wù)308實例 與計算機208上的第二信令服務(wù)308實例之間。連接服務(wù)316的通信工具可與應(yīng)用 程序編程接口 (API) —起可用,使得其它協(xié)同服務(wù)平臺302服務(wù)304、 306、 310、 312、 314可與基礎(chǔ)傳輸機制無關(guān)地在實例之間通信。連接服務(wù)316可包括TCP/IP堆棧332和/或更高級通信應(yīng)用程序編程接口 ,諸 如2005年3月的微軟開發(fā)者網(wǎng)絡(luò)(MSDN )庫中的Microsoft Windows⑧平臺軟 件開發(fā)工具包(SDK)的Windows⑧套接字2部分中描述的Microsoft Windows 套接字2 (Winsock) API。對等(P2P)服務(wù)330可在網(wǎng)絡(luò)計算環(huán)境200的覆蓋網(wǎng) 中提供連接。例如,對等服務(wù)330可根據(jù)2005年3月的微軟開發(fā)者網(wǎng)絡(luò)(MSDN⑧) 庫中的Microsoft Windows⑧平臺軟件開發(fā)工具包(SDK)的Windows⑧對等網(wǎng)絡(luò) 化部分中描述的對等應(yīng)用程序編程接口提供,包括圖形化、分組、身份管理器、以 及對等名稱解析協(xié)議(PNRP)名空間提供者應(yīng)用程序編程接口。協(xié)同服務(wù)平臺302的服務(wù)304、 306、 308、 310、 312、 314和316可與一組編程對象實現(xiàn),該組編程對象包括在協(xié)同對象模型中相互關(guān)連的一組協(xié)同對象。圖4 示出根據(jù)本發(fā)明一實施例的一組示例協(xié)同對象和一示例協(xié)同對象模型400。該協(xié)同對象模型400可包括聯(lián)系人對象402、在場對象404、 MeContact對象406和 MyPresence (我的在場)對象408、端點對象410、能力對象412、會議對象414、 活動對象416、以及發(fā)布對象418。當然,協(xié)同服務(wù)平臺302可包括各類協(xié)同對象 的許多實例402、 404、 406、 408、 410、 412、 414、 416和418。聯(lián)系人對象402可結(jié)合用于表示協(xié)同服務(wù)平臺302 (圖3)的協(xié)同參與者和/ 或用戶的適當屬性。特別地,聯(lián)系人對象402可引用一協(xié)同在場,例如聯(lián)系人在網(wǎng) 絡(luò)化計算環(huán)境200 (圖2)的出現(xiàn)。在本發(fā)明一實施例中,聯(lián)系人對象402通過引 用在場對象404的一個實例引用一協(xié)同在場。一示例聯(lián)系人對象402在以下參照圖 5更詳細地描述。在場對象404可結(jié)合用于表示協(xié)同在場的適當屬性,例如網(wǎng)絡(luò)化計算環(huán)境200 的一組計算機204、 206、 208、 212、 214和/或216 (圖2),在該環(huán)境上特定協(xié)同 服務(wù)平臺302用戶在最近過去的某個時刻活動,其中"最近"過去可取決于協(xié)同環(huán) 境從秒到小時、天、甚至年地變化。在場對象404可引用表示網(wǎng)絡(luò)化計算環(huán)境200 位置的一個或多個端點對象410。端點對象410無需與例如網(wǎng)絡(luò)化計算環(huán)境200的 計算機204、 206、 208、 212、 214、 216——對應(yīng),因為端點對象410可與網(wǎng)絡(luò)化 計算環(huán)境200的覆蓋網(wǎng)中的對等體相對應(yīng)。在場對象404可進一步引用表示例如一個或多個協(xié)同端點上的協(xié)同能力、和/ 或與在場對象404相關(guān)聯(lián)的部分或全部端點上的聚集協(xié)同能力的零個或多個能力 對象412實例。此外,在場對象404可引用零個或多個發(fā)布對象418實例。 一示例 在場對象404在以下參照圖6更詳細地描述。 一示例發(fā)布對象418在以下參照圖7 更詳細地描述。 一示例能力對象412在以下參照圖8更詳細地描述。MeContact對象406可以是一類聯(lián)系人對象402,并且可多態(tài)地繼承聯(lián)系人對 象402的屬性和行為。由于協(xié)同服務(wù)平臺用戶自己的聯(lián)系信息相對于其它用戶的聯(lián) 系信息可起到一種特定的作用,因此MeContact對象406可與聯(lián)系人對象402相區(qū) 分。例如,MeContact對象406可引用表示該特定用戶的己知協(xié)同聯(lián)系人的零個或 多個聯(lián)系人對象402實例。MeContact對象406無需引用例如其它MeContact對象 406實例。在本發(fā)明一實施例中,歸因于協(xié)同服務(wù)平臺302 (圖3)的可擴展性、 靈活性、可維護性和/或可升級性可避免不必要的復雜性。MeContact對象406可進一步引用MyPresence對象408實例。MyPresence對象408可以是一類在場對象404,并可多態(tài)地繼承在場對象404的屬性和行為。再 一次,由于協(xié)同服務(wù)平臺用戶自己的在場相對于其它用戶的在場可起到一種特定的 作用,因此MyPresence對象408可與在場對象404相區(qū)分。例如,在本發(fā)明一實 施例中,用戶可明確地更新他們自己的MyPresence對象408實例,而不是其它用 戶的在場對象404實例。此外,MeContact對象406可引用表示與MeContact對象406相關(guān)聯(lián)的用戶以 及其它協(xié)同服務(wù)平臺用戶當前和/或最近參加的協(xié)同會議的零個或多個會議對象 414實例。會議對象414可引用表示協(xié)同活動的一個或多個活動對象416實例。在 本發(fā)明一實施例中,會議對象414是一類活動對象416,并可多態(tài)地繼承活動對象 416的屬性和行為。作為是一類活動對象416的結(jié)果,會議對象414所引用的活動 對象416實例可以是會議對象414實例。 一示例MeContact對象406在以下參照圖 9更詳細地描述。 一示例會議對象414在以下參照圖10更詳細地描述。各個協(xié)同對象402、 404、 406、 408、 410、 412、 414、 416和418可提供應(yīng)用 程序編程接口,用于創(chuàng)建和刪除協(xié)同對象402、 404、 406、 408、 410、 412、 414、 416和418實例,以及用于適當?shù)夭樵兒筒倏v協(xié)同對象402、 404、 406、 408、 410、 412、 414、 416和418屬性。在本發(fā)明一實施例中,其中協(xié)同對象402、 404、 406、 408、 410、 412、 414、 416和418被描述為引用其它協(xié)同對象402、 404、 406、 408、 410、 412、 414、 416和418,被引用的對象或其副本可相反被結(jié)合到引用對象中和 /或與之結(jié)合成一體。 一個編程對象可用任何適當編程引用機制來引用另一個編程 對象。適當?shù)木幊桃脵C制包括指針、顯式引用、相關(guān)聯(lián)散列碼及其等效體、以及 為專門目的設(shè)計的編程語言功能部件?,F(xiàn)在參照圖4更詳細地描述以上所介紹的編程對象402、 404、 406、 408、 410、 412、 414、 416和418。每個編程對象402、 404、 406、 408、 410、 412、 414、 416 和418可包括一個或多個應(yīng)用程序編程接口元素。每個應(yīng)用程序編程接口元素可包 括一種或多種接口規(guī)范,這些接口規(guī)范指定包括協(xié)同服務(wù)平臺302 (圖3)的計算 機102 (圖1)系統(tǒng)組件可配置、控制編程對象402、 404、 406、 408、 410、 412、 414、 416和418和/或與之交互的一種方式。如對本領(lǐng)域技術(shù)人員顯而易見的,接 口規(guī)范可包括對象屬性規(guī)范、變量規(guī)范、功能調(diào)用規(guī)范、程序?qū)ο笠?guī)范、諸如請求 /響應(yīng)消息對的消息規(guī)范、和/或任何其它適當?shù)木幊探涌谝?guī)范。圖5示出根據(jù)本發(fā)明一實施例的一實例聯(lián)系人對象500。聯(lián)系人對象500適于 結(jié)合到系統(tǒng)對象模型400 (圖4)中。聯(lián)系人對象500可結(jié)合應(yīng)用程序編程接口元素,包括名字元素502、在場元素504、伙伴標記元素506、以及靠近元素508。名字元素502可包括用于與聯(lián)系人對象500相關(guān)聯(lián)的聯(lián)系人的友好名字。該 友好名字可被編碼為例如富文本字符串。在場元素504可包括對在場對象404 (圖 4)實例的引用?;锇闃擞浽?06可包括與聯(lián)系人對象500相關(guān)聯(lián)的聯(lián)系人被分類為"伙伴" 類聯(lián)系人的指示符。被分類為"伙伴"的聯(lián)系人可以各種各樣的方式有特權(quán)。例如, 伙伴可以是受信任的聯(lián)系人,伙伴可被給予例如邀請優(yōu)先權(quán)的優(yōu)先權(quán),并且伙伴可 被自動地包括在協(xié)同服務(wù)平臺用戶向其預(yù)訂例如在場數(shù)據(jù)的一組聯(lián)系人中?;锇轭?聯(lián)系人在計算上可比普通聯(lián)系人更為昂貴,且其數(shù)量是受限制的,例如在伙伴標記 應(yīng)用程序編程接口元素506中嵌入一測試??拷?08可包括物理靠近度量和/或虛擬靠近度量。例如,物理靠近度量 可以是在無線網(wǎng)絡(luò)接口上接收的信號強度的度量。當然,靠近應(yīng)用程序編程接口元 素508無需受限于響應(yīng)靠近査詢的單個度量。例如,靠近査詢可請求一原始靠近度 量、時間平均靠近度量、量化靠近度量("信號強度柱形圖")和/或任何適當靠近 度量。圖6示出根據(jù)本發(fā)明一實施例的一示例在場對象600。該在場對象600適于結(jié) 合在協(xié)同對象模型400 (圖4)中。在場對象600包含包括一富文本描述元素602、 端點元素604、聚集狀態(tài)元素606、聚集能力元素608、發(fā)布對象元素610、新活動 邀請元素612、現(xiàn)有活動邀請元素614、按類尋找能力元素616、按類尋找發(fā)布對 象元素618、以及發(fā)布對象元素620的應(yīng)用程序編程接口。富文本描述元素602可包括描述與在場對象600相關(guān)聯(lián)的網(wǎng)絡(luò)化計算環(huán)境200 (圖2)在場的富文本串。簡單的實例包括"現(xiàn)在在9號大樓"、"在玩Halo⑧第4 級"和"不在"。端點元素604可包括在一個或多個協(xié)同活動中活動、最近活動、 和/或能夠變成活動參與者的的一組協(xié)同端點。適當協(xié)同端點的示例包括計算機 204、 206、 208、 212、 214和216、以及網(wǎng)絡(luò)化計算環(huán)境200的覆蓋網(wǎng)的對等體。聚集狀態(tài)元素606可包括代表一組協(xié)同端點上協(xié)同在場的聚集在場狀態(tài)指示 符。每個協(xié)同端點可具有相關(guān)聯(lián)的在場狀態(tài),例如在線、走開、外出午餐、馬上回 來、空閑、電話中或忙碌。與一組端點相關(guān)聯(lián)的聚集在場狀態(tài)無需與該組中任一端 點相關(guān)聯(lián)的狀態(tài)相同。甚至當聚集在場狀態(tài)與該組中的至少一個端點相同時,它也 可與其它的一個或多個不同。聚集在場狀態(tài)可用各種聚集在場狀態(tài)算法的一種或多種來確定。在場狀態(tài)水平可分級,且該聚集狀態(tài)可被設(shè)置成一組端點中的最高分級狀態(tài)。聚集狀態(tài)可以是 各個狀態(tài)值的加權(quán)平均,或者是各個狀態(tài)值的其它適當線性或非線性變換。各個狀 態(tài)值還可在變換前適當排序。所利用的聚集在場狀態(tài)算法可取決于該組中各個端點 的數(shù)量。聚集能力元素608可包括與協(xié)同在場相關(guān)聯(lián)的一個聚集能力集合。協(xié)同在場中的各個端點可具有與之相關(guān)聯(lián)的一組能力,例如相關(guān)于協(xié)同活動的能力。這些聚 集能力可以是各個端點的各個能力的簡單聚集。另一方面,聚集能力的集合可受限 于在各個端點上呈現(xiàn)的那些能力。按照更為復雜的聚集能力確定算法,這些極限的 組合是可能的。例如,聚集能力的集合可以是加權(quán)平均處理的結(jié)果,或者是各個端 點的能力的其它適當線性或非線性變換。此外,聚集能力級別或百分比可與該個集 合的聚集能力中的每個能力相關(guān)聯(lián)。發(fā)布對象元素610可包括與協(xié)同在場相關(guān)聯(lián)的一個發(fā)布對象集合。盡管能力 對象412 (圖4)可以是一類發(fā)布對象418,但兩者的區(qū)別之處在于與能力對象實 例412相關(guān)聯(lián)的能力通常是長期的(例如在數(shù)天、數(shù)周甚至數(shù)年的數(shù)量級上),而 與基本發(fā)布對象418實例相關(guān)聯(lián)的發(fā)布數(shù)據(jù)通常是短期的(例如在數(shù)秒、數(shù)分鐘或 數(shù)小時的數(shù)量級上)。該區(qū)別可用于最優(yōu)化計算機系統(tǒng)性能。新活動邀請元素612可使協(xié)同服務(wù)平臺302(圖3)用戶能邀請與在場對象600 相關(guān)聯(lián)的聯(lián)系人參與一新的協(xié)同活動。這可能是用于主宿該活動的關(guān)聯(lián)會議尚不存 在,并且如果邀請被接受則將創(chuàng)建一個關(guān)聯(lián)會議。該邀請可被傳遞給端點元素604 所引用的每個端點,僅傳遞給與在線在場狀態(tài)相關(guān)聯(lián)的那些端點,邀請可被按一次 序傳遞給與協(xié)同在場相關(guān)聯(lián)的每個端點,例如按根據(jù)與該次序中每個端點相關(guān)聯(lián)的 在場狀態(tài)所確定的次序,或其它適當?shù)难垈鬟f策略。在邀請聯(lián)系人加入現(xiàn)有會議和/或活動時,現(xiàn)有活動邀請應(yīng)用程序編程接口元 素614可以是優(yōu)選的。當己建立了一個會議和/或活動時, 一些協(xié)同參數(shù)可能是不 可協(xié)商的,或者是較少可協(xié)商的,例如僅在由當前參與者所使用的協(xié)同參數(shù)所確定 的范圍內(nèi)可協(xié)商。此外,較少的靈活性可限制有資格參與、因而是接收邀請的候選 人的端點的在場。按類尋找能力元素616可使協(xié)同服務(wù)平臺302(圖3)用戶能向與在場對象600 相關(guān)聯(lián)的在場查詢與多個能力類型的一個或多個相關(guān)聯(lián)的能力。能力類型的示例包 括諸如聊天、音頻和視頻的應(yīng)用程序類型,諸如音頻輸出、音頻輸入、視頻輸出、 視頻輸入的應(yīng)用程序能力,諸如帶寬、音頻質(zhì)量和視頻分辨率的端點資源,或任何適當?shù)膮f(xié)同能力類型。按類尋找能力元素616可用各個端點的能力和/或聚集在場 能力對查詢作出響應(yīng)。按類尋找發(fā)布對象元素618可使協(xié)同服務(wù)平臺302 (圖3)用戶能向與在場對 象600相關(guān)聯(lián)的在場査詢與該在場相關(guān)聯(lián)的發(fā)布對象,例如發(fā)布對象元素610可訪 問的發(fā)布對象。發(fā)布對象類型可根據(jù)關(guān)聯(lián)富文本串確定。例如,那些與同一富文本 串相關(guān)聯(lián)的發(fā)布對象418 (圖4)實例可被確定為是同一類型。發(fā)布對象元素620可使與在場相關(guān)聯(lián)的數(shù)據(jù)能夠發(fā)布。例如,可更新由發(fā)布 對象元素610所維護的一組在場對象。在本發(fā)明一實施例中,發(fā)布對象應(yīng)用程序編 程接口元素620可被結(jié)合到發(fā)布對象應(yīng)用程序編程接口元素610中。圖7示出根據(jù)本發(fā)明一實施例的一示例發(fā)布對象700。該發(fā)布對象700適于結(jié) 合到協(xié)同對象模型400 (圖4)中。發(fā)布對象700可結(jié)合應(yīng)用程序編程接口元素, 包括獲授權(quán)用戶元素702以及發(fā)布數(shù)據(jù)元素704。獲授權(quán)用戶元素702可引用與獲授權(quán)預(yù)訂關(guān)聯(lián)于發(fā)布對象700的數(shù)據(jù)的聯(lián)系 人相關(guān)聯(lián)的一個或多個聯(lián)系人對象402 (圖4)實例。數(shù)據(jù)訪問控制可以是粗粒度 的,例如允許或阻止,或者是細粒度的,例如包括對數(shù)據(jù)創(chuàng)建、讀取、更新和刪除 特權(quán)的控制。發(fā)布數(shù)據(jù)元素708可維護與發(fā)布對象700相關(guān)聯(lián)的一組發(fā)布數(shù)據(jù)。任 何一組適當?shù)臄?shù)據(jù)可與發(fā)布對象700相關(guān)聯(lián)地發(fā)布。圖8示出根據(jù)本發(fā)明一實施例的一示例能力對象800。該能力對象800適于結(jié) 合到協(xié)同對象模型400 (圖4)中。能力對象800可結(jié)合應(yīng)用程序編程接口元素, 包括關(guān)聯(lián)應(yīng)用程序元素802以及應(yīng)用程序數(shù)據(jù)元素804。關(guān)聯(lián)應(yīng)用程序元素802可包括對實現(xiàn)與能力對象800相關(guān)聯(lián)的能力的一組協(xié) 同應(yīng)用程序的引用。應(yīng)用程序數(shù)據(jù)元素804可包括配置關(guān)聯(lián)應(yīng)用程序元素802所引 用的那組協(xié)同應(yīng)用程序的每一個所需的數(shù)據(jù)和/或數(shù)據(jù)規(guī)范。圖9示出根據(jù)本發(fā)明一實施例的一示例MeContact對象900。該MeContact 對象卯0適于結(jié)合到協(xié)同對象模型400 (圖4)中。MeContact對象900可結(jié)合應(yīng) 用程序編程接口元素,包括聯(lián)系人元素卯2、伙伴元素904、獲授權(quán)用戶元素906、 活動用戶元素908、會議元素910、按類尋找能力元素912、以及按類尋找發(fā)布對 象元素914。聯(lián)系人元素卯2可包括對與為關(guān)聯(lián)于MeContact對象900的協(xié)同服務(wù)平臺302 (圖3)用戶所知的聯(lián)系人相關(guān)聯(lián)的一組聯(lián)系人對象402 (圖4)實例的引用?;?伴元素904可包括對與為協(xié)同服務(wù)平臺302 (圖3)用戶所知的、并且也是例如由聯(lián)系人對象500的伙伴標記元素506 (圖5)所指示的伙伴類聯(lián)系人的聯(lián)系人相關(guān) 聯(lián)的一組聯(lián)系人對象402 (圖4)實例的引用。僅僅在伙伴元素904所引用的那組 聯(lián)系人對象402實例中的出現(xiàn)指示該關(guān)聯(lián)聯(lián)系人是一伙伴類聯(lián)系人。由聯(lián)系人元素 902和伙伴元素904所引用的一組聯(lián)系人對象402實例可重疊,但在本發(fā)明的至少 一個實施例中這些組是排他性的。獲授權(quán)用戶元素906可包括對與獲授權(quán)預(yù)訂關(guān)聯(lián)于MeContact對象900的發(fā) 布數(shù)據(jù)(諸如能力數(shù)據(jù))的聯(lián)系人相關(guān)聯(lián)的一組聯(lián)系人對象402 (圖4)實例的引 用。發(fā)布數(shù)據(jù)訪問控制可以是粗粒度的,例如阻止或允許訪問所有發(fā)布數(shù)據(jù),或者 是細粒度的,例如對每個發(fā)布對象418的創(chuàng)建、讀取、更新和刪除許可,或其組合?;顒佑脩粼?08可包括對與活動預(yù)訂由關(guān)聯(lián)于MeContact對象卯0的協(xié)同 服務(wù)平臺302 (圖3)用戶所發(fā)布數(shù)據(jù)的聯(lián)系人相關(guān)聯(lián)的一組聯(lián)系人對象402實例 的引用。當然,由活動用戶元素908所引用的聯(lián)系人對象402實例應(yīng)當與獲授權(quán)用 戶元素906所維護的許可相一致。會議元素910可包括對與關(guān)聯(lián)于MeContact對象900的協(xié)同服務(wù)平臺302 (圖 3)用戶當前參與的、最近參與的、和/或馬上將參與的會議相關(guān)聯(lián)的一組會議對象 414 (圖4)實例的引用。按類尋找能力元素912可使協(xié)同服務(wù)平臺302(圖3)用戶向關(guān)聯(lián)于MeContact 對象900的聯(lián)系人查詢與多個能力類型的一個或多個相關(guān)聯(lián)的能力。例如,按類尋 找能力元素912可查詢由聯(lián)系人元素902、伙伴元素904和/或MeContact對象900 本身所引用的聯(lián)系人對象402 (圖4)實例。按類尋找能力元素912可用各個端點 的能力和/或聚集能力對該查詢作出響應(yīng)。按類尋找發(fā)布對象元素914可使用戶向 關(guān)聯(lián)于MeContact對象900的聯(lián)系人查詢發(fā)布數(shù)據(jù)。與按類尋找能力元素912—樣, 按類尋找發(fā)布對象元素914可查詢由聯(lián)系人元素卯2、伙伴元素904和/或MeContact 對象900本身所引用的發(fā)布對象418實例。圖10示出根據(jù)本發(fā)明一實施例的一示例會議對象1000。該會議對象1000適 于結(jié)合到協(xié)同對象模型400 (圖4)中。會議對象1000可結(jié)合應(yīng)用程序編程接口元 素,包括會話信息元素1002、活動元素1004、管理員元素1006、獲授權(quán)成員元素 1008、和啟動活動元素1010。在本發(fā)明一實施例中,例如與會議對象1000相關(guān)聯(lián)會議的會議有包括組織、 管理和/或維護一個或多個協(xié)同服務(wù)平臺302 (圖3)用戶正在參與的一個或多個協(xié) 同活動的作用。會話信息元素1002可包括會議層會話信息。性能最優(yōu)化可通過采集會議層活動級會話信息來實現(xiàn)?;顒釉?004可包括對一個或多個活動對象416 (圖4)實例的引用。管理員元素1006可引用與獲授權(quán)作為該會議管理員的聯(lián)系人相關(guān)聯(lián)的一個或 多個聯(lián)系人對象402 (圖4)實例。管理員特權(quán)可包括添加和取出獲授權(quán)參與者和/ 或活動。獲授權(quán)成員元素1008可引用與獲授權(quán)參與關(guān)聯(lián)于會議的活動的聯(lián)系人相 關(guān)聯(lián)的一個或多個聯(lián)系人對象402實例。授權(quán)可以是粗粒度的,例如阻止或允許特 定聯(lián)系人參與所有會議活動;可以是細粒度的,例如可授予許可以啟動新活動或結(jié) 束現(xiàn)有活動,全面地參與各個活動或有限地參與(例如"觀察者狀態(tài)"),或其組合。啟動活動元素IOIO可向會議添加一新活動。參與和離開活動可按會議、按活 動、或按兩者的組合管理。在各情形中,會議對象IOOO應(yīng)用程序編程接口元素可 迫使與管理員元素1006和/或獲授權(quán)成員元素1008 —致。現(xiàn)在描述例如由協(xié)同服務(wù)平臺302 (圖3)執(zhí)行的并根據(jù)協(xié)同對象模型400 (圖 4)的詳細方法。圖11示出根據(jù)本發(fā)明一實施例的由協(xié)同服務(wù)平臺302執(zhí)行的示例 步驟。在步驟1102,可選擇一聯(lián)系人對象402實例。例如,可用聯(lián)系人管理服務(wù) 304的用戶界面選擇儲存在聯(lián)系人存儲318中的一聯(lián)系人對象402實例。在步驟1104,可向所選聯(lián)系人對象402 (圖4)實例查詢其關(guān)聯(lián)在場對象404 實例。例如,所選聯(lián)系人對象500的在場元素504 (圖5)可用來訪問關(guān)聯(lián)在場對 象404實例。在步驟1106,可確定與所選聯(lián)系人對象402 (圖4)實例相關(guān)聯(lián)的聯(lián)系人是否 出現(xiàn)在網(wǎng)絡(luò)化計算環(huán)境200 (圖2)中。例如,該聯(lián)系人的聚集在場狀態(tài)可從在步 驟1104檢索到的在場對象600的聚集狀態(tài)元素606中取得,并且如果聯(lián)系人的聚 集在場狀態(tài)為在線,則該聯(lián)系人可被確定為出現(xiàn)。如果該聯(lián)系人被確定為出現(xiàn),則 該過程可繼續(xù)到步驟1108。否則該過程可退出。此時該聯(lián)系人不可用于協(xié)同??商鎿Q地,在繼續(xù)到步驟1108之前,步驟1104和1106可用預(yù)訂所選聯(lián)系人 的在場信息并等待直至通知指示所選聯(lián)系人出現(xiàn)的步驟代替。在步驟1108,可向所選聯(lián)系人對象402 (圖4)査詢一組關(guān)聯(lián)能力對象412實 例。例如,在步驟1104 (和/或步驟1110)檢索到的在場對象404實例的按類尋找 能力元素616 (圖6)可用來獲取一組相關(guān)的能力。要檢查的該特定一組能力可取 決于一個或多個目標協(xié)同活動。例如,涉及語音的會議可觸發(fā)對音頻輸入能力的檢 查。在步驟1112,可確定所選聯(lián)系人是否具有所需能力。如果所選聯(lián)系人的確具 有所需能力,則過程可繼續(xù)到圖12的步驟1202。否則該過程退出。步驟1112無需受限于一簡單測試。步驟1112可包括例如由信令服務(wù)308 (圖3)協(xié)調(diào)的一協(xié)商,以確定該組能力的任一個對一個或多個目標活動是否足夠。圖12示出根據(jù)本發(fā)明一實施例的由協(xié)同服務(wù)平臺302執(zhí)行的其它示例步驟。 圖11和12的步驟由標記為1114和1116的圓連接。已確定了所選聯(lián)系人出現(xiàn)在網(wǎng) 絡(luò)化計算環(huán)境200 (圖2)中并且能夠參與期望的一個或多個協(xié)同活動,就可在步 驟1202向所選聯(lián)系人發(fā)送一個或多個邀請。例如,邀請可由計算機212 (圖2)上 的邀請服務(wù)326 (圖3)發(fā)送。在步驟1204,可由所選聯(lián)系人接收一個或多個邀請。例如,邀請之一可由計 算機208 (圖2)上的邀請服務(wù)326 (圖3)接收。在步驟1206,所選聯(lián)系人可對 一個或多個邀請作出響應(yīng)。例如,所選聯(lián)系人可利用計算機208上的邀請服務(wù)326 的用戶界面向邀請之一作出響應(yīng)。在步驟1208,可確定是否接受該邀請。例如,計算機212上的邀請服務(wù)326 可接收在步驟1206發(fā)送的響應(yīng),并且該響應(yīng)的內(nèi)容可確定是否接受邀請。如果接 受邀請,則過程可繼續(xù)到步驟1210。否則該過程可退出。步驟1204、 1206和1208用虛線1212標出以高亮對邀請作出響應(yīng)時過程變化 的可能性。對同一活動發(fā)出多個邀請的一個原因是所選聯(lián)系人在網(wǎng)絡(luò)化計算環(huán)境 200 (圖2)中的出現(xiàn)可包括多個端點。例如,協(xié)同服務(wù)平臺302 (圖3)用戶可就 同一活動從計算機212向計算機216、 206和208發(fā)出三個邀請。例如,計算機216 可以是所選聯(lián)系人的辦公室臺式PC,計算機206可以是所選聯(lián)系人的膝上型計算 機,而計算機208可以是所選聯(lián)系人的個人數(shù)字助理(PDA)??稍谝粋€以上端點 向所選聯(lián)系人顯示邀請。例如,所選聯(lián)系人可在計算機208 (在此示例中為PDA) 上拒絕或忽略該邀請,但在計算機206 (膝上型計算機)上接受該邀請。 一種可能 性是所選聯(lián)系人簡單地不對該邀請作出響應(yīng)。這可導致超時和退出該過程。步驟1212的另一種可能性是協(xié)同服務(wù)平臺302 (圖3)用戶在計算機212 (圖 2)上向子網(wǎng)218中的各個其它計算機214和216發(fā)出一活動邀請。在該情形中, 每個聯(lián)系人可并行地作出響應(yīng)。己在步驟1210接受了邀請,所選聯(lián)系人可參加協(xié)同活動的關(guān)聯(lián)會議。例如, 該會議可在計算機212 (圖2)上主宿,并且所選聯(lián)系人可利用信令服務(wù)308 (圖3) 和/或活動服務(wù)310從計算機206參加會議。在步驟1214,可發(fā)生結(jié)合活動的協(xié)同?,F(xiàn)在更詳細地描述邀請服務(wù)326 (圖3)的一個示例。具體地,高亮了邀請服 務(wù)326、協(xié)同服務(wù)平臺302和與協(xié)同服務(wù)平臺302 (雖然通常引用它)不同的協(xié)同應(yīng)用程序之間的交互。在本發(fā)明一實施例中,這些交互的處理歸因于協(xié)同服務(wù)平臺 302的可使用性、可擴展性、靈活性、可維護性和/或可升級性,以及因而其供在廣 泛范圍采用的適用性。圖13示出根據(jù)本發(fā)明一實施例的一示例邀請情形。第一計算機302的任務(wù)可 以是啟動與第二計算機1304的一個或多個協(xié)同活動。例如,計算機1302和1304 可以是圖2的網(wǎng)絡(luò)化計算環(huán)境200中計算機204、 206、 208、 212、 214或216的任 一個。計算機1302和1304各自可包括一計算機操作系統(tǒng)1306和1308。計算機操 作系統(tǒng)1306和1308各自可包括一協(xié)同服務(wù)平臺模塊1310和1312。計算機操作系 統(tǒng)1302和1304不必是相同的。協(xié)同服務(wù)平臺模塊1310和1312可與協(xié)同服務(wù)平臺 302 (圖3)相一致。計算機操作系統(tǒng)1306和1308可包括諸如圖形用戶界面(GUI)的邀請用戶界 面(UI) 1314和1316。在本發(fā)明一實施例中,邀請用戶界面(UI) 1314和1316 被分別結(jié)合到協(xié)同服務(wù)平臺模塊1310和1312。計算機1302和1304可進一步包括 協(xié)同應(yīng)用程序1318和1320。盡管在此示例中與協(xié)同服務(wù)平臺模塊1310和1312不 同,但在本發(fā)明一實施例中,協(xié)同應(yīng)用程序1318和1320可被結(jié)合到協(xié)同服務(wù)平臺 模塊1310和1312中?;镜膮f(xié)同邀請協(xié)議可包括三個消息協(xié)同邀請消息1322、協(xié)同響應(yīng)消息 1324、以及邀請刪除消息1326。協(xié)同邀請消息1322可包括一邀請標識符、 一個或多個能力標識符、應(yīng)用程序 數(shù)據(jù)和一消息。邀請標識符可唯一地表示該邀請。例如,邀請標識符可以是如在微 軟開發(fā)者網(wǎng)絡(luò)(MSDN )庫中的.NET框架類庫(文檔版本l丄l)的Guid結(jié)構(gòu)部 分中所述的全球唯一標識符(GUID)。每個能力標識符可引用表示關(guān)聯(lián)于邀請的協(xié) 同活動所需的協(xié)同能力的能力對象。例如,每個能力標識符可以是全球唯一標識符 (GUID)。應(yīng)用程序數(shù)據(jù)可包括和/或指定要傳遞給協(xié)同應(yīng)用程序的數(shù)據(jù),以便于 例如啟動協(xié)同活動。消息可以是包含標準或定制邀請文本的富文本串。協(xié)同響應(yīng)消息1324可包括邀請標識符、邀請響應(yīng)動作、響應(yīng)消息和擴展響應(yīng) 數(shù)據(jù)。邀請標識符可標識響應(yīng)消息1324對其作出響應(yīng)的協(xié)同邀請。例如,邀請標 識符可以是由協(xié)同邀請消息1322所提供的GUID。邀請響應(yīng)動作可指示響應(yīng)的類 型。例如,邀請響應(yīng)可以是拒絕、接受、忽略和出錯之一。響應(yīng)消息可以是包含標 準或定制邀請響應(yīng)文本的富文本串。擴展響應(yīng)數(shù)據(jù)可包括與本發(fā)明和/或協(xié)同活動 相關(guān)的任何適當附加響應(yīng)數(shù)據(jù)。邀請刪除消息1326可包括標識刪除消息1326正在刪除之邀請的邀請標識符。 例如,協(xié)同邀請消息1322可從計算機1302發(fā)送到計算機1304以邀請協(xié)同服務(wù)平 臺1312的用戶與協(xié)同服務(wù)平臺1310的用戶一起參與一協(xié)同活動。作為響應(yīng),協(xié)同 響應(yīng)消息1324可從計算機1304發(fā)送到計算機1302以指示是例如接受還是拒絕邀 請。在本發(fā)明一實施例中,協(xié)同服務(wù)平臺1310的用戶有可能通過從計算機1302 向計算機1304發(fā)送邀請刪除消息1326來刪除邀請。在更詳細地描述示例協(xié)同邀請方法之前,描述邀請服務(wù)326 (圖3)的一示例 應(yīng)用程序編程接口 (API)將是有幫助的。圖14示出根據(jù)本發(fā)明一實施例的邀請 服務(wù)326的一示例應(yīng)用程序編程接口 (API) 1400。該邀請服務(wù)API 1400可包括邀 請元素1402、創(chuàng)建邀請收聽器元素1404、發(fā)送安全邀請元素1406、發(fā)送不安全邀 請元素1408、刪除邀請元素1410、響應(yīng)邀請元素1412、獲取邀請響應(yīng)元素1414、 注冊/取消注冊能力元素1416、枚舉能力元素1418、和獲取能力信息元素1420。盡 管每個應(yīng)用程序編程接口元素1402、 1404、 1406、 1408、 1410、 1412、 1414、 1416、 1418和1420可被包括在結(jié)合到各個計算機1302和1304上的協(xié)同服務(wù)平臺模塊 1310和1312 (圖13)的邀請服務(wù)326 (圖3)的應(yīng)用程序編程接口中,但取決于 計算機1302、 1304是邀請者還是被邀請者或既是邀請者又是被邀請者可由計算機 1302禾口 1304利用不同的元素1402、 1404、 1406、 1408、 1410、 1412、 1414、 1416、 1418和1420。邀請元素1402可包括和提供對與協(xié)同邀請消息1322協(xié)同的數(shù)據(jù)的部分或全 部的訪問。例如,協(xié)同邀請消息1322或其一部分可用邀請元素1402儲存在邀請服 務(wù)326 (圖3)中和/或從中檢索。創(chuàng)建邀請收聽器元素1404可在諸如計算機1302和1304 (圖13)的協(xié)同端點 上例示一邀請收聽器。接口規(guī)范參數(shù)可包括諸如因特網(wǎng)協(xié)議(IP)地址的端點標識 符或P2P對等標識符(每個計算機1302、 1304可有多個端點)、端口標識符(每 個端點可有多個通信端口 )、以及用于配置或破壞邀請收聽器的邀請收集器標識符。 例如,操作系統(tǒng)1308可利用創(chuàng)建邀請收聽器元素1404來創(chuàng)建在標準邀請和/或協(xié) 同服務(wù)端口上收聽的一邀請收聽器。協(xié)同應(yīng)用程序1320可利用邀請收聽器元素 1404來創(chuàng)建專用于收聽邀請以與協(xié)同應(yīng)用程序1320協(xié)同的定制邀請端口上的邀請 收聽器。發(fā)送安全邀請元素1406可使邀請消息1322 (圖13)能安全發(fā)送。接口規(guī)范 參數(shù)可包括對聯(lián)系人對象402 (圖4)實例的引用、對端點對象410實例的引用、對要發(fā)送邀請消息1322的引用、對諸如一旦已接受到邀請響應(yīng)就要信令的事件的執(zhí)行線程的同步對象的引用、以及對要由發(fā)送安全邀請元素1406設(shè)置的邀請標識 符的引用。邀請消息1322可被發(fā)送給與所引用的聯(lián)系人對象402實例相關(guān)聯(lián)的聯(lián) 系人。如果提供了端點對象410實例,則可將邀請消息1322發(fā)送給關(guān)聯(lián)端點,否 則該邀請消息1322可在與所引用的聯(lián)系人對象402實例相關(guān)聯(lián)的聯(lián)系人出現(xiàn)時被 發(fā)送給每個端點。要參與協(xié)同活動的決定可具有安全性后果。例如,要參與雙向文件共享的決 定可展現(xiàn)更改和/或刪除的數(shù)據(jù)。結(jié)果,協(xié)同服務(wù)平臺302 (圖3)的用戶可決定僅 接受來自受信任源的協(xié)同邀請。在本發(fā)明一實施例中,可在先前已交換聯(lián)系人信息 的用戶之間建立安全的通信連接。例如,聯(lián)系人信息可包含密碼認證憑證,并且可 用諸如安全套接字層(SSL)的常規(guī)安全協(xié)議或用覆蓋網(wǎng)的安全服務(wù)供應(yīng)商(SSP) 技術(shù)來建立安全通信連接。然而,用戶還可決定在特定情形下允許不安全邀請。發(fā)送不安全邀請元素1408 可與發(fā)送安全邀請元素1406相似,其不同之處在于例如不要求邀請發(fā)送者和接受 者先前已交換過聯(lián)系人信息。例如,發(fā)送不安全邀請元素1408可用來將邀請消息 1322向子網(wǎng)218上的每個計算機212、 214和216 (圖2)廣播。不安全邀請可便 于特別協(xié)同以及諸如多玩家游戲的便于社交設(shè)置中的協(xié)同。刪除邀請元素1410可使刪除消息1326 (圖13)能發(fā)送。接口規(guī)范參數(shù)可包 括發(fā)送不安全邀請元素1408的諸如發(fā)送安全邀請元素1406所設(shè)置邀請標識符的邀 請標識符。邀請響應(yīng)元素1412可使響應(yīng)消息1324 (圖13)能發(fā)送。接口規(guī)范參數(shù) 可包括邀請標識符和邀請響應(yīng)動作。發(fā)送安全邀請元素1406和發(fā)送不安全邀請元素1408各自可具有同步和異步 版本。例如,異步版本可發(fā)送邀請消息1322 (圖13),然后在檢查邀請響應(yīng)之前允 許以執(zhí)行線程執(zhí)行附加指令。相反,同步版本可等待而不以執(zhí)行線程執(zhí)行中進一步 的指令,直到接受到響應(yīng)消息1324或超時。獲取邀請響應(yīng)元素1414可用來檢查和 /或等待對異步發(fā)送的邀請消息1322的響應(yīng)。接口規(guī)范參數(shù)可包括邀請標識符和在 響應(yīng)消息1324到達時要對其設(shè)置的引用。發(fā)送邀請元素1406和1408的同步版本 無需包括對線程同步對象的引用。邀請服務(wù)1400可維護端點能力的登記表。注冊/取消注冊能力元素1416可使 能力能用邀請服務(wù)1400注冊和解除注冊。接口規(guī)范參數(shù)可包括對一個或多個能力 對象412 (圖4)實例的引用,以及對該一個或多個能力是相關(guān)于端點的一特定用戶還是該端點的所有用戶的指示。每個能力對象412實例可與例如全球唯一標識符 (GUID)的一能力標識符相關(guān)聯(lián)。在本發(fā)明一實施例中,每個能力與一特定協(xié)同應(yīng)用程序1318、 1320 (圖3)相關(guān)聯(lián)。邀請服務(wù)1400可包括用于注冊能力和解除 注冊能力的單獨的應(yīng)用程序編程接口元素。枚舉能力元素1418可使向邀請服務(wù)1400注冊的能力能夠枚舉。接口規(guī)范參 數(shù)可包括對該枚舉應(yīng)包含與一端點的特定用戶相關(guān)聯(lián)的能力、還是與端點的所有用 戶相關(guān)聯(lián)的能力的指示。在本發(fā)明一實施例中,枚舉包括能力標識符而非例如對能 力對象412 (圖4)實例的引用。該能力對象412實例然后可向獲取能力信息元素 1420檢索?,F(xiàn)在更詳細地描述示例協(xié)同邀請方法。協(xié)同邀請的基本環(huán)境是用戶是否與一 特定應(yīng)用程序交互以便于發(fā)送邀請和/或?qū)ζ渥鞒鲰憫?yīng)(特定情形),或者用戶是否 與應(yīng)用程序無關(guān)機制交互以發(fā)送邀請和/或?qū)ζ渥鞒鲰憫?yīng)(一般情形)。從一般到一 般、從特定到一般、從一般到特定、以及從特定到特定的四種情形在以下參照圖 15-18描述。圖15描述根據(jù)本發(fā)明一實施例的用于發(fā)出邀請的示例步驟。在步驟1502,可 調(diào)用一般邀請用戶界面(UI)。例如,協(xié)同服務(wù)平臺302 (圖3)可調(diào)用邀請服務(wù) 326的用戶界面。在步驟1504,可用一般邀請用戶界面選擇一個或多個聯(lián)系人。例 如,邀請服務(wù)326的用戶界面可與聯(lián)系人管理服務(wù)304交互以顯示用戶已知聯(lián)系人 列表或者例如伙伴類聯(lián)系人列表,并且用戶可通過圖形從那些所顯示的列表中選擇 一組聯(lián)系人。在步驟1506,可用一般邀請用戶界面選擇活動。例如,邀請服務(wù)326 (圖3) 的用戶界面可與活動服務(wù)310交互以顯示可用協(xié)同活動列表、或例如流行或最近使 用活動列表,并且用戶可通過圖形從那些所顯示的列表中選擇一協(xié)同活動。在步驟 1508,可確定一般邀請用戶界面要發(fā)送該邀請,或者例如要從特定協(xié)同應(yīng)用程序發(fā) 送該邀請。例如,確定可取決于邀請服務(wù)326的可配置參數(shù)。如果確定一般邀請用 戶界面要發(fā)送該邀請,則過程可繼續(xù)到步驟1510。否則,過程可繼續(xù)到步驟1512。在步驟1510,可啟動與在步驟1506選擇的活動相關(guān)聯(lián)的協(xié)同應(yīng)用程序。步驟 1510用虛線外框示出以指示盡管此時可啟動應(yīng)用程序,但一般邀請用戶界面可 保留對執(zhí)行線程的控制并繼續(xù)到步驟1514。這與步驟1516相反。在步驟1512,可儲存與諸如在步驟1504選擇的聯(lián)系人等迄今為止收集的邀請 相關(guān)的細節(jié)、以及與在步驟1506選擇的活動相關(guān)聯(lián)的任何配置參數(shù),以供與該活動相關(guān)聯(lián)的協(xié)同應(yīng)用程序檢索。在步驟1516,啟動協(xié)同應(yīng)用程序,且一般邀請用 戶界面放棄對該過程的控制。在步驟1514,可用邀請服務(wù)1400 (圖14)應(yīng)用程序編程接口,例如如上所述 的發(fā)送安全邀請元素1406或發(fā)送不安全邀請元素1408發(fā)送邀請。盡管可用同一應(yīng) 用程序編程接口元素1406、 1408發(fā)送邀請,但在過程從步驟1510繼續(xù)到步驟1514 時,元素1406、 1408由一般邀請用戶界面調(diào)用,而在過程從步驟1516繼續(xù)到步驟 1514時,元素1406、 1408由協(xié)同應(yīng)用程序調(diào)用。結(jié)果,傳遞到元素1406、 1408 的接口規(guī)范參數(shù)可不同。在步驟1502開始的過程描述了 "從一般"情形之一,因為使用了一般邀請用 戶界面。相反,步驟1518以"從特定"情形開始。在步驟1518,可啟動協(xié)同應(yīng)用 程序。例如,可由計算機操作系統(tǒng)1306以常規(guī)方式啟動應(yīng)用程序1308 (圖13)。 步驟1518是步驟1520的預(yù)備條件,并且在步驟1518與1520之間可經(jīng)過相當時間。在步驟1520,可用協(xié)同應(yīng)用程序1318 (圖13)的用戶界面來選擇一個或多個 聯(lián)系人。例如,協(xié)同應(yīng)用程序1318可與協(xié)同服務(wù)平臺1310的聯(lián)系人管理服務(wù)304 (圖3)交互以顯示應(yīng)用程序用戶的已知聯(lián)系人列表或例如伙伴類聯(lián)系人列表,并 且應(yīng)用程序用戶可從那些所顯示列表中選擇一組聯(lián)系人。與從步驟1504起的進展 相反,協(xié)同活動的選擇是不必要的,并且過程可繼續(xù)到步驟1514。協(xié)同應(yīng)用程序 1318可確定協(xié)同活動。然而,在本發(fā)明一實施例中,協(xié)同應(yīng)用程序1318可支持多 個活動,在該情形中步驟1506的等效體可能是適當?shù)摹T诓襟E1514,發(fā)送邀請元 素1406或1408 (圖14)可由協(xié)同應(yīng)用程序1318調(diào)用。圖16示出根據(jù)本發(fā)明一實施例的由邀請服務(wù)1400 (圖14)執(zhí)行的發(fā)送邀請 的示例步驟。在步驟1602,選擇下一候選聯(lián)系人。例如,候選聯(lián)系人可從在圖15 的步驟1504或1520選擇的組中選擇。在步驟1604,可確定候選聯(lián)系人的端點是否為已知。例如,可向由表示候選 聯(lián)系人的聯(lián)系人對象402所引用的在場對象404(圖4)查詢它的一組端點對象410。 如果沒有候選聯(lián)系人的端點為已知(例如査詢結(jié)果為空集),則過程可繼續(xù)到步驟 1606。如果候選聯(lián)系人的端點為己知,則過程可繼續(xù)到步驟1608。在步驟1606, 可定位候選聯(lián)系人的端點。例如,邀請服務(wù)326 (圖3)可與聯(lián)系人位置服務(wù)322 交互以確定候選聯(lián)系人的一組有效端點。在步驟1608,可從候選聯(lián)系人的己知端點中選擇候選端點。在步驟1610,可 建立與候選端點的通信連接。例如,可建立與連接服務(wù)316 (圖3)的連接。在步驟1612,可用邀請消息1322 (圖13)向例如候選端點發(fā)送邀請。在步驟1614,可確定是否還有候選端點。如果還有候選端點,則過程可返回 到步驟1608以選擇下一候選端點。否則該過程可繼續(xù)到步驟1616。在步驟1616, 可確定是否還有候選聯(lián)系人。如果還有候選聯(lián)系人,則過程可返回到步驟1602以 選擇下一候選聯(lián)系人。否則,邀請可被視為已發(fā)送。已描述了四種情形的"從一般"和"從特定"部分,現(xiàn)在分別參照圖17和18 描述"到一般"和"到特定"部分。圖17示出根據(jù)本發(fā)明一實施例的對來自一般 邀請用戶界面的協(xié)同邀請作出響應(yīng)的示例步驟。當向多個端點發(fā)送協(xié)同邀請時,可 在每個端點上執(zhí)行圖17和/或18中所示的步驟。在步驟1702,可在協(xié)同服務(wù)平臺302 (圖3)的標準通信端口上接收協(xié)同邀請。 例如,邀請消息1322 (圖3)可到達為協(xié)同服務(wù)平臺302保留并由邀請服務(wù)326 監(jiān)視的TCP/IP端口。在步驟1704,可確定端點是否能參與關(guān)聯(lián)于該邀請的活動。例如,邀請服務(wù) 326 (圖3)可將邀請消息1322 (圖13)中的能力標識符與已向邀請服務(wù)328注冊 的能力作比較?;蛘撸上蜿P(guān)聯(lián)于端點用戶的MeContact對象406 (圖4)查詢其 相關(guān)聯(lián)的一組能力對象412,并且該組能力對象412可與邀請消息1322中的能力 標識符作比較。如果確定端點能夠參加與邀請相關(guān)聯(lián)的活動,則該過程可繼續(xù)到步 驟1706。否則,該過程可繼續(xù)到步驟1708。在步驟1706,用戶可接受、拒絕或忽略邀請。例如,邀請服務(wù)326 (圖3)可 顯示具有與決定接受、拒絕或忽略相對應(yīng)的用戶界面元素的一般邀請用戶界面。 用戶可通過選擇相應(yīng)的用戶界面元素來接受、拒絕或忽略邀請。如果用戶接受邀請, 則過程可繼續(xù)到步驟1710。如果用戶拒絕邀請,則過程可繼續(xù)到步驟1708。如果 用戶忽略該邀請,則過程可繼續(xù)到步驟1712。在步驟1708,可發(fā)送指示拒絕邀請的響應(yīng)消息1324 (圖13)。例如,響應(yīng)消 息1324可用對邀請服務(wù)1400應(yīng)用程序編程接口的邀請元素1412 (圖14)的響應(yīng) 發(fā)送。類似地,在步驟1712,可發(fā)送指示用戶選擇忽略邀請的響應(yīng)消息1324。邀 請元素1412還可用于發(fā)送該響應(yīng)。在本發(fā)明一實施例中,發(fā)送明確忽略響應(yīng)的能 力提高了協(xié)同服務(wù)平臺302 (圖3)的效率。在步驟1710,可儲存所接受邀請的細節(jié)以供與協(xié)同活動相關(guān)聯(lián)的協(xié)同應(yīng)用程 序1320 (圖13)檢索。例如,邀請消息1322的部分或全部內(nèi)容可由邀請服務(wù)326 (圖3)用應(yīng)用程序編程接口的邀請元素1402 (圖14)儲存。在步驟1714,可由邀請服務(wù)326啟動協(xié)同應(yīng)用程序1320。在步驟1716,可例如利用對邀請服務(wù)1400應(yīng)用程序編程接口的邀請元素1412 (圖14)的響應(yīng),發(fā)送指示接受邀請的響應(yīng)消息1324 (圖13)。在從步驟1716進 行到步驟1718時,執(zhí)行的控制可傳遞給在步驟1714啟動的協(xié)同應(yīng)用程序1320。 或者,協(xié)同應(yīng)用程序1320可在并行執(zhí)行線程中啟動,這些線程按需同步,并且在 步驟1702接收邀請的邀請服務(wù)線程可在步驟1716作出響應(yīng)之后退出。在步驟1718,協(xié)同應(yīng)用程序1320 (圖13)可讀取在步驟1710儲存的邀請細 節(jié)。例如,所儲存的邀請細節(jié)可導致協(xié)同應(yīng)用程序1320的部分(重新)配置。此 時,協(xié)同應(yīng)用程序1320可準備好開始參與協(xié)同活動,并且在步驟1720可開始參與 協(xié)同活動。圖18示出根據(jù)本發(fā)明一實施例的用于響應(yīng)來自特定應(yīng)用程序用戶接口的協(xié)同 邀請的示例步驟。在步驟1802,可啟動協(xié)同應(yīng)用程序。例如,可由計算機操作系 統(tǒng)1304以常規(guī)方式啟動協(xié)同應(yīng)用程序1320 (圖13)。在步驟1804,協(xié)同應(yīng)用程序 1320可在非標準的應(yīng)用程序?qū)S脜f(xié)同通信端口上創(chuàng)建邀請收聽器。例如,協(xié)同應(yīng) 用程序1320可利用邀請服務(wù)1400應(yīng)用程序編程接口的創(chuàng)建邀請收聽器元素1404 (圖14)來在與為協(xié)同服務(wù)平臺302 (圖3)保留的端口不相同的TCP/IP端口上 創(chuàng)建一邀請收聽器。稍后,在步驟1806,可在非標準端口上接收協(xié)同邀請。例如,在步驟1514 (圖 15)發(fā)送的邀請消息1322 (圖13)可能已被發(fā)送給應(yīng)用程序?qū)S枚丝诤?或端點。 在步驟1808,協(xié)同應(yīng)用程序1320用戶可接受、拒絕、或明確忽略邀請。例如,協(xié) 同應(yīng)用程序1320可顯示具有與決定接受、拒絕或忽略相對應(yīng)的用戶界面元素的 用戶界面。然后用戶可通過選擇相應(yīng)的用戶界面元素來選擇所需響應(yīng)。如果用戶接 受邀請,則過程可繼續(xù)到步驟1810。如果用戶拒絕邀請,則過程可繼續(xù)到步驟1812。 如果用戶忽略該邀請,則過程可繼續(xù)到步驟1814。在各個步驟1810、 1812和1814,可向邀請者發(fā)送適當?shù)难堩憫?yīng)。各個步驟 1810、 1812和1814可例如利用對邀請服務(wù)1400的邀請元素1412 (圖14)的響應(yīng) 來用分別設(shè)置成接受、拒絕或忽略的邀請響應(yīng)動作發(fā)送響應(yīng)消息1324 (圖13)。因 為已啟動了所需協(xié)同應(yīng)用程序1320 (圖13),所以如果接受了邀請則在步驟1816 可開始協(xié)同活動而無需進一步的延遲。現(xiàn)在更詳細地描述用于協(xié)同在場發(fā)布的示例方法。具體地,無服務(wù)器在場發(fā) 布,即不受對專用服務(wù)器計算機的需要的限制發(fā)布協(xié)同在場信息的能力在本發(fā)明一實施例中是有利的。例如,無服務(wù)器網(wǎng)絡(luò)化計算機環(huán)境、對等網(wǎng)絡(luò)、或覆蓋網(wǎng)可比 需要專用服務(wù)器計算機的網(wǎng)絡(luò)和網(wǎng)絡(luò)應(yīng)用程序提供更佳的可升級性。網(wǎng)絡(luò)化計算環(huán)境200 (圖2)可支持對等或覆蓋網(wǎng)。各個計算機204、 206、 208、 212、 214和216可支持對等網(wǎng)絡(luò)的一個或多個對等體。每個對等體可以是一協(xié)同端點并與一端點對象410 (圖4)實例相關(guān)聯(lián)。如上所述,協(xié)同在場可由在場對象404 (圖4)表示。在場對象404的任何適 當部分(包括全部)可向協(xié)同服務(wù)平臺302 (圖3)的用戶發(fā)布。此外,可發(fā)布由 在場對象404實例引用的編程對象實例,包括端點對象410、能力對象412和更多 的一般發(fā)布對象418。但是,在本發(fā)明一實施例中一次發(fā)布通常是不夠的。在場信息可改變。例如, 發(fā)布對象418可通過協(xié)同應(yīng)用程序更新,與特定端點相關(guān)聯(lián)的聚集狀態(tài)和/或在場 狀態(tài)可在整個一天內(nèi)改變,端點可因為例如通過網(wǎng)絡(luò)化無線設(shè)備打開和關(guān)閉、或移 入和移出無線網(wǎng)絡(luò)覆蓋區(qū)域使一特定聯(lián)系人出現(xiàn)而添加或去除,端點能力可因為安 裝了新的協(xié)同應(yīng)用程序而改變。有效的協(xié)同可能需要一致更新的在場信息。在本發(fā) 明一實施例中,協(xié)同在場信息與在場預(yù)訂和在場通知消息一起分布在諸如網(wǎng)絡(luò)化計 算環(huán)境200 (圖2)的無服務(wù)器網(wǎng)絡(luò)化計算環(huán)境中。圖19示出根據(jù)本發(fā)明一實施例的用于參與無服務(wù)器在場發(fā)布的示例步驟。在 步驟1902,計算機用戶可向計算機的操作系統(tǒng)(OS)認證。例如,用戶可登陸到 網(wǎng)絡(luò)化計算環(huán)境200的計算機204、 206、 208、 212、 214或216 (圖2)之一。適 當?shù)挠嬎銠C操作系統(tǒng)包括能支持協(xié)同服務(wù)平臺302 (圖3)的計算機操作系統(tǒng),諸 如任何適當版本的"微軟WINDOWS"或"UNIX"計算機操作系統(tǒng)。向計算機操 作系統(tǒng)認證可建立計算機用戶的計算機識別身份,并且具體地可使計算機用戶與一 MeContact對象406 (圖4)實例相關(guān)聯(lián)。在步驟1904,可初始化與協(xié)同服務(wù)平臺302的發(fā)布服務(wù)306 (圖3)的通信。 如上所述,發(fā)布服務(wù)306可以是無服務(wù)器的。例如,在步驟1904,計算機用戶可 加入結(jié)合有發(fā)布服務(wù)306的對等(P2P)網(wǎng)絡(luò)。在步驟1卯6,可例如用一個或多個 在場通知消息向發(fā)布服務(wù)306發(fā)布與計算機用戶相關(guān)聯(lián)的MeContact對象406 (圖 4)中所包含的和/或由其所引用的部分或全部數(shù)據(jù),由此建立計算機和協(xié)同服務(wù)平 臺302用戶的協(xié)同在場。在步驟1908,可初始化與聯(lián)系人存儲318 (圖3)的通信。例如,聯(lián)系人存儲 可以是諸如數(shù)據(jù)庫的常規(guī)數(shù)據(jù)存儲,并且初始化與聯(lián)系人存儲318的通信可包括建立與數(shù)據(jù)存儲的通信會話。在步驟1910,可向聯(lián)系人存儲318查詢用戶的伙伴類聯(lián)系人。在本發(fā)明一實施例中,査詢聯(lián)系人存儲318包括去除對MeContact對象 406的伙伴元素卯4 (圖9)中所包括的聯(lián)系人對象402 (圖4)的一個或多個引用。在步驟1912,可用在場預(yù)訂消息預(yù)訂例如伙伴類聯(lián)系人的在場,如以下參照 圖20和21更詳細地描述。在步驟1914,響應(yīng)于該預(yù)訂,可接收在場更新通知。 例如,當具有關(guān)聯(lián)預(yù)訂的在場發(fā)生變化時,在場通知消息可通過對等網(wǎng)絡(luò)發(fā)送。圖20示出根據(jù)本發(fā)明一實施例的用于進行在場預(yù)訂的示例步驟。例如,圖20 所示步驟可作為步驟1912 (圖19)的一部分執(zhí)行。要進行預(yù)訂的一組伙伴類聯(lián)系 人從例如步驟1914等起可用。在步驟2002,可從該組中選擇下一候選伙伴類聯(lián)系 人。在步驟2004,可對伙伴類聯(lián)系人進行搜索。例如,可使用對等名稱解析協(xié)議 (PNRP)來在對等網(wǎng)絡(luò)中定位與伙伴類聯(lián)系人相關(guān)聯(lián)的端點。替換地或此外,可 在諸如子網(wǎng)218 (圖2)的本地網(wǎng)絡(luò)分區(qū)上搜索聯(lián)系人??山⑷魏芜m當?shù)木W(wǎng)絡(luò)分 區(qū),和/或可在任何適當?shù)木W(wǎng)絡(luò)分區(qū)上搜索聯(lián)系人。該搜索可能是不成功的。例如,伙伴類聯(lián)系人可不具有對等網(wǎng)絡(luò)和/或本地網(wǎng) 絡(luò)分區(qū)中的關(guān)聯(lián)端點。在步驟2006,可確定是否發(fā)現(xiàn)了伙伴類聯(lián)系人。例如,對 等名稱解析協(xié)議可成功地將伙伴類聯(lián)系人的名字解析成對等網(wǎng)絡(luò)中的關(guān)聯(lián)協(xié)同端 點(例如對等體),或者可在標識伙伴類聯(lián)系人的關(guān)聯(lián)端點(例如TCP/IP地址和通 信端口號)的局部網(wǎng)絡(luò)分區(qū)上接收到對消息廣播的回應(yīng)。如果發(fā)現(xiàn)了伙伴類聯(lián)系人, 則過程可繼續(xù)到步驟2008。否則,可假設(shè)缺席是暫時的,例如因為該聯(lián)系人己被 分類為一伙伴,且過程可繼續(xù)到步驟2010。因為被分類為一伙伴會帶來聯(lián)系人通常是活動協(xié)同參與者的假設(shè),所以在本 發(fā)明一實施例中,周期性地搜索消失的伙伴類聯(lián)系人充分地提高了協(xié)同服務(wù)平臺 302 (圖3)雖然對計算和網(wǎng)絡(luò)資源的需求增長但仍成為合理功能部件的有效性。 在搜索之間該過程可在步驟2010等待。例如,搜索之間的周期可以是10分鐘。步 驟2010被虛線2012包圍以指示該等待以及可能的隨后步驟可用單獨的執(zhí)行線程進 行。在例示等待步驟2010的單獨執(zhí)行線程之后,主執(zhí)行線程可繼續(xù)到步驟2014。在已發(fā)現(xiàn)了伙伴類聯(lián)系人之后,在步驟2008,可向與聯(lián)系人(例如在步驟2004 發(fā)現(xiàn)的端點)相關(guān)聯(lián)的端點發(fā)送在場預(yù)訂消息。在場預(yù)訂消息可指定對與聯(lián)系人相 關(guān)聯(lián)的部分或全部協(xié)同在場信息的預(yù)訂。例如,在場預(yù)訂消息可指定對可通過在場 對象600應(yīng)用程序編程接口的富文本描述元素602 (圖6)、端點元素604、聚集狀態(tài)元素606、聚集能力元素608、以及發(fā)布對象元素610的一個或多個可訪問的在 場信息的預(yù)訂。例如響應(yīng)于步驟1914 (圖19)的預(yù)訂而發(fā)送的在場通知消息可能 僅在預(yù)訂所覆蓋的一部分在場改變時發(fā)送、并且可能僅需包括己改變的那部分在場 信息。在步驟2014,可確定在該組伙伴類聯(lián)系人中是否還有伙伴類聯(lián)系人。如果還 有伙伴類聯(lián)系人,則過程可返回到步驟2002以從該組中選擇下一個聯(lián)系人。否則, 過程可繼續(xù)到諸如步驟1914 (圖19)和/或圖21的步驟2102的其它步驟。圖21示出根據(jù)本發(fā)明一實施例的用于接受在場預(yù)訂的示例步驟。在步驟 2102,可接收在場預(yù)訂消息。例如,這可以是在步驟2008 (圖20)發(fā)送的在場預(yù) 訂消息。在步驟2104,可檢索與在場預(yù)訂消息的發(fā)送者相關(guān)聯(lián)的聯(lián)系人信息。例 如,在場預(yù)訂消息可引用與發(fā)送者相關(guān)聯(lián)的聯(lián)系人對象402 (圖4)實例。在場預(yù) 訂消息的接收者可向聯(lián)系人管理服務(wù)304 (圖3)檢索發(fā)送者的聯(lián)系人信息。在步驟2106,可確定是否已建立了針對在場預(yù)訂消息發(fā)送者的預(yù)訂策略。例 如,與聯(lián)系人管理服務(wù)304 (圖3)所管理的發(fā)送者相關(guān)聯(lián)的聯(lián)系人信息可包括發(fā) 送者與發(fā)送者的預(yù)訂策略之間的關(guān)聯(lián)。或者,預(yù)訂策略可針對所有用戶,或針對發(fā) 送者是其一成員的某組用戶。簡單預(yù)訂策略的示例包括阻止和允許。即,阻止來自聯(lián)系人的預(yù)訂請求、 或允許來自聯(lián)系人的預(yù)訂請求。在本發(fā)明一實施例中,發(fā)送者的預(yù)訂策略由關(guān)聯(lián)于 接收者的MeContact對象406實例的獲授權(quán)用戶元素906 (圖9)所引用的一組聯(lián) 系人對象402 (圖4)實例確定。如果關(guān)聯(lián)于發(fā)送者的聯(lián)系人對象402實例在獲授 權(quán)用戶元素906所引用的組中,則允許該發(fā)送者,否則阻止該發(fā)送者。在本發(fā)明一實施例中,更復雜的預(yù)訂策略是可能的。例如,更復雜的預(yù)訂策 略可阻止和/或允許對用戶的一個或多個在場信息子集的預(yù)訂。允許對在場對象600 的聚集狀態(tài)606(圖6)和富文本描述602的預(yù)訂,但阻止對其它在場對象元素604、 608、 610的預(yù)訂是一個可能示例。在場對象元素602、 604、 606、 608和610的任 何適當子集(包括全部),和/或在場對象元素602、 604、 606、 608和610所引用 的編程對象410、 412、 418可以是預(yù)訂策略和/或預(yù)訂的主體。如果預(yù)訂策略針對預(yù)訂消息的發(fā)送者,則過程可繼續(xù)到步驟2108。否則,過 程可繼續(xù)到步驟2110。在步驟2110,可向與作為預(yù)訂主體的協(xié)同在場相關(guān)聯(lián)的協(xié) 同服務(wù)平臺302 (圖3)的用戶查詢相關(guān)于在場預(yù)訂消息的發(fā)送者的預(yù)訂策略。例 如,發(fā)布服務(wù)306可呈現(xiàn)顯示與發(fā)送者相關(guān)聯(lián)的聯(lián)系人信息、以及諸如阻止或允許的預(yù)訂策略選項的用戶界面(例如圖形用戶界面或GUI)。然后用戶可用該用戶界 面選擇該發(fā)送者的預(yù)訂策略。在步驟2112,可對發(fā)送者設(shè)置用戶所選擇的預(yù)訂策略。例如,預(yù)訂策略可通過協(xié)同服務(wù)平臺302 (圖3)的聯(lián)系人管理服務(wù)304關(guān)聯(lián)于發(fā)送者,或者對關(guān)聯(lián)于 發(fā)送者的聯(lián)系人對象402 (圖4)的引用可被添加到由關(guān)聯(lián)于接收者的MeContact 對象406實例的獲授權(quán)用戶元素906 (圖9)所維護的一組引用中。在步驟2108, 因為建立了相關(guān)于發(fā)送者的預(yù)訂策略,所以可確定該預(yù)訂策略是要阻止預(yù)訂。如果 預(yù)訂策略是阻止來自發(fā)送者的預(yù)訂,則過程可繼續(xù)到步驟2114。否則,過程可繼 續(xù)到步驟2116。在步驟2116,可接受協(xié)同在場預(yù)訂。例如,由在場預(yù)訂消息指定的預(yù)訂可通 過聯(lián)系人管理服務(wù)304 (圖3)與關(guān)聯(lián)于接收者的MeContact對象406相關(guān)聯(lián)。在 本發(fā)明一實施例中,由在場預(yù)訂消息指定的預(yù)訂可通過將關(guān)聯(lián)于發(fā)送者的聯(lián)系人對 象402 (圖4)實例添加到由關(guān)聯(lián)于接收者的MeContact對象406實例的活動用戶 元素908 (圖9)所引用的一組聯(lián)系人對象402實例中來接受。當預(yù)訂比允許和阻 止更為復雜時,可在接受之前相關(guān)于與發(fā)送者相關(guān)聯(lián)的預(yù)訂策略來過濾由在場預(yù)訂 消息指定的預(yù)訂。例如,如果預(yù)訂是針對所有在場信息的,但預(yù)訂策略將預(yù)訂限制 于聚集狀態(tài),則所接受的預(yù)訂將僅僅是聚集狀態(tài)。步驟2108和2116 —起可確保根 據(jù)預(yù)訂策略來接受預(yù)訂。在步驟2114,可確定在場預(yù)訂消息的發(fā)送者是否是接收者的伙伴類聯(lián)系人。 例如,可在關(guān)聯(lián)于接收者的MeContact對象900 (圖9)的伙伴元素904所引用的 一組聯(lián)系人對象402 (圖4)實例中檢查與在場預(yù)訂消息的發(fā)送者相關(guān)聯(lián)的一聯(lián)系 人對象402實例。發(fā)布服務(wù)306 (圖3)可用聯(lián)系人管理服務(wù)304確定在場預(yù)訂消 息的發(fā)送者是否是接收者的伙伴類聯(lián)系人。如果在場預(yù)訂消息的發(fā)送者是接收者的 伙伴類聯(lián)系人,則過程可繼續(xù)到步驟2118。否則,過程可繼續(xù)到步驟2120。已確定了在場預(yù)訂消息的發(fā)送者是接收者的伙伴類聯(lián)系人之后,在步驟2118, 可確定在場預(yù)訂消息的接收者當前是否預(yù)訂了發(fā)送者的在場。例如,發(fā)布服務(wù)306 (圖3)應(yīng)用程序編程接口可具有一枚舉預(yù)訂元素,使得指定聯(lián)系人進行的一組預(yù) 訂能夠枚舉,并且可在該組預(yù)訂中檢査對發(fā)送者在場進行的預(yù)訂。替代地或此外, 關(guān)聯(lián)于接收者的MeContact對象406 (圖4)實例的伙伴元素904 (圖9)所引用的 聯(lián)系人信息可包括對于每個伙伴類聯(lián)系人在場預(yù)訂是否已被該聯(lián)系人接受的指示。如果確定在場預(yù)訂消息的接收者當前預(yù)訂了發(fā)送者的在場,則過程繼續(xù)到步驟2120。否則,接收者可在步驟2122預(yù)訂發(fā)送者的在場。例如,可能是在場預(yù)訂 消息的接收者先前已執(zhí)行了以上參照圖20所述搜索發(fā)送者的步驟,但發(fā)送者沒有 在線而接收者在再次搜索之前在步驟2010 (圖20)等待。現(xiàn)在發(fā)送者變成在線并 發(fā)出在場預(yù)訂消息。不繼續(xù)等待、然后花費計算和網(wǎng)絡(luò)資源再次搜索發(fā)送者,在本 發(fā)明一實施例中,接收者可用互換的在場預(yù)訂消息對來自伙伴類聯(lián)系人的在場預(yù)訂 消息作出響應(yīng)。在步驟2122,互換的在場預(yù)訂消息可如以上對步驟2008 (圖20) 的描述被發(fā)送給伙伴類聯(lián)系人。在步驟2120,可根據(jù)在步驟2116接受的在場預(yù)訂向在場預(yù)訂消息的發(fā)送者發(fā) 送一個或多個在場通知消息。初始在場通知消息可包含與所接受預(yù)訂相匹配的所有 在場信息,或者例如知道接收者已擁有的在場信息上的一組在場差異。在初始在場 通知消息之后,可發(fā)送附加在場通知消息以向用戶通知協(xié)同在場更新。例如,在對 特定協(xié)同服務(wù)平臺302 (圖3)用戶的協(xié)同在場的一個或多個更新之后,可向發(fā)布 服務(wù)306 (圖3)發(fā)送一個或多個在場通知消息。對于每個對用戶在場的預(yù)訂,發(fā) 布服務(wù)306可確定在場通知消息所引用的一個或多個在場信息子集是否與預(yù)訂相 匹配。對于每個匹配的預(yù)訂,發(fā)布服務(wù)306可向進行預(yù)訂的協(xié)同服務(wù)平臺302用戶 傳播該在場通知消息。本文中所引用的包括出版物、專利申請和專利的所有參考文獻都通過相同程 度的引用結(jié)合于此,就像每篇文獻都被個別和具體地指示為通過引用結(jié)合并在本文 中全部地闡述。在描述本發(fā)明的上下文中(特別是在以下權(quán)利要求的上下文中)術(shù)語"一"、 "一個"和"該"及類似代詞的使用應(yīng)被解釋為涵蓋單數(shù)和復數(shù),除非另有明確指 示或明顯與上下文相矛盾。術(shù)語"包括"、"具有"、"包含"和"含有"應(yīng)被解釋為 開放式術(shù)語(即意思是"包括但不限于"),除非另有注釋。本文中值的范圍的引用 僅僅旨在用作對落入該范圍的每個單值的分別引用的速記法,除非另有指明,并且 每個單值就像單獨引用一樣被結(jié)合到本說明書中。本文中引用的所有方法可以任何 適當順序執(zhí)行,除非本文中另有指示或否則明顯與上下文矛盾。任何和所有示例的 使用、或本文中所提供的示例性語言(例如"諸如")僅僅旨在更佳地說明本發(fā)明, 而不是對本發(fā)明的范圍提出任何限制,除非另作權(quán)利要求。本說明書中沒有語言應(yīng) 被解釋為指示任何非權(quán)利要求要素對本發(fā)明的實踐是必要的。本發(fā)明的優(yōu)選實施例在本文中描述,包括為實現(xiàn)本發(fā)明的發(fā)明人所知的最佳 模式。那些優(yōu)選實施例的變體在本領(lǐng)域普通技術(shù)人員閱讀了前面的描述之后會變得顯而易見。發(fā)明人期望本領(lǐng)域技術(shù)人員能適當?shù)夭捎眠@些變體,并且發(fā)明人期望本 發(fā)明能以不同于本文中具體描述的其它方式實踐。因此,本發(fā)明包括適用法所允許 的附加在此后的權(quán)利要求中所引用的主題的所有變體和等效方案。此外,所有可能 變體中的上述要素的任何組合被本發(fā)明包括在內(nèi),除非另有指明或明顯與上下文相 矛盾。
權(quán)利要求
1.一種用于與無服務(wù)器在場協(xié)同的計算機實現(xiàn)方法,包括初始化與協(xié)同服務(wù)平臺的無服務(wù)器發(fā)布服務(wù)的通信;通過所述無服務(wù)器發(fā)布服務(wù)發(fā)布所述協(xié)同服務(wù)平臺用戶的協(xié)同在場;以及通過所述無服務(wù)器發(fā)布服務(wù)預(yù)訂所述協(xié)同服務(wù)平臺的至少另一個用戶的至少一個協(xié)同在場。
2. 如權(quán)利要求1所述的計算機實現(xiàn)方法,其特征在于,初始化與所述無服務(wù) 器發(fā)布服務(wù)的通信包括加入一對等網(wǎng)絡(luò)。
3. 如權(quán)利要求1所述的計算機實現(xiàn)方法,其特征在于 所述協(xié)同服務(wù)平臺的每個用戶與一 MeContact編程對象相關(guān)聯(lián);以及 發(fā)布所述用戶的協(xié)同在場包括發(fā)布所述MeContact編程對象所引用的至少部分數(shù)據(jù)。
4. 如權(quán)利要求3所述的計算機實現(xiàn)方法,其特征在于,還包括通過至少部分 地向計算機操作系統(tǒng)認證所述用戶來建立所述協(xié)同服務(wù)平臺的用戶與所述 MeContact編程對象之間的關(guān)聯(lián)。
5. 如權(quán)利要求3所述的計算機實現(xiàn)方法,其特征在于 每個MeContact編程對象引用一在場編程對象;以及發(fā)布所述用戶的協(xié)同在場包括發(fā)布所述在場編程對象所引用的至少部分數(shù)據(jù)。
6. 如權(quán)利要求4所述的計算機實現(xiàn)方法,其特征在于,所述在場編程對象所 引用的數(shù)據(jù)包括所述用戶的協(xié)同在場的富文本描述;以及 無服務(wù)器網(wǎng)絡(luò)的至少一個協(xié)同端點。
7. 如權(quán)利要求6所述的計算機實現(xiàn)方法,其特征在于,所述在場編程對象所 引用的數(shù)據(jù)還包括表示所述用戶在所述至少一個協(xié)同端點上的協(xié)同在場的聚集在 場狀態(tài)指示符。
8. 如權(quán)利要求6所述的計算機實現(xiàn)方法,其特征在于,所述在場編程對象所 引用的數(shù)據(jù)還包括表示所述用戶在所述至少一個協(xié)同端點上的協(xié)同能力的一個聚 集能力集合。
9. 如權(quán)利要求1所述的計算機實現(xiàn)方法,其特征在于所述協(xié)同服務(wù)平臺的所述至少另一個用戶各自是所述用戶的伙伴類聯(lián)系人;以及所述方法還包括向所述協(xié)同服務(wù)平臺的聯(lián)系人存儲查詢所述至少一個伙伴類 聯(lián)系人。
10. 如權(quán)利要求1所述的計算機實現(xiàn)方法,其特征在于,還包括通過所述無服 務(wù)器發(fā)布服務(wù)接收對所述至少一個協(xié)同在場的至少一個協(xié)同在場更新通知。
11. 如權(quán)利要求1所述的計算機實現(xiàn)方法,其特征在于所述協(xié)同服務(wù)平臺的所述至少另一個用戶各自是所述用戶的伙伴類聯(lián)系人;以及預(yù)訂所述至少一個伙伴類聯(lián)系人包括,對于每個所述至少一個伙伴類聯(lián)系人 搜索與所述伙伴類聯(lián)系人相關(guān)聯(lián)的協(xié)同端點;以及 如果所述搜索失敗,則再次周期性地搜索直到所述搜索成功。
12. 如權(quán)利要求1所述的計算機實現(xiàn)方法,其特征在于,還包括 確定訂戶是否是一伙伴類聯(lián)系人;以及如果所述訂戶是一伙伴類聯(lián)系人,則互換地預(yù)訂所述訂戶的協(xié)同在場。
13. —種用于與無服務(wù)器在場協(xié)同的計算機化系統(tǒng),包括-多個協(xié)同端點,與所述計算機化系統(tǒng)的多個用戶相關(guān)聯(lián);以及 無服務(wù)器發(fā)布服務(wù),配置成至少接受來自所述多個協(xié)同端點的通信連接; 發(fā)布所述多個用戶的每一個的協(xié)同在場;以及 接受對所述多個用戶的每一個的所述協(xié)同在場的多個預(yù)訂。
14. 如權(quán)利要求13所述的計算機化系統(tǒng),其特征在于 所述協(xié)同服務(wù)平臺的每個用戶與一MeContact編程對象相關(guān)聯(lián);以及 發(fā)布每個用戶的所述協(xié)同在場包括發(fā)布所述MeContact編程對象所引用的至少部分數(shù)據(jù)。
15. 如權(quán)利要求14所述的計算機化系統(tǒng),其特征在于 每個協(xié)同端點與一計算機操作系統(tǒng)相關(guān)聯(lián);以及所述協(xié)同服務(wù)平臺的用戶與所述MeContact編程對象之間的關(guān)聯(lián)通過至少部 分地向所述計算機操作系統(tǒng)認證所述用戶來建立。
16. 如權(quán)利要求13所述的計算機化系統(tǒng),其特征在于,所述無服務(wù)器發(fā)布服務(wù)被進一步地配置成至少接收協(xié)同在場更新通知;以及根據(jù)所述多個預(yù)訂傳播所述協(xié)同在場更新通知。
17. —種用于與無服務(wù)器在場協(xié)同的計算機實現(xiàn)方法,包括接收來自協(xié)同服務(wù)平臺的第一用戶的協(xié)同在場預(yù)訂消息,指定對所述協(xié)同服 務(wù)平臺的第二用戶的協(xié)同在場的預(yù)訂;確定是否有相關(guān)于所述第一用戶的預(yù)訂策略;如果沒有預(yù)訂策略,則向所述第二用戶査詢所述第一用戶的預(yù)訂策略;以及 根據(jù)所述預(yù)訂策略接收所述預(yù)訂。
18. 如權(quán)利要求17所述的計算機實現(xiàn)方法,其特征在于 所述協(xié)同服務(wù)平臺的每個用戶具有一可發(fā)布的協(xié)同在場;以及 所述方法還包括確定所述第一用戶是否是所述第二用戶的一伙伴類聯(lián)系人;以及 如果所述第一用戶是所述第二用戶的一伙伴類聯(lián)系人,則發(fā)送來自所述 第二用戶的預(yù)訂所述第一用戶的協(xié)同在場的互換協(xié)同在場預(yù)訂消息。
19. 如權(quán)利要求17所述的計算機實現(xiàn)方法,其特征在于,還包括通過所述協(xié)同服務(wù)平臺的無服務(wù)器發(fā)布服務(wù)發(fā)送所述協(xié)同在場預(yù)訂消息。
20. 如權(quán)利要求19所述的計算機實現(xiàn)方法,其特征在于所述第二用戶是所述第一用戶的伙伴類聯(lián)系人;以及 通過所述無服務(wù)器發(fā)布服務(wù)發(fā)送所述協(xié)同在場預(yù)訂消息包括 搜索與所述伙伴類聯(lián)系人相關(guān)聯(lián)的協(xié)同端點;以及 如果所述搜索失敗,則再次周期性地搜索直至所述搜索成功。
全文摘要
協(xié)同服務(wù)平臺的無服務(wù)器發(fā)布服務(wù)可便于協(xié)同端點之間的協(xié)同。無服務(wù)器發(fā)布服務(wù)可被配置成接受來自協(xié)同端點的通信連接。協(xié)同服務(wù)平臺的用戶可向無服務(wù)器發(fā)布服務(wù)發(fā)布其相關(guān)聯(lián)的協(xié)同在場。例如,用戶的協(xié)同在場可包括相關(guān)于用戶的有效協(xié)同端點和那些端點上的協(xié)同能力的信息。對所發(fā)布協(xié)同在場的預(yù)訂可通過無服務(wù)器發(fā)布服務(wù)進行。協(xié)同在場預(yù)訂消息可指定對用戶的協(xié)同在場的預(yù)訂。在接收到在場預(yù)訂消息之后,如果沒有與發(fā)送者相關(guān)的預(yù)訂策略,則可向接收者查詢與發(fā)送者相關(guān)的預(yù)訂策略??筛鶕?jù)預(yù)訂策略接受該預(yù)訂。
文檔編號G06F15/16GK101268454SQ200580049565
公開日2008年9月17日 申請日期2005年8月31日 優(yōu)先權(quán)日2005年4月25日
發(fā)明者D·G·泰勒, R·T·拉奧, R·古普塔, R·塞米奧尼斯克, S·K·辛格豪爾, T·R·曼尼恩 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1