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

用于進行項目共享的即時通信客戶機和方法

文檔序號:6641725閱讀:277來源:國知局
專利名稱:用于進行項目共享的即時通信客戶機和方法
技術(shù)領(lǐng)域
本發(fā)明一般地涉及網(wǎng)絡(luò)通信技術(shù),更具體地說,本發(fā)明涉及在使用即時通信(Instant MessagingIM)軟件的客戶機之間進行文件/文件夾共享的解決方案。
背景技術(shù)
眾所周知,在20世紀50、60年代網(wǎng)絡(luò)的發(fā)展初期,其只為某些專業(yè)技術(shù)人士所掌握,并主要服務(wù)于政治、軍事等目的。但是僅經(jīng)過短短半個世紀,伴隨著計算機技術(shù)的快速發(fā)展、個人計算機的出現(xiàn)、TCP/IP協(xié)議的提出和流行以及Internet的誕生,網(wǎng)絡(luò)技術(shù)飛速演進,并且在20世紀90年代開始用于商業(yè)用途。Internet的商業(yè)化成為其發(fā)展的一劑催化劑,使得它以空前的速度迅速發(fā)展,并滲入到了政府、醫(yī)療、教育等各個社會部門,成為人們?nèi)粘I钪胁豢苫蛉钡囊粋€重要組成部分。
與網(wǎng)絡(luò)的日新月異的發(fā)展趨勢相適應(yīng)的是,網(wǎng)絡(luò)的功能也隨著消費需求的提高而逐漸擴展,網(wǎng)絡(luò)功能呈現(xiàn)多元化特點。在紛繁復(fù)雜的多種功能之中,即時通信是其中十分重要的一個方面。
即時通信自1996年面世以來,只經(jīng)歷短暫的市場認知周期便被廣大使用者所青睞。即時通信開始于ICQ軟件,其最大的特點就是能夠通過網(wǎng)絡(luò)進行實時通信。即時通信作為使用頻率最高的網(wǎng)絡(luò)軟件,已經(jīng)突破了作為技術(shù)工具的極限,被認為是現(xiàn)代交流方式的象征,并構(gòu)建起一種新的社會關(guān)系。它是迄今為止對人類社會生活改變最為深刻的一種網(wǎng)絡(luò)新形態(tài)。各種即時通信軟件也層出不窮,例如QQ、MSN、Yahoo Messenger、AOL Instant Messenger等。隨著應(yīng)用的發(fā)展,今天的即時通信產(chǎn)品已經(jīng)形成一種綜合的網(wǎng)絡(luò)通信工具。
即時通信很類似于電話服務(wù),只不過電話是以人的聲音來溝通,而即時通信則主要是透過文字來溝通。但是,隨著用戶使用需求的不斷變化,即時通信提供的服務(wù)越來越周全,應(yīng)用的范圍越來越廣闊,用戶已經(jīng)不能滿足只通過即時通信軟件來進行文字溝通,還希望通過它來進行文件共享。
然而,對于目前的即時通信軟件而言,進行文件共享不是件容易的事。以下通過兩個例子來進行說明。
例一假定用戶A擁有大量的音樂文件,并且希望和用戶B共享,但是用戶B只需要用戶A的一部分音樂,而不是所有音樂。
在這種情況下,目前即時通信軟件的一般做法是,用戶A和用戶B聊天,并將自己擁有的音樂文件告知用戶B。用戶B查看這些文件并告訴用戶A哪些是自己需要的。然后用戶A將用戶B需要的音樂文件發(fā)送給用戶B,來達到“共享”目的。
這種共享可以通過如下幾種方式實現(xiàn)1)“發(fā)送文件”功能大多數(shù)的即時通信軟件都支持這一功能;2)“共享文件”功能少數(shù)即時通信軟件(例如,AIM)支持這一功能,但只能共享指定的文件夾;3)通過電子郵件附件的形式;以及4)如果是在LAN中,還可以使用Windows的文件共享功能。
例二假定用戶A擁有大量的音樂文件,并且希望將其中的一些與用戶B共享,而將另外一些與用戶C共享,但是用戶B和C處于用戶A的聯(lián)系人列表(或伙伴列表)的不同組中。
如果使用支持“共享文件”功能的即時通信軟件(例如,AIM),用戶需要首先指定一個文件夾來與其他用戶進行共享,并將其希望與用戶B共享的文件復(fù)制到該文件夾中。之后,用戶A將用戶B所在的組的權(quán)限設(shè)定為可以訪問該共享的文件夾,以便用戶B能夠訪問該共享的文件夾并獲得文件。在用戶B獲得了需要的文件后,用戶A從該共享的文件夾刪除所有文件,再將其希望與用戶C共享的文件復(fù)制到該文件夾中,并將用戶C所在的組的權(quán)限設(shè)定為可以訪問該共享的文件夾,以便用戶C能夠訪問該共享的文件夾并獲得文件。
可以看出,無論對于以上例一還是例二的情形,都不能在即時通信軟件用戶之間實現(xiàn)自動、靈活的文件共享,都需要較多的人工操作和干預(yù)。
在2004年10月日授予I.Rosenblatt等人的題為“Techniques forfacilitating item sharing”的美國專利US2004/0199514A1中,描述了通過即時通信軟件進行文件共享的技術(shù)方案。以上例一中第2)項的“共享文件”功能以及例二的情形類似于該專利所提出的方案。在該專利中,使用一個共享窗口來維護一個共享文件/文件夾的列表,用戶可以將希望與他人共享的文件或文件夾添加到共享窗口中,其他用戶能且僅能訪問該共享窗口中列出的文件和文件夾。
另外,在2004年4月8日授予A.Amir等人的題為“Peer-to-peerfile sharing”的美國專利US2004068524中公開了在多個用戶之間建立一個共享的文件夾,在所有這些用戶之間共享這個文件夾中的內(nèi)容。共享的文件夾中的文件可能存在于不同的用戶的計算機上。但是,在該專利中,并未特別涉及在即時通信軟件中進行文件共享,而且其需要創(chuàng)建一個虛擬文件來實現(xiàn)所述共享。
由此可見,需要一種能夠便于在使用即時通信軟件的用戶之間進行文件/文件夾共享的解決方案。

發(fā)明內(nèi)容
考慮到上述問題,提出了本發(fā)明的用于進行項目共享的即時通信客戶機、服務(wù)器、系統(tǒng)和方法。通過使用本發(fā)明,一方面,使得擁有項目的用戶能夠容易地與其他用戶進行共享;另一方面,希望共享他人項目的用戶也能夠容易地查看和/或獲取他人共享出的那些項目。這里,所說的“項目”可以是“文件和/或文件夾”。
根據(jù)本發(fā)明的第一方面,提供一個第一即時通信客戶機,用于向一個或多個第二即時通信客戶機共享出項目,所述一個或多個第二即時通信客戶機是所述第一即時通信客戶機的聯(lián)系人/聯(lián)系人組,所述第一即時通信客戶機包括聯(lián)系人存儲裝置,用于存儲各聯(lián)系人/聯(lián)系人組的信息;項目存儲裝置,用于至少存儲將與所述各聯(lián)系人/聯(lián)系人組共享的項目;選擇裝置,用于分別從聯(lián)系人存儲裝置和項目存儲裝置中選擇要與之進行共享的聯(lián)系人/聯(lián)系人組和要與之共享的項目;訪問控制列表生成裝置,用于響應(yīng)于選擇裝置的選擇,生成訪問控制列表,所述訪問控制列表相關(guān)聯(lián)地存儲要與之進行共享的聯(lián)系人/聯(lián)系人組和要與之共享的項目的標識信息。
根據(jù)本發(fā)明的第二方面,提供一種用于一個第一即時通信客戶機的方法,用于向一個或多個第二即時通信客戶機共享出項目,所述一個或多個第二即時通信客戶機是所述第一即時通信客戶機的聯(lián)系人/聯(lián)系人組,所述方法包括選擇要與之進行共享的特定聯(lián)系人/聯(lián)系人組;選擇要與所述特定聯(lián)系人/聯(lián)系人組共享的項目;響應(yīng)于上述兩個選擇步驟,生成一個訪問控制列表,所述訪問控制列表相關(guān)聯(lián)地存儲要與之進行共享的聯(lián)系人/聯(lián)系人組和要與之共享的項目的標識信息。
根據(jù)本發(fā)明的三方面,提供一個第一即時通信客戶機,用于從一個第二即時通信客戶機獲取在該第二即時通信客戶機上的共享項目信息,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述第一即時通信客戶機包括請求生成裝置,用于響應(yīng)第一即時通信客戶機的請求操作,生成一個獲取共享項目信息的請求,所述請求中包括所述第二即時通信客戶機的標識信息和共享項目的指定信息;發(fā)送裝置,用于將所述請求發(fā)送給所述即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到所述第二即時通信客戶機;
接收裝置,用于從即時通信服務(wù)器接收來自所述第二即時通信客戶機的對所述請求的響應(yīng)。
根據(jù)本發(fā)明第四方面,提供一種用于一個第一即時通信客戶機的方法,用于從一第二即時通信客戶機獲取在該第二即時通信客戶機上的共享項目信息,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述方法包括響應(yīng)第一即時通信客戶機的請求操作,生成一個獲取共享項目信息的請求,所述請求中包括所述第二即時通信客戶機的標識信息和共享項目的指定信息;將所述請求發(fā)送給即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到所述第二即時通信客戶機;從即時通信服務(wù)器接收來自所述第二即時通信客戶機的對所述請求的響應(yīng)。
根據(jù)本發(fā)明的第五方面,提供一個第一即時通信客戶機,用于響應(yīng)來自一個第二即時通信客戶機的獲取共享項目信息的請求,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述第一即時通信客戶機包括接收裝置,用于從即時通信服務(wù)器接收來自所述第二即時通信客戶機的所述請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、以及共享項目的指定信息;管理裝置,用于通過查閱一個訪問控制列表,根據(jù)所述請求中包括的第二即時通信客戶機的標識信息以及共享項目的指定信息,確定所述第二即時通信客戶機的請求是否是被授權(quán)的;發(fā)送裝置,用于根據(jù)請求是否是被授權(quán)的,將對請求的響應(yīng)發(fā)送給所述即時通信服務(wù)器,以便返回給所述第二即時通信客戶機。
根據(jù)本發(fā)明的第六方面,提供一種用于一個第一即時通信客戶機的方法,用于響應(yīng)來自一個第二即時通信客戶機的獲取共享項目信息的請求,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述方法包括
從即時通信服務(wù)器接收來自所述第二即時通信客戶機的所述請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、以及共享項目的指定信息;通過查閱一個訪問控制列表,根據(jù)所述請求中包括的第二即時通信客戶機的標識信息以及共享項目的指定信息,確定所述第二即時通信客戶機的請求是否是被授權(quán)的;根據(jù)請求是否是被授權(quán)的,將對請求的響應(yīng)發(fā)送給所述即時通信服務(wù)器,以便返回給所述第二即時通信客戶機。
根據(jù)本發(fā)明的第七方面,提供一個即時通信服務(wù)器,其與多個即時通信客戶機相連,所述多個即時通信客戶機中的一個第一即時通信客戶機共享出項目,一個第二即時通信客戶機請求從所述第一即時通信客戶機獲取共享項目信息,所述即時通信服務(wù)器包括第一接收裝置,用于從第二即時通信客戶機接收對共享項目信息的請求,所述請求包括所述第一、第二即時通信客戶機的標識信息和共享項目指定信息;第一轉(zhuǎn)發(fā)裝置,用于根據(jù)所述第一即時通信客戶機的標識信息將所述請求轉(zhuǎn)發(fā)給所述第一即時通信客戶機;第二接收裝置,用于從所述第一即時通信客戶機接收對所述請求的響應(yīng);第二轉(zhuǎn)發(fā)裝置,用于將所述響應(yīng)轉(zhuǎn)發(fā)給所述第二即時通信客戶機。
根據(jù)本發(fā)明的第八方面,提供一種用于一個即時通信服務(wù)器的方法,所述即時通信服務(wù)器與多個即時通信客戶機相連,所述多個即時通信客戶機中的一個第一即時通信客戶機共享出項目,一個第二即時通信客戶機請求從所述第一即時通信客戶機獲取共享項目信息,所述方法包括從第二即時通信客戶機接收對共享項目信息的請求,所述請求包括所述第一、第二即時通信客戶機的標識信息和共享項目指定信息;根據(jù)所述第一即時通信客戶機的標識信息將所述請求轉(zhuǎn)發(fā)給所述第一即時通信客戶機;從所述第一即時通信客戶機接收對所述請求的響應(yīng);將所述響應(yīng)轉(zhuǎn)發(fā)給所述第二即時通信客戶機。
根據(jù)本發(fā)明的第九方面,提供一個第一即時通信客戶機,用于請求開始從一個第二即時通信客戶機接收在該第二即時通信客戶機上共享出的項目,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述第一即時通信客戶機包括請求生成裝置,用于響應(yīng)用戶的請求操作,生成開始接收共享項目的請求,所述請求中包括第二即時通信客戶機的標識符、共享項目的指定信息以及用于項目傳送的參數(shù);發(fā)送裝置,用于將所述請求發(fā)送給即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到所述第二即時通信客戶機;項目接收裝置,用于通過基于所述用于項目傳送的參數(shù)與所述第二即時通信客戶機之間建立的通信連接,從所述第二即時通信客戶機接收共享的項目。
根據(jù)本發(fā)明的第十方面,提供一種用于一個第一即時通信客戶機的方法,用于請求開始從一個第二即時通信客戶機接收在該第二即時通信客戶機上共享出的項目,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述方法包括響應(yīng)用戶的請求開始接收共享項目的操作,生成請求開始接收共享項目的請求,所述請求中包括第二即時通信客戶機的標識符、共享項目的指定信息以及用于項目傳送的參數(shù);將所述請求發(fā)送給即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到所述第二即時通信客戶機;通過基于所述用于項目傳送的參數(shù)與所述第二即時通信客戶機之間建立的通信連接,從所述第二即時通信客戶機接收共享的項目。
根據(jù)本發(fā)明的第十一方面,提供一個第一即時通信客戶機,用于根據(jù)來自一個第二即時通信客戶機的請求將共享項目傳送到該第二即時通信客戶機,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述第一即時通信客戶機包括接收裝置,用于從即時通信服務(wù)器接收來自所述第二即時通信客戶機的開始接收共享項目的請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、共享項目的指定信息以及用于項目傳送的參數(shù);管理裝置,用于通過查閱一個訪問控制列表,根據(jù)所述請求中包括的第二即時通信客戶機的標識信息以及共享項目的指定信息,確定所述第二即時通信客戶機的請求是否是被授權(quán)的;項目傳送裝置,用于響應(yīng)于管理裝置確定所述請求是被授權(quán)的,基于所述用于項目傳送的參數(shù)與所述第二即時通信客戶機之間建立通信連接,以將共享項目傳送到所述第二即時通信客戶機。
根據(jù)本發(fā)明的第十二方面,提供一種用于一個第一即時通信客戶機的方法,用于根據(jù)來自一個第二即時通信客戶機的請求將共享項目傳送到該第二即時通信客戶機,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述方法包括從即時通信服務(wù)器接收來自所述第二即時通信客戶機的開始接收共享項目的請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、共享項目的指定信息以及用于項目傳送的參數(shù);通過查閱一個訪問控制列表,根據(jù)所述請求中包括的第二即時通信客戶機的標識信息以及共享項目的指定信息,確定所述第二即時通信客戶機的請求是否是被授權(quán)的;響應(yīng)于確定所述請求是被授權(quán)的,基于所述用于項目傳送的參數(shù)與所述第二即時通信客戶機之間建立通信連接,將共享項目傳送到所述第二即時通信客戶機。
根據(jù)本發(fā)明的第十二方面,提供一種即時通信服務(wù)器,其與多個即時通信客戶機相連,所述多個即時通信客戶機中的一個第一即時通信客戶機共享出項目,一個第二即時通信客戶機請求開始從所述第一即時通信客戶機接收共享項目,所述即時通信服務(wù)器包括第一接收裝置,用于從第二即時通信客戶機接收開始接收共享項目的請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、共享項目指定信息以及用于項目傳送的參數(shù);第一轉(zhuǎn)發(fā)裝置,用于根據(jù)所述第一即時通信客戶機的標識信息將所述請求轉(zhuǎn)發(fā)給所述第一即時通信客戶機。
根據(jù)本發(fā)明的第十三方面,提供一種用于即時通信服務(wù)器的方法,所述即時通信服務(wù)器與多個即時通信客戶機相連,所述多個即時通信客戶機中的一個第一即時通信客戶機共享出項目,一個第二即時通信客戶機請求開始從所述第一即時通信客戶機接收共享項目,所述方法包括從第二即時通信客戶機接收開始接收共享項目的請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、共享項目指定信息以及用于項目傳送的參數(shù);根據(jù)所述第一即時通信客戶機的標識信息將所述請求轉(zhuǎn)發(fā)給所述第一即時通信客戶機。
根據(jù)本發(fā)明還提供了包括上述即時通信客戶機和服務(wù)器的即時通信系統(tǒng),以及用于所述即時通信系統(tǒng)的方法。


圖1是常規(guī)即時通信系統(tǒng)的構(gòu)成示意圖。
圖2A表示共享源客戶機從即時通信軟件中共享出文件和/或文件夾時的用戶界面。
圖2B表示共享源客戶機從Windows操作系統(tǒng)的資源管理器中共享出文件和/或文件夾時的用戶界面。
圖3表示了共享目標客戶機查看某個共享源客戶機共享出哪些文件和/或文件夾時的用戶界面。
圖4示出了根據(jù)本發(fā)明的共享源客戶機在共享出文件/文件夾時的結(jié)構(gòu)示意圖。
圖5示出了共享源客戶機在共享出文件/文件夾時的操作流程圖。
圖6示出了共享目標客戶機希望獲取共享項目信息時,共享目標客戶機的結(jié)構(gòu)示意圖。
圖7示出了共享目標客戶機執(zhí)行的方法的流程圖。
圖8示出了共享源客戶機的結(jié)構(gòu)示意圖。
圖9示出了管理裝置的進一步結(jié)構(gòu)。
圖10示出了共享源客戶機執(zhí)行的方法的流程圖。
圖11示出了根據(jù)本發(fā)明的優(yōu)選實施方式,共享源客戶機執(zhí)行的方法的流程圖。
圖12示出了即時通信服務(wù)器的結(jié)構(gòu)示意圖。
圖13是即時通信服務(wù)器執(zhí)行的方法的流程圖。
圖14示出了共享目標客戶機從共享源客戶機請求開始項目接收時,共享目標客戶機的結(jié)構(gòu)示意圖。
圖15示出了共享目標客戶機執(zhí)行的方法的流程圖。
圖16示出了共享源客戶機的結(jié)構(gòu)示意圖。
圖17示出了管理裝置的進一步結(jié)構(gòu)。
圖18示出了共享源客戶機執(zhí)行的方法的流程圖。
圖19示出了根據(jù)本發(fā)明的優(yōu)選實施方式,共享源客戶機執(zhí)行的方法的流程圖。
圖20示出了即時通信服務(wù)器的結(jié)構(gòu)示意圖。
圖21是即時通信服務(wù)器執(zhí)行的方法的流程圖。
圖22示出了請求獲取項目操作的流程圖。
具體實施例方式
以下將參照附圖對本發(fā)明的優(yōu)選實施方式進行說明。
圖1示出了常規(guī)即時通信系統(tǒng)的構(gòu)成示意圖。所述即時通信系統(tǒng)100包括即時通信服務(wù)器110,并且包括若干即時通信客戶機與所述即時通信服務(wù)器110通信相連。這里為了清楚起見,只示出了即時通信客戶機120和130,但是應(yīng)當(dāng)理解,可以有任何數(shù)量的即時通信客戶機與所述即時通信服務(wù)器110相連。
如果即時通信客戶機(120或130)希望參與即時通信,需首先向服務(wù)器110進行注冊,之后,方可與其他客戶機進行即時通信(例如,聊天)。各即時通信客戶機之間的通信是對等的。對于某些即時通信軟件而言,在各客戶機之間的通信需要經(jīng)由服務(wù)器進行傳送,對于另一些即時通信軟件,則可以直接在客戶機之間進行通信,而無需經(jīng)由服務(wù)器。
本發(fā)明提供了在這些即時通信客戶機之間進行文件共享的機制。以下為了便于說明本發(fā)明,將共享出文件/文件夾的即時通信客戶機稱為“共享源客戶機”,其用戶稱為“共享源用戶”,將獲取他人共享出的文件/文件夾的即時通信客戶機稱為“共享目標客戶機”,其用戶稱為“共享目標用戶”。
對用戶界面的改動1.共享源客戶機根據(jù)本發(fā)明的優(yōu)選實施方式,共享源客戶機可以通過如下三種方式,在用戶界面上共享出文件和/或文件夾。
第一種方式圖2A表示共享源客戶機從即時通信軟件(這里為“IBM LotusSametime”)中共享出文件和/或文件夾時的用戶界面。
如圖2A所示的用戶界面200包括借助電子郵件地址表示的共享源客戶機的多個聯(lián)系人。假定共享源客戶機希望將文件與其中的某個聯(lián)系人210進行共享,則可以通過點擊鼠標右鍵,顯示一個與環(huán)境相關(guān)的菜單220。所顯示的菜單220除包括現(xiàn)有的即時通信菜單項之外,還包括一個新的“share files”(共享文件)菜單項230。共享源用戶可通過點擊“share files”菜單項230,彈出一個對話框(未顯示),從中選擇希望共享給聯(lián)系人210的文件和/或文件夾。
第二種方式圖2B表示共享源客戶機從Windows操作系統(tǒng)的資源管理器中共享出文件和/或文件夾時的用戶界面。
如圖2B所示的用戶界面240包括兩個瀏覽器窗格250和260,左側(cè)窗格250表示了在系統(tǒng)桌面上的文件/文件夾目錄。如果共享源用戶希望將其中的“My Music”文件夾共享出來,那么可以點擊鼠標右鍵,這一方面會為“My Music”文件夾顯示一個與環(huán)境相關(guān)的菜單270,另一方面會在右側(cè)窗格260中顯示了該文件夾的內(nèi)容。所述菜單270除包括資源管理器本身應(yīng)當(dāng)具有的其他菜單選項外,還包括一個新的“Sharing with buddies…”菜單項280。當(dāng)共享源用戶點擊“Sharingwith buddies…”菜單項280時,便會彈出一個對話框(未顯示),以便從中選擇將與哪些用戶或用戶組共享“My Music”文件夾。
應(yīng)當(dāng)理解,盡管這里使用Windows操作系統(tǒng)為例進行說明,但本發(fā)明并不局限于此,任何能夠在其中使用即時通信軟件的操作系統(tǒng)(如,Mac OS)都是可行的。
第三種方式在這種方式中,可以在當(dāng)前即時通信軟件的菜單欄中給出一個新的功能菜單項,如“File Share”。當(dāng)用戶點擊這一菜單項時便會彈出對話框以允許用戶從中選擇將哪些文件/文件夾共享出去,并且還允許用戶從其聯(lián)系人列表中選擇與哪些用戶/用戶組進行共享。
2.共享目標客戶機圖3表示了共享目標客戶機查看某個共享源客戶機共享出哪些文件和/或文件夾時的用戶界面。
如圖3所示的用戶界面300包括借助電子郵件地址表示的共享目標客戶機的多個聯(lián)系人。假定共享目標客戶機希望查看某個聯(lián)系人310共享出的文件/文件夾,則可以通過點擊鼠標右鍵,顯示該聯(lián)系人310的與環(huán)境相關(guān)的菜單320。所顯示的菜單320除包括現(xiàn)有的即時通信菜單項之外,還包括一個新的“view shared files…”(查看共享文件)菜單項330。共享目標用戶可通過點擊“view shared files…”菜單項330,彈出一個對話框(未顯示),在其中顯示出共享源用戶已經(jīng)共享出的文件和/或文件夾的列表(如果有的話)。
以上結(jié)合IBM Lotus Sametime即時通信軟件的用戶界面,描述了執(zhí)行本發(fā)明需要對用戶界面進行哪些改動,并且給出了示例性的新菜單項(例如,“share files”,“view shared files…”)。但是應(yīng)當(dāng)理解,本發(fā)明不只適用于IBM Lotus Sametime,而是同樣適用于其他即時通信軟件,而且所給出的菜單項的文字可以根據(jù)需要進行變化。
訪問控制列表在本發(fā)明中,共享源客戶機需要維護一個訪問控制列表,用于指明向誰共享文件和共享哪些文件。這可以看作對共享目標用戶的一種授權(quán),從而如果一個共享目標客戶機希望訪問共享源客戶機共享的文件/文件夾,其必須已經(jīng)在該共享源客戶機的訪問控制列表中,而且只能訪問共享給他的那些文件。表1示出了根據(jù)本發(fā)明的優(yōu)選實施方式的訪問控制列表數(shù)據(jù)結(jié)構(gòu)。
表1

在表1中,ID字段用于表示每個共享目標用戶的標識符,共享目標用戶可以是單個用戶,也可以是用戶組。
IDTYPE字段這是一個可選的字段,用于表示該共享目標用戶的類型是單個用戶還是一個用戶組。在表1中,示例性地用“U”表示單個用戶,用“G”表示用戶組。
SHARENAME字段共享名字段,用于表示希望以怎樣的名稱將項目共享出去;在默認情況下,為要共享的頂級文件/文件夾的名稱;例如,對于用戶1,由于共享的是My Music文件夾下的所有子文件夾和文件,因此共享名為頂級文件夾名My Music,對于用戶2,由于Sunset.jpeg是共享的頂級文件,因此共享名為Sunset.jpeg。
PATHNAME字段用于表示共享的文件/文件夾在共享源客戶機中的絕對路徑。
以上只列出了訪問控制列表的幾個示例性字段,但本領(lǐng)域技術(shù)人員能夠理解,還可以根據(jù)需要加入其他字段。
由表1的數(shù)據(jù)結(jié)構(gòu)可以看出,訪問控制列表相關(guān)聯(lián)地存儲標識共享目標用戶的信息和標識共享項目的信息。
訪問控制列表的每一行代表一個共享目標用戶。每當(dāng)針對某個共享目標客戶機進行了文件/文件夾共享,則在該表中添加一行。根據(jù)本發(fā)明的優(yōu)選實施方式,當(dāng)對一個共享目標用戶進行了多次共享時,可以針對每一次共享都建立新的一行。
這個訪問控制列表可以在每當(dāng)針對某個共享目標用戶共享了文件或文件夾后,由共享源用戶手動生成一行,也可以優(yōu)選地由即時通信軟件自動生成一行。由即時通信軟件自動生成列表行是容易實現(xiàn)的。如參照圖2-3的用戶界面所述,要與之進行共享的目標客戶機以及要共享哪些項目都是通過共享源客戶機進行選擇或輸入的,在進行這種選擇和輸入時軟件當(dāng)然可以容易地獲知這些信息,以填充到表格中。
所述訪問控制列表可以存儲在共享源客戶機本地的一個數(shù)據(jù)庫或文件中。另外,考慮到安全性因素,最好對此列表進行加密。
通過使用這一訪問控制列表,使得共享源客戶機能夠針對不同的用戶共享不同的文件或文件夾,從而與現(xiàn)有技術(shù)相比,顯著地提高了共享的靈活性。
共享源客戶機共享出文件/文件夾時的配置和操作共享源用戶可以采用“對用戶界面的改動”一節(jié)中提到的三種方式之一來對共享目標用戶設(shè)定共享文件/文件夾。在共享源用戶設(shè)定共享時,不要求對應(yīng)的共享目標用戶在線。
圖4示出了根據(jù)本發(fā)明的共享源客戶機在共享出文件/文件夾時的結(jié)構(gòu)示意圖。如圖4所示,所述共享源客戶機400包括聯(lián)系人存儲裝置410,項目存儲裝置420,選擇裝置430,以及訪問控制列表生成裝置440。
所述聯(lián)系人存儲裝置410存儲著共享源客戶機400的聯(lián)系人及其標識信息。對于不同的即時通信軟件,所述標識信息可以是聯(lián)系人的電子郵件地址(如圖1中Lotus Sametime軟件的用戶界面100所示),可以是聯(lián)系人的QQ號碼(例如,對于騰訊QQ)或者其他可以標識出各個聯(lián)系人的信息。在本說明書中,如果沒有特別指出,“聯(lián)系人”既表示單個用戶的聯(lián)系人,也表示以用戶組形式出現(xiàn)的聯(lián)系人(即,聯(lián)系人組)。
所述項目存儲裝置420可以是用于存儲所述共享源客戶機的文件/文件夾的存儲器,包括硬盤驅(qū)動器、軟盤驅(qū)動器、光盤驅(qū)動器或其他能進行文件存儲的介質(zhì),所述項目存儲裝置420存儲的文件中至少有一些是要與其他聯(lián)系人共享的。
所述選擇裝置430為共享源用戶從聯(lián)系人存儲裝置410中選擇要與之共享的聯(lián)系人,和從項目存儲裝置420中選擇要共享的文件/文件夾提供了機制。所述選擇裝置430可以有多種實現(xiàn)方式,如果使用如圖2A、2B所示的在其中已經(jīng)列出了可選的聯(lián)系人/文件的用戶界面,所述選擇裝置430可以是硬件輸入裝置,如鍵盤、鼠標、手寫筆、觸摸板、麥克風(fēng)等,以便用戶能夠直接進行選擇;如果用戶界面并未列出可選的聯(lián)系人和/或文件,那么所述選擇裝置430還可以包括相應(yīng)的軟件輸入裝置,如文本框,以便用戶能夠使用鍵盤等在其中輸入要選擇的內(nèi)容。
所述訪問控制列表生成裝置440用于響應(yīng)所述選擇裝置430從聯(lián)系人存儲裝置410和項目存儲裝置420中的選擇,生成訪問控制列表。所述訪問控制列表生成裝置440可以通過如下方式之一生成訪問控制列表。
當(dāng)用戶例如通過在“對用戶界面的改動”一節(jié)中提到的三種方式之一,選擇了特定的聯(lián)系人以及要與該聯(lián)系人共享的文件/文件夾后,可以手動將與訪問控制列表的各字段對應(yīng)的信息填充到所述訪問控制列表中,以手動方式生成所述列表行。
或者,根據(jù)本發(fā)明的優(yōu)選實施方式,所述共享源客戶機400能夠在用戶選擇了特定的聯(lián)系人以及要與該聯(lián)系人共享的文件/文件夾后,自動提取與訪問控制列表的各字段對應(yīng)的信息,以便填充到訪問控制列表的數(shù)據(jù)結(jié)構(gòu)中。這樣可以免去由用戶人工填寫帶來的不便,提高共享的自動化程度。
在這種情況下,訪問控制列表生成裝置440可以進一步包括提取裝置(未示出),用于響應(yīng)于共項目標用戶和共享項目的選擇,提取與訪問控制列表的各字段對應(yīng)的信息;填充裝置(未示出),用于將提取的信息填充到所述訪問控制列表的數(shù)據(jù)結(jié)構(gòu)中。由于聯(lián)系人以及要與之共享的文件/文件夾是由用戶選定或輸入的,共享源客戶機400的提取裝置能夠獲得這一信息是容易理解的。
實際上,本發(fā)明只是需要一個訪問控制列表,以便將必需的信息存儲在其中,從而控制共享目標客戶機的訪問。因此,只要能夠?qū)⒈匦璧男畔⒋鎯Φ竭@個列表中,具體通過何種方式存儲(或者說,通過何種方式生成這個表)不會對本發(fā)明的實施帶來影響。
圖5示出了所述共享源客戶機400的操作流程圖。
所述操作從步驟500開始,隨后進入步驟510。在步驟510中,共享源用戶從聯(lián)系人列表中選擇要與之進行共享的聯(lián)系人,并在步驟520中選擇共享給該聯(lián)系人的文件/文件夾。共享源用戶在完成了這兩個選擇操作后,在步驟530中,提取所述聯(lián)系人以及共享給該聯(lián)系人的項目的標識信息,以生成訪問控制列表。隨后,該方法在步驟540中結(jié)束。
本領(lǐng)域技術(shù)人員能夠理解,圖5中步驟510和520的執(zhí)行順序可以互換,而不會影響本發(fā)明的實施。
另外,所述步驟530的操作可以由共享源用戶手動完成,也可以由共享源客戶機400自動執(zhí)行。
共享目標客戶機希望獲取與共享源客戶機共享出的項目相關(guān)的信息時通信各方的配置和操作在共享源客戶機共享出項目后,共享目標客戶機可以例如通過如圖3所示的用戶界面和操作,從共享源客戶機請求與共享源客戶機共享出的項目相關(guān)的信息(簡稱“共享項目信息”),這些信息包括但不限于項目(如,文件/文件夾)的屬性、大小、創(chuàng)建時間等。在獲得這些信息后,共享目標客戶機可以基于它們來決定是否實際請求傳送文件/文件夾。
以下描述在這一過程中通信各方涉及結(jié)構(gòu)和操作。
1.共享目標客戶機圖6示出了共享目標客戶機600的結(jié)構(gòu)示意圖。所述客戶機600包括請求生成裝置610、發(fā)送裝置620和接收裝置630。
當(dāng)用戶如圖3所示那樣選擇了“view shared files…”菜單項時,請求生成裝置610會生成一個共享項目信息請求,并在請求中附加一些參數(shù),這些參數(shù)包括但不限于共享源客戶機的ID以及共享出的項目的指定信息。
在請求中發(fā)送共享源客戶機的ID,是為了即時通信服務(wù)器能夠知道是向哪個共享源客戶機請求信息,從而能夠?qū)⒄埱筠D(zhuǎn)發(fā)給它。
共享項目的指定信息用于指定共享目標客戶機600希望獲得有關(guān)哪些共享項目的信息。共享項目的指定信息可以是以下三種類型1)如果共享目標用戶希望請求針對自己共享的所有項目的信息,則可以用諸如“\”之類的標識符,作為共享項目的指定信息,這通常是在用戶首次進行請求,或者不知道共享名時的做法。
2)如果希望請求針對某個共享名的項目信息,則可以發(fā)送該共享名,作為共享項目的指定信息。
3)如果用戶希望獲得的共享項目信息是某個共享名之下的特定文件或子文件夾的信息,則可以在給出共享名的同時,指定特定文件或子文件夾到所述共享名的相對路徑,作為共享項目的指定信息。
對于第2、3種類型而言,共享目標客戶機600可能先前已經(jīng)請求并從共享源客戶機獲得了共享項目信息。從共享源客戶機獲得的共享項目信息可以存儲在共享目標客戶機600的本地或其它適當(dāng)?shù)奈恢?,以便在需要的時候使用。
另外,根據(jù)本發(fā)明的一種優(yōu)選實施方式,所述請求的參數(shù)還可以包括共享目標客戶機600本身的標識符。
請求生成裝置610生成的請求通過發(fā)送裝置620發(fā)送到即時通信服務(wù)器。
即時通信服務(wù)器在收到來自共享目標客戶機600的請求后,如果所述請求沒有共享目標客戶機600本身的標識符,則由服務(wù)器自動從請求中提取該標識符,并與請求一同轉(zhuǎn)發(fā)給共享源客戶機?;蛘撸绻埱蟮膮?shù)中已經(jīng)包括了共享目標客戶機600本身的標識符,則服務(wù)器直接將請求轉(zhuǎn)發(fā)給共享源客戶機。收到請求后,共享源客戶機將根據(jù)所述請求是否被授權(quán),來給出相應(yīng)的響應(yīng),再經(jīng)由即時通信服務(wù)器返回共享目標客戶機600(如下文詳述)。
因此,共享目標客戶機600的接收裝置620用于從所述即時通信服務(wù)器接收來自所述共享源客戶機的響應(yīng)。
共享目標客戶機600執(zhí)行的方法的流程圖如圖7所示。
該方法從步驟700開始并進入步驟710。在步驟710中,共享目標客戶機600響應(yīng)于用戶的請求操作,生成一個共享項目信息請求,所述請求如前所述包括一些參數(shù)。在步驟720中,將該請求發(fā)送給即時通信服務(wù)器。在步驟730中,共享目標客戶機600經(jīng)由服務(wù)器接收來自所述共享源客戶機的對所述請求的響應(yīng)。該方法在步驟740中結(jié)束。
2.共享源客戶機圖8示出了共享源客戶機800的結(jié)構(gòu)示意圖。所述客戶機800包括接收裝置810、管理裝置820和發(fā)送裝置830。
所述接收裝置810用于從即時通信服務(wù)器接收來自所述共享目標客戶機600的對共享項目信息的請求。如前所述,這個請求包括若干參數(shù)。
接收裝置810將收到的請求傳遞給管理裝置820。所述管理裝置820可以實現(xiàn)為一個管理線程,用于通過查閱訪問控制列表,根據(jù)所述請求中附加的參數(shù),來確定所述請求是否是被授權(quán)的,并取決于請求是否是被授權(quán)而輸出不同的響應(yīng)結(jié)果。
在請求被授權(quán)時,響應(yīng)結(jié)果為共享目標客戶機600請求的共享項目信息;在請求未被授權(quán)時,響應(yīng)結(jié)果可以是一個錯誤信息。
發(fā)送裝置830用于將所述管理裝置820輸出的結(jié)果傳送給即時通信服務(wù)器,以便進一步返回給共享目標客戶機600。
根據(jù)本發(fā)明,管理裝置820可以通過兩種方式來確定所述請求是否是被授權(quán)的。
在第一種方式中,管理裝置820先將共享目標客戶機600的標識符與共享源客戶機800的聯(lián)系人列表進行比較,如果共享目標客戶機600是聯(lián)系人之一,再將共享目標客戶機600的標識符以及共享項目的指定信息與訪問控制列表進行對比,以確定是否存在匹配。如果存在匹配,則確定請求是被授權(quán)的,否則,則返回錯誤信息。
第二種方式與第一種方式類似,區(qū)別在于,管理裝置820直接將共享目標客戶機600的標識符與共享源客戶機800的訪問控制列表(而不是聯(lián)系人列表)進行對比,如果共享目標客戶機600的標識符存在于訪問列表中,則后續(xù)操作與第一種方式基本相同,否則,將返回錯誤信息。
圖9示出了管理裝置820的進一步結(jié)構(gòu),包括ID判定裝置821,共享名判定裝置822,查找裝置823和輸出裝置824。
在第一種方式中,所述ID判定裝置821通過訪問圖4所示的聯(lián)系人存儲裝置410,用于將所述共享目標客戶機600的標識符與聯(lián)系人存儲裝置中的聯(lián)系人標識符進行比較,以判定共享目標客戶機600的標識符是否在聯(lián)系人列表中;或者在第二種方式中,所述ID判定裝置821通過訪問控制列表,將所述共享目標客戶機600的標識符與訪問控制列表中的用戶ID進行比較,以判定共享目標客戶機600的標識符是否在訪問控制列表中。共享名判定裝置822通過查閱訪問控制列表,判定共享目標客戶機600的標識符、所述請求中提供的共享名是否在訪問控制列表中有匹配。
共享名判定裝置822通過查閱訪問控制列表,判定共享目標客戶機600的標識符、所述請求中提供的共享名是否在訪問控制列表中有匹配。
查找裝置823用于在共享名判定裝置822判定匹配時,從共享源客戶機700的本地文件系統(tǒng)中查找與所述請求中提供的共享名(可能還結(jié)合其相對路徑)相對應(yīng)的文件/文件夾的信息,這里的信息可以包括但不限于文件/文件夾的屬性、大小、創(chuàng)建時間等。
輸出裝置824一方面,在ID比較裝置821或共享名判定裝置822判定不匹配時,輸出錯誤信息,另一方面,在這二者均匹配時,輸出查找裝置823查找到的信息。
以下將對查找裝置823的操作做進一步說明。
響應(yīng)于共享名判定裝置822找到匹配,查找裝置823在訪問控制列表中查找共享名對應(yīng)的絕對路徑,根據(jù)共享名對應(yīng)的絕對路徑(如果請求中提供的相對路徑不為空,則還根據(jù)提供的相對路徑),找到請求的項目的絕對路徑,從文件系統(tǒng)中獲取共享項目的信息,以便由輸出裝置824輸出。
以前述表1中的情形為例,假定共享目標用戶“用戶1”僅提供了共享名“My Music”,那么能夠從訪問控制列表中為用戶1找到與之對應(yīng)的“My Music”文件夾的絕對路徑為“C\Documents andSettings\peter\My Documents\My Music”共享,系統(tǒng)從本地文件系統(tǒng)中獲取文件夾My Music及其子文件夾的信息返回。假定用戶1不僅提供了共享名“My Music”還提供了一個相對路徑,例如“FayeWong\track01”,則表明用戶1希望獲得與My Music文件夾的子文件夾Faye Wong中的track01文件相關(guān)的信息。系統(tǒng)根據(jù)共享名對應(yīng)的絕對路徑再加上相對路徑,得到用戶請求的文件的絕對路徑為“C\Documents and Settings\peter\My Documents\My Music\FayeWong\track01”,系統(tǒng)再從本地文件系統(tǒng)中獲取該文件信息返回。
圖10示出了共享源客戶機800執(zhí)行的方法的流程圖。
該方法從步驟1000開始并進入步驟1010。在步驟1010中,共享源客戶機800從即時通信服務(wù)器接收來自所述共享目標客戶機600的對共享項目信息的請求,如前所述,所述請求包括若干參數(shù)。在收到請求后,該方法在步驟1020中查閱一個訪問控制列表,根據(jù)所述請求中包括的參數(shù),來確定所述共享目標客戶機600的請求是否是被授權(quán)的。響應(yīng)于確定所述請求是被授權(quán)的,則在步驟1030中,將所請求的項目信息發(fā)送給所述即時通信服務(wù)器,或者響應(yīng)于確定所述請求是未被授權(quán)的,則在步驟1030中,將一個錯誤信息傳送給所述即時通信服務(wù)器,以便最終轉(zhuǎn)發(fā)給所述共享目標客戶機600。該方法在步驟1040中結(jié)束。
圖11示出了根據(jù)本發(fā)明的優(yōu)選實施方式,共享源客戶機800執(zhí)行的方法的流程圖。
該方法在步驟1100中開始,隨后進入步驟1110。在步驟1110中,如前所述,共享源客戶機800從即時通信服務(wù)器接收來自所述共享目標客戶機600的對共享項目信息的請求,所述請求包括若干參數(shù)。
在步驟1120中,共享源客戶機800判斷該共享目標用戶是否在聯(lián)系人列表中,如果判定結(jié)果為“是”,則該方法進入步驟1130。
在步驟1130中,進一步判定請求中所包括的共享名是否為“\”。共享目標用戶提供“\”作為共享名表明希望獲得共享給自己的所有共享項目信息,在用戶首次請求共享項目信息時通常是這種情況?;蛘呷绻脩舨恢拦蚕淼捻椖吭诠蚕碓纯蛻魴C800上的共享名,也可以使用“\”作為共享名。應(yīng)當(dāng)理解,使用“\”只是示例性的,也可以采用其他表達式來表明請求所有項目信息。
如果在步驟1130中的判斷為“是”,則該方法進入步驟1140,通過查閱訪問控制列表,共享源客戶機800找出對該共享目標用戶共享出的所有項目的絕對路徑,這里可能包括對該用戶本身共享出的項目和/或針對該用戶所在的用戶組共享出的項目的絕對路徑。
接下來,在步驟1150中,共享源客戶機800根據(jù)找到的絕對路徑,從本地文件系統(tǒng)中獲取共享項目的信息,包括但不限于共享項目的創(chuàng)建時間、大小和屬性,以便傳送給即時通信服務(wù)器,從而最終返回給共享目標客戶機600。
如果在步驟1130中的判斷為“否”,即共享名不等于“\”,而是某個特定的共享名,則該方法進入步驟1160。在這種情況下,共享目標客戶機通常已經(jīng)知道了共享源客戶機800對自己共享了哪些項目,因此希望知道特定文件或文件夾的信息。在步驟1160中,根據(jù)請求中提供的共享名查找匹配。
接下來,在步驟1170中,判定是否能在訪問控制列表中為該共享源客戶機800提供的共享名找到匹配。
如果能找到匹配,則方法進入步驟1180,在訪問控制列表中查找共享名對應(yīng)的絕對路徑,根據(jù)共享名對應(yīng)的絕對路徑(如果請求中提供的相對路徑不為空,則再根據(jù)提供的相對路徑),找到請求的項目的絕對路徑,從文件系統(tǒng)中獲取共享項目的信息,以便傳送給即時通信服務(wù)器,從而最終返回給共享目標客戶機600。如果在步驟1170中判斷沒有找到匹配,則方法進入步驟1190,以便將錯誤信息傳送給即時通信服務(wù)器,從而最終返回給共享目標客戶機600。
如果在步驟1120中的判斷為否,即向共享源客戶機800發(fā)出共享項目信息請求的用戶根本不在共享源客戶機800的聯(lián)系人列表中,則方法直接進入步驟1190,通過返回錯誤信息而結(jié)束該方法。
另外,如果在步驟1150、1180的查找操作過程中發(fā)現(xiàn)先前共享出的項目在共享源客戶機800的本地因被刪除、移動等原因而不存在了,也會向共享目標客戶機600返回錯誤信息。
應(yīng)當(dāng)指出,在圖11所示的方法中,在步驟1120中判斷該共享目標客戶機600是否在共享源客戶機800的聯(lián)系人列表中。但是,在步驟1120中也可以直接判斷該提出請求的用戶是否在共享源客戶機800的訪問控制列表中,從而在最初便將進行請求的用戶限制在存在于訪問控制列表中的用戶。
3.即時通信服務(wù)器圖12示出了即時通信服務(wù)器1200的結(jié)構(gòu)示意圖。
所述即時通信服務(wù)器1200與多個即時通信客戶機相連,但是這里為了便于說明本發(fā)明的原理,只示出了兩個,即共享目標客戶機800和共享源客戶機600。但是應(yīng)當(dāng)理解,即時通信服務(wù)器1200可以與任意數(shù)量的即時通信客戶機相連。
為了執(zhí)行本發(fā)明,所述即時通信服務(wù)器1200包括第一接收裝置1210第一轉(zhuǎn)發(fā)裝置1220,第二接收裝置1230以及第二轉(zhuǎn)發(fā)裝置1240,用虛線表示的參數(shù)附加裝置1250為即時通信服務(wù)器1200的一個優(yōu)選組件。
第一接收裝置1210用于從共享目標客戶機600接收對共享項目信息的請求。
從第一接收裝置1210接收的請求將經(jīng)由第一轉(zhuǎn)發(fā)裝置1220轉(zhuǎn)發(fā)給共享源客戶機800。
在共享源客戶機800執(zhí)行了以上參照圖11描述的操作后,將響應(yīng)傳送給即時通信服務(wù)器1200,這一響應(yīng)由第二接收裝置1230進行接收。
第二轉(zhuǎn)發(fā)裝置1240再將第二接收裝置1230接收的響應(yīng)轉(zhuǎn)發(fā)給共享目標客戶機600。
根據(jù)本發(fā)明的優(yōu)選實施方式,所述即時通信服務(wù)器1200還可以包括一個參數(shù)附加裝置1250。這個參數(shù)附加裝置1250的作用是在當(dāng)來自共享目標客戶機600的共享項目信息請求沒有給出共享目標客戶機600的標識符時,由即時通信服務(wù)器1200自動提取該標識符并將其附加到請求中,一并由第一轉(zhuǎn)發(fā)裝置1220進行轉(zhuǎn)發(fā)。
應(yīng)當(dāng)理解,即時通信服務(wù)器1200獲得與之通信的即時通信客戶機的標識符的操作是本領(lǐng)域中的已知操作,有成熟的技術(shù)可以實現(xiàn),因此這里不再詳細描述。
圖13是即時通信服務(wù)器1200執(zhí)行的方法的流程圖。
該方法在步驟1300中開始,隨后進入1310。在步驟1310中,即時通信服務(wù)器1200從共享目標客戶機600接收對與共享出的項目相關(guān)的信息的請求。接下來,在步驟1320中,將所述請求轉(zhuǎn)發(fā)給共享源客戶機800。并且在共享源客戶機800執(zhí)行了以上參照圖11描述的操作后,在步驟1330中,接收響應(yīng)。然后,在步驟1340中,將響應(yīng)轉(zhuǎn)發(fā)給共享目標客戶機600。這一方法在步驟1350中結(jié)束。
另外,步驟1320還可以包括在請求中附加共享目標客戶機標識符參數(shù)的操作。
共享目標客戶機向共享源客戶機請求開始接收共享項目時的配置和操作共享目標客戶機在請求并查看了共享項目信息后,決定開始接收共享源客戶機共享出來的項目。
以下將描述這一過程中通信各方涉及的結(jié)構(gòu)和操作1.共享目標客戶機圖14示出了共享目標客戶機1400的結(jié)構(gòu)示意圖。所述客戶機1400包括請求生成裝置1410、發(fā)送裝置1420、項目接收裝置1430,用虛線表示的響應(yīng)接收裝置1440是本發(fā)明的優(yōu)選組件。
例如當(dāng)共享目標用戶從即時通信軟件用戶界面(未示出)上選擇了開始接收共享項目的操作時,請求生成裝置1410會生成一個開始接收共享項目請求,并在請求中附加一些參數(shù),這些參數(shù)包括但不限于共享源客戶機的ID以及共享出的項目的指定信息。
共享源客戶機的ID,是為了即時通信服務(wù)器能夠知道是向哪個共享源客戶機請求開始項目接收,從而能夠?qū)⒄埱筠D(zhuǎn)發(fā)給它。
共享項目的指定信息,用于表示共享目標客戶機1400希望獲得哪些共享項目。共享項目的指定信息可以有以下三種類型1)如果共享目標用戶希望請求針對自己共享的所有項目,則可以用諸如“\”之類的標識符,作為共享項目的指定信息。
2)如果希望請求某個共享名的項目,則可以發(fā)送該共享名,作為共享項目的指定信息。
3)如果用戶希望獲得的共享項目是某個共享名之下的特定文件或子文件夾,則可以在給出共享名的同時,指定特定文件或子文件夾到所述共享名的相對路徑,作為共享項目的指定信息。
另外,根據(jù)本發(fā)明的優(yōu)選實施方式,所述請求還可以包括如下參數(shù)a.共享目標客戶機1400本身的標識符;以及b.用于項目傳送的諸參數(shù)b1.將用于項目傳送的共享目標客戶機1400的IP地址;b2.將用于項目傳送的端口地址;b3.將用于項目傳送驗證和/或項目傳送加密的項目傳送會話ID,這一ID可以是由共享目標客戶機1400隨機產(chǎn)生的ID。
用于項目傳送的參數(shù)是由共享目標客戶機1400決定或產(chǎn)生的。這些參數(shù)既可以在請求生成時由共享目標客戶機1400附加到請求中,也可以在請求發(fā)送到即時通信服務(wù)器后,由即時通信服務(wù)器來附加到請求中。
由請求生成裝置1410生成的請求將通過發(fā)送裝置1420,發(fā)送給一個即時通信服務(wù)器。
如果即時通信服務(wù)器收到的請求不包括參數(shù)a、b1、b2、b3,則服務(wù)器會在請求中附加這些參數(shù),然后將請求轉(zhuǎn)發(fā)到共享源客戶機。
收到請求后,共享源客戶機將判斷該開始項目接收的請求是否被授權(quán),如果是,則會根據(jù)請求中包括的用于項目傳送的參數(shù)與共享目標客戶機1400建立通信連接(如下文詳述)。
因此,共享目標客戶機1400的項目接收裝置1430經(jīng)過基于在請求中包括的參數(shù)建立的通信連接與共享源客戶機相連,以接收請求的項目。
根據(jù)本發(fā)明的優(yōu)選實施方式,共享目標客戶機1400還包括響應(yīng)接收裝置1440,用于通過即時通信服務(wù)器從共享源客戶機接收有關(guān)請求是否被授權(quán)的響應(yīng)。
具體而言,一方面,當(dāng)共享源客戶機判斷請求被授權(quán)時,其除與共享目標客戶機1400建立通信連接,還可以將請求被授權(quán)的響應(yīng)傳送給即時通信服務(wù)器,再轉(zhuǎn)發(fā)給共享目標客戶機1400。另一方面,當(dāng)共享源客戶機判斷請求未被授權(quán)時,可以將表示錯誤的信息通過即時通信服務(wù)器轉(zhuǎn)發(fā)給共享目標客戶機1400。
共享目標客戶機1400執(zhí)行的方法的流程圖如圖15所示。
該方法從步驟1500開始并進入步驟1510。在步驟1510中,共享目標客戶機1400生成開始項目接收的請求,并在其中至少附加共享源客戶機的ID以及共享出的項目的指定信息作為參數(shù)。在步驟1520中,將開始項目接收的請求發(fā)送給即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到共享源客戶機,到達共享源客戶機的請求進一步附加有共享目標客戶機1400的標識符以及用于項目傳送的參數(shù)。在步驟1530中,在該請求被授權(quán)的情況下,共享目標客戶機1400經(jīng)過基于在請求中包括的參數(shù)建立的通信連接與共享源客戶機相連,接收請求的項目。根據(jù)本發(fā)明的這一方法在步驟1540中結(jié)束。
2.共享源客戶機圖16示出了共享源客戶機1600的結(jié)構(gòu)示意圖。所述客戶機1600包括接收裝置1610、管理裝置1620、項目傳送裝置1630,用虛線表示的響應(yīng)發(fā)送裝置1640是本發(fā)明的優(yōu)選組件。
所述接收裝置1610用于從即時通信服務(wù)器接收來自所述共享目標客戶機1400的開始接收共享項目的請求。如前所述,這個請求包括若干參數(shù)。
接收裝置1610將收到的請求傳遞給管理裝置1620。所述管理裝置1620可以實現(xiàn)為一個管理線程,用于通過查閱訪問控制列表,根據(jù)請求中包括的參數(shù),來確定所述請求是否是被授權(quán)的,并取決于請求是否是被授權(quán)而決定項目傳送。
項目傳送裝置1630根據(jù)所述請求中發(fā)送的用于建立通信連接的參數(shù),與共享目標客戶機1400建立通信連接,并向其傳送所請求的文件/文件夾。
根據(jù)本發(fā)明,管理裝置1620可以通過如下兩種方式來確定所述請求是否是被授權(quán)的。
在第一種方式中,在收到請求后,管理裝置1620首先判斷用戶是否在共享源客戶機1600的聯(lián)系人列表中,如果在,則進一步根據(jù)該共享目標客戶機1400的標識符和共享名等信息,在訪問控制列表中查找是否有匹配的路徑名。如果有,則表明請求是被授權(quán)的。如果沒有,則再獲得該用戶所在用戶組的名稱,并根據(jù)該組的名稱和共享名等信息,在訪問控制列表中查找是否有匹配的路徑名。如果有,也表明請求是被授權(quán)的。
在第二種方式中,在收到請求后,管理裝置1620首先判斷用戶是否在共享源客戶機1600的訪問控制列表中,如果在,則后續(xù)操作與第一種方式類似,如果不在,則表明請求未被授權(quán)。這樣可以在最初便將進行請求的用戶限制在存在于訪問控制列表中的那些用戶。
圖17示出了管理裝置1620的進一步結(jié)構(gòu),包括聯(lián)系人判定裝置1621,路徑名判定裝置1622,絕對路徑獲得裝置1623和輸出裝置1624。
在第一種方式中,所述聯(lián)系人判定裝置1621通過圖4所示的聯(lián)系人存儲裝置410,用于將所述共享目標客戶機1400的標識符與聯(lián)系人存儲裝置中的聯(lián)系人標識符或者用戶組標識符進行比較,以判定共享目標客戶機1400是否是共享源客戶機1600的聯(lián)系人;或者在第二種方式中,所述聯(lián)系人判定裝置1621通過訪問控制列表,用于將所述共享目標客戶機1400的標識符與訪問控制列表中的用戶ID進行比較,以判定共享目標客戶機1400的標識符是否在訪問控制列表中。
路徑名判定裝置1622通過查閱訪問控制列表,判定共享目標客戶機1400的標識符或其所在用戶組的標識符、所述請求中提供的共享名是否在訪問控制列表中有匹配。
絕對路徑獲得裝置1623用于在路徑名判定裝置1622判定匹配時,獲取所述請求項目的絕對路徑。絕對路徑獲得裝置1623獲得絕對路徑的方式與圖9中查找裝置823獲得絕對路徑的方式類似。
輸出裝置1624,一方面,在聯(lián)系人判定裝置1621或路徑名判定裝置1622判定不匹配時,輸出錯誤信息,另一方面,在這二者均匹配時,將這一事實告知項目傳送裝置1630,以觸發(fā)建立通信連接,并且輸出表明請求被接受的信息。
另外,所述管理裝置還優(yōu)選地包括判斷所請求的文件是否存在的存在判定裝置1625,用于根據(jù)找到的絕對路徑判定共享目標客戶機1400所請求的文件/文件夾是否存在。如果在共享目標客戶機請求查看了共享項目信息后,共享源客戶機在本地文件系統(tǒng)中刪除了先前共享出來的項目,則進行這樣的判定是有必要的。如果存在判定裝置1625判定請求的項目已經(jīng)不存在了,則可以通過輸出裝置1624輸出錯誤信息。
另外,根據(jù)本發(fā)明的優(yōu)選實施方式,所述共享源客戶機1600還包括響應(yīng)發(fā)送裝置1640,用于將所述輸出裝置1634輸出的結(jié)果傳送給即時通信服務(wù)器,以便進一步返回給共享目標客戶機1400。
共享源客戶機1600執(zhí)行的方法的流程圖如圖18所示。
該方法從步驟1800開始并進入步驟1810。在步驟1810中,共享源客戶機1600從即時通信服務(wù)器接收來自所述共享目標客戶機1400的對共享項目的請求,如前所述,所述請求包括若干參數(shù)。
在收到請求后,該方法在步驟1820中查閱一個訪問控制列表,來確定所述共享目標客戶機1400的請求是否是被授權(quán)的。
如果在步驟1820中確定請求是被授權(quán)的,則該方法進入步驟1840,在其中通過根據(jù)所述請求中發(fā)送的用于建立通信連接的參數(shù),與共享目標客戶機1400建立通信連接,并向其傳送所請求的文件/文件夾。
接著,該方法在步驟1840中結(jié)束。
另外,根據(jù)本發(fā)明的一種優(yōu)選實施方式,還可以響應(yīng)于確定所述共享目標客戶機1400有權(quán)進行訪問時,在確定請求是被授權(quán)的情況下,將一方面建立通信連接,另一方面將表明請求被接受的信息發(fā)送給所述即時通信服務(wù)器,或者響應(yīng)于確定所述共享目標客戶機1400無權(quán)進行訪問,則不建立通信連接,而是將一個錯誤信息傳送給所述即時通信服務(wù)器,以便最終轉(zhuǎn)發(fā)給所述共享目標客戶機1400。
圖19示出了根據(jù)本發(fā)明的優(yōu)選實施方式,共享源客戶機1600執(zhí)行的方法的流程圖。
該方法在步驟1900中開始,隨后進入步驟1905。在步驟1905中,如前所述,共享源客戶機1600從即時通信服務(wù)器接收來自所述共享目標客戶機1400的開始接收共享項目的請求,所述請求包括如前所述的若干參數(shù)。
在步驟1910中,共享源客戶機1600判斷該共享目標用戶是否在聯(lián)系人列表中。
如果判定結(jié)果為“是”,則該方法進入步驟1915。在步驟1915中,根據(jù)用戶ID和共享名等在訪問控制列表中查找路徑名。
在步驟1920中,判斷是否找到路徑名。如果找到路徑名(“是”分支),則該方法進入步驟1925,以便獲取請求的文件/文件夾的絕對路徑名。
如果在步驟1920中判斷未找到路徑名,則方法進入步驟1930,在其中獲取用戶ID所在組的名稱,并且在步驟1935中,根據(jù)該組名和共享名,在訪問控制列表中查找是否有匹配的路徑名。
在步驟1940中,判斷是否找到匹配的路徑名,如果是,則該方法轉(zhuǎn)至步驟1925,以便獲取請求的文件/文件夾的絕對路徑名。如果步驟1940的判斷為“否”,則該方法進入步驟1945,以返回錯誤信息,表明該獲取項目的請求是未被授權(quán)的。
另外,如果在步驟1910中的判定為“否”,則該方法直接進入步驟1945,以便返回錯誤信息而結(jié)束該方法。
在通過執(zhí)行步驟1925,獲取了請求文件的絕對路徑后,該方法進入步驟1950,以確定請求的文件/文件夾在共享源客戶機上是否仍然存在。
如果在步驟1950中的判斷為“是”,則方法進入步驟1955。
在步驟1955中,一方面,返回表明請求被接受的信息,另一方面,根據(jù)請求中包括的用于建立文件傳送連接的參數(shù),與共享目標客戶機建立連接。
接下來,在步驟1960中,將所請求的文件傳送給共享目標客戶機。隨后該方法在步驟1965中結(jié)束。
另外,如果在步驟1950中的判斷為“否”時,本發(fā)明的方法同樣是轉(zhuǎn)到步驟1945,以便返回錯誤消息而結(jié)束本方法。
應(yīng)當(dāng)指出,在圖19所示的方法中,在步驟1910中判斷該提出請求的用戶是否在共享源客戶機1600的聯(lián)系人列表中。但是,在步驟1910中,也可以判斷該提出請求的用戶是否在共享源客戶機1600的訪問控制列表中,在最初便將進行請求的用戶限制在存在于訪問控制列表中的用戶。
3)即時通信服務(wù)器圖20示出了即時通信服務(wù)器2000的結(jié)構(gòu)示意圖。
所述即時通信服務(wù)器200與多個即時通信客戶機相連,但是這里為了便于說明本發(fā)明的原理,只示出了兩個,即共享目標客戶機1400和共享源客戶機1600。但是應(yīng)當(dāng)理解,即時通信服務(wù)器2000可以與任意數(shù)量的即時通信客戶機相連。
為了執(zhí)行本發(fā)明,所述即時通信服務(wù)器2000包括第一接收裝置2010、第一轉(zhuǎn)發(fā)裝置2020,用虛線表示的第二接收裝置2030、第二轉(zhuǎn)發(fā)裝置2040以及參數(shù)附加裝置2050為即時通信服務(wù)器2000的優(yōu)選組件。
第一接收裝置2010用于從共享目標客戶機1400接收開始接收共享項目的請求。
從第一接收裝置2010接收的請求將經(jīng)由第一轉(zhuǎn)發(fā)裝置2020轉(zhuǎn)發(fā)給共享源客戶機1600。
根據(jù)本發(fā)明的優(yōu)選實施方式,所述即時通信服務(wù)器1200還可以包括一個參數(shù)附加裝置2050。這個附加裝置2050的作用是在當(dāng)來自共享目標客戶機600的共享項目信息請求沒有給出共享目標客戶機600的標識符或者沒有給出用于與共享源客戶機1600建立文件傳送連接所需的各項參數(shù)(如前所述)時,由即時通信服務(wù)器1200自動提取這些標識符和參數(shù)并將它們附加到請求中,一并由第一轉(zhuǎn)發(fā)裝置2020進行轉(zhuǎn)發(fā)。
另外,根據(jù)本發(fā)明的優(yōu)選實施方式,在共享源客戶機1600執(zhí)行以上參照圖18描述的操作時,還可以將獲取文件的請求是否被接受的信息通過即時通信服務(wù)器2000返回給共享目標客戶機1400。在這種情況下,這一信息可由第二接收裝置2030進行接收。并由第二轉(zhuǎn)發(fā)裝置2040將第二接收裝置2030接收的響應(yīng)轉(zhuǎn)發(fā)給共享目標客戶機1400。
圖21是即時通信服務(wù)器2000執(zhí)行的方法的流程圖。
該方法在步驟2100中開始,隨后進入2110。在步驟2110中,即時通信服務(wù)器2000從共享目標客戶機1400接收對與共享出的項目的請求。接下來,在步驟2120中,將所述請求轉(zhuǎn)發(fā)給共享源客戶機1600。這一方法在步驟1350中結(jié)束。
在開始項目接收之前執(zhí)行請求獲取項目的操作以上參照圖14-21描述了共享目標客戶機1400開始接收共享項目時通信各方的結(jié)構(gòu)及操作。根據(jù)本發(fā)明,可以在執(zhí)行參照圖7-13描述的共享目標客戶機請求共享項目信息的操作后,直接執(zhí)行開始接收共享項目的操作。
但是,如果在請求了共享項目信息后,經(jīng)過長時間未執(zhí)行開始接收共享項目的操作,那么共享源客戶機上共享出的項目或其信息可能發(fā)生變化(例如,被刪除、更新登),從而一旦開始接收共享項目時,可能項目不存在或者項目已改變的結(jié)果。
因此,在上面描述的這種情況下,為了保險起見,可以在開始接收共享項目(即,執(zhí)行圖18或19的操作)前,先執(zhí)行“請求獲取項目”的操作,以便確保要獲取的項目仍然存在并且讓共享源客戶機能夠作好項目傳送準備。
圖22示出了請求獲取項目操作的流程圖。
可以看出,圖22的操作與圖19的操作類似,只存在兩方面的區(qū)別。
第一個區(qū)別是在步驟2205中經(jīng)由即時通信服務(wù)器接收的是來自共享目標用戶的“請求獲取項目”的請求,而不是“開始項目接收”的請求。
第二個區(qū)別是在步驟2255中,在確定請求的文件存在時,只執(zhí)行獲取并返回請求項目的信息的操作,而不是執(zhí)行建立通信連接以進行項目傳送的操作。
之所以優(yōu)選地執(zhí)行圖22的操作,有以下幾方面的考慮。
第一,確保在開始接收文件時,文件仍然存在且共享目標客戶機知道最新的文件信息。
第二,圖22的操作發(fā)送的是“請求獲取項目”的請求,一旦共享源客戶機收到這個請求,在確認請求是被授權(quán)的情況下,其將作好傳送文件的初始化準備(例如,將共享文件復(fù)制到緩沖區(qū)等),等待“開始項目接收”的請求。相比之下,圖11的操作發(fā)送的是“獲取共享項目信息”的請求,在共享源客戶機收到“獲取共享項目信息”的請求時,它只獲取相應(yīng)的文件信息。
第三,由于在圖22的操作中也要確認請求是否被授權(quán),因此可以進一步提高安全性。
在本發(fā)明中,即時通信客戶機和服務(wù)器之間的通信由即時通信軟件來保證。
本發(fā)明的文件共享與Windows操作系統(tǒng)中的文件共享的不同之處在于,它不需要啟動文件共享守護程序。相反,它只是根據(jù)請求來共享文件,因此不會對即時通信客戶機造成網(wǎng)絡(luò)攻擊,從而提高了安全性。
盡管本發(fā)明最終的文件傳送是在兩個即時通信客戶機之間直接通信連接而進行的,但是這種通信連接是經(jīng)過與服務(wù)器的通信而建立的,并且在建立這樣的連接之前,要對請求是否被授權(quán)進行驗證,因此能夠容易地保證兩個即時通信客戶機之間的安全文件傳送。
而且,本發(fā)明在兩個客戶機之間進行的文件傳送是對等的,不會對服務(wù)器的性能造成影響。
以上主要以音樂文件/文件夾的共享為例來描述本發(fā)明,但本本領(lǐng)域技術(shù)人員能夠理解,本發(fā)明的實施與共享哪種類型的文件/文件夾無關(guān),任何類型的文件/文件夾均可使用本發(fā)明的方案來進行共享,包括但不限于音頻、視頻、圖像或文本文件。
以上主要以企業(yè)級即時通信軟件IBM Lotus Sametime為例對本發(fā)明進行了描述,但是本領(lǐng)域技術(shù)人員能夠理解,本發(fā)明的實施與所使用的即時通信軟件無關(guān)。本發(fā)明同等地適用于各種即時通信軟件,這包括諸如QQ、MSN、Yahoo Messenger、AOL Instant Messenger等之類的個人即時通信軟件以及諸如AOL AIM企業(yè)網(wǎng)關(guān)、JabberMessenger等的企業(yè)級即時通信軟件。
本領(lǐng)域技術(shù)人員能夠理解,在即時通信服務(wù)器、客戶機中使用的各種裝置可通過對處理器進行相應(yīng)的編程以軟件方式實現(xiàn)、以硬件邏輯元件的方式實現(xiàn)或者以這二者的結(jié)合實現(xiàn),并且用于實現(xiàn)發(fā)送、接收和轉(zhuǎn)發(fā)等在各裝置之間進行通信的組件可以通過有線網(wǎng)絡(luò)或無線網(wǎng)絡(luò)接口等諸多方式實現(xiàn)。
本領(lǐng)域技術(shù)人員會認識到,可以以方法、系統(tǒng)或計算機程序產(chǎn)品的形式提供本發(fā)明的實施例。因此,本發(fā)明可采取全硬件實施例、全軟件實施例,或者組合軟件和硬件的實施例的形式。硬件和軟件的典型的結(jié)合可以是帶有計算機程序的通用計算機系統(tǒng),當(dāng)程序被加載并被執(zhí)行時,控制計算機系統(tǒng),從而可以執(zhí)行上述的方法。
本發(fā)明可以嵌入在計算機程序產(chǎn)品中,它包括使此處描述的方法得以實施的所有特征。所述計算機程序產(chǎn)品被包含在一個或多個計算機可讀存儲介質(zhì)(包括,但不限于,磁盤存儲器、CD-ROM、光學(xué)存儲器等)中,所述計算機可讀存儲介質(zhì)具有包含于其中的計算機可讀程序代碼。
已參考根據(jù)本發(fā)明的方法、系統(tǒng)及計算機程序產(chǎn)品的流程圖和/或方框圖說明了本發(fā)明。流程圖和/或方框圖中的每個方框,以及流程圖和/或方框圖中的方框的組合顯然可由計算機程序指令實現(xiàn)。這些計算機程序指令可被提供給通用計算機、專用計算機、嵌入式處理器或者其他可編程的數(shù)據(jù)處理設(shè)備的處理器,以產(chǎn)生一臺機器,從而指令(所述指令通過計算機或者其他可編程數(shù)據(jù)處理設(shè)備的處理器)產(chǎn)生用于實現(xiàn)在流程圖和/或方框圖的一個或多個方框中規(guī)定的功能的裝置。
這些計算機程序指令也可保存在一個或多個計算機的讀存儲器中,每個這種存儲器能夠指揮計算機或者其他可編程數(shù)據(jù)處理設(shè)備按照特定的方式發(fā)揮作用,從而保存在計算機可讀存儲器中的指令產(chǎn)生一種制造產(chǎn)品,所述制造產(chǎn)品包括實現(xiàn)在流程圖和/或方框圖的一個或多個方框中規(guī)定的功能的指令裝置。
計算機程序指令也可被加載到一個或多個計算機或者其他可編程數(shù)據(jù)處理設(shè)備上,使得在所述計算機或者其他可編程數(shù)據(jù)處理設(shè)備上執(zhí)行一系列的操作步驟,從而在每個這樣的設(shè)備上產(chǎn)生計算機實現(xiàn)的過程,以致在該設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖和/或方框圖的一個或多個方框中規(guī)定的步驟。
以上結(jié)合本發(fā)明的優(yōu)選實施方式對本發(fā)明的原理進行了說明,但這些說明只是示例性的,不應(yīng)理解為對本發(fā)明的任何限制。本領(lǐng)域技術(shù)人員可以對本發(fā)明進行各種改變和變形,而不會背離由隨附權(quán)利要求所限定的本發(fā)明的精神和范圍。
權(quán)利要求
1.一個第一即時通信客戶機,用于向一個或多個第二即時通信客戶機共享項目,所述一個或多個第二即時通信客戶機是所述第一即時通信客戶機的聯(lián)系人/聯(lián)系人組,所述第一即時通信客戶機包括聯(lián)系人存儲裝置,用于存儲各聯(lián)系人/聯(lián)系人組的信息;項目存儲裝置,用于至少存儲將與所述各聯(lián)系人/聯(lián)系人組共享的項目;選擇裝置,用于分別從聯(lián)系人存儲裝置和項目存儲裝置中選擇要與之進行共享的聯(lián)系人/聯(lián)系人組和要與之共享的項目;訪問控制列表生成裝置,用于響應(yīng)于選擇裝置的選擇,生成訪問控制列表,所述訪問控制列表相關(guān)聯(lián)地存儲要與之進行共享的聯(lián)系人/聯(lián)系人組和要與之共享的項目的標識信息。
2.根據(jù)權(quán)利要求1所述的客戶機,所述訪問控制列表生成裝置還包括提取裝置,用于響應(yīng)于選擇裝置的選擇,自動提取識別要與之進行共享的聯(lián)系人/聯(lián)系人組和要與之共享的項目的標識信息;填充裝置,用于將提取的信息填充到所述訪問控制列表的數(shù)據(jù)結(jié)構(gòu)中。
3.一種用于一個第一即時通信客戶機的方法,用于向一個或多個第二即時通信客戶機共享項目,所述一個或多個第二即時通信客戶機是所述第一即時通信客戶機的聯(lián)系人/聯(lián)系人組,所述方法包括選擇要與之進行共享的特定聯(lián)系人/聯(lián)系人組;選擇要與所述特定聯(lián)系人/聯(lián)系人組共享的項目;響應(yīng)于上述兩個選擇步驟,生成一個訪問控制列表,所述訪問控制列表相關(guān)聯(lián)地存儲要與之進行共享的聯(lián)系人/聯(lián)系人組和要與之共享的項目的標識信息。
4.根據(jù)權(quán)利要求3所述的方法,其中所述生成訪問控制列表的步驟還包括響應(yīng)兩個選擇步驟,自動提取識別要與之進行共享的聯(lián)系人/聯(lián)系人組和要與之共享的項目的標識信息;將提取的信息填充到所述訪問控制列表的數(shù)據(jù)結(jié)構(gòu)中。
5.一個第一即時通信客戶機,用于從一個第二即時通信客戶機獲取在該第二即時通信客戶機上的共享項目信息,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述第一即時通信客戶機包括請求生成裝置,用于響應(yīng)第一即時通信客戶機的請求操作,生成一個獲取共享項目信息的請求,所述請求中包括所述第二即時通信客戶機的標識信息和共享項目的指定信息;發(fā)送裝置,用于將所述請求發(fā)送給所述即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到所述第二即時通信客戶機;接收裝置,用于從即時通信服務(wù)器接收來自所述第二即時通信客戶機的對所述請求的響應(yīng)。
6.根據(jù)權(quán)利要求5所述的客戶機,所述共享項目的指定信息包括下列之一用于代表針對該第一即時通信客戶機共享的所有項目的標記(“\”);共享名;共享名與相對路徑的組合。
7.一種用于一個第一即時通信客戶機的方法,用于從一第二即時通信客戶機獲取在該第二即時通信客戶機上的共享項目信息,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述方法包括響應(yīng)第一即時通信客戶機的請求操作,生成一個獲取共享項目信息的請求,所述請求中包括所述第二即時通信客戶機的標識信息和共享項目的指定信息;將所述請求發(fā)送給即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到所述第二即時通信客戶機;從即時通信服務(wù)器接收來自所述第二即時通信客戶機的對所述請求的響應(yīng)。
8.一個第一即時通信客戶機,用于響應(yīng)來自一個第二即時通信客戶機的獲取共享項目信息的請求,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述第一即時通信客戶機包括接收裝置,用于從即時通信服務(wù)器接收來自所述第二即時通信客戶機的所述請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、以及共享項目的指定信息;管理裝置,用于通過查閱一個訪問控制列表,根據(jù)所述請求中包括的第二即時通信客戶機的標識信息以及共享項目的指定信息,確定所述第二即時通信客戶機的請求是否是被授權(quán)的;發(fā)送裝置,用于根據(jù)請求是否是被授權(quán)的,將對請求的響應(yīng)發(fā)送給所述即時通信服務(wù)器,以便返回給所述第二即時通信客戶機。
9.根據(jù)權(quán)利要求8所述的客戶機,所述管理裝置進一步包括ID判定裝置,用于通過訪問一個聯(lián)系人存儲裝置,判定所述第一即時通信客戶機是否是聯(lián)系人/聯(lián)系人組,或者用于通過查閱訪問控制列表,判定所述第一即時通信客戶機是否在訪問控制列表中;共享名判定裝置,用于通過查閱訪問控制列表,判定所述第一即時通信客戶機的標識符和共享項目指定信息是否在訪問控制列表中有匹配;查找裝置,用于在ID判定裝置和共享名判定裝置判定匹配時,根據(jù)訪問控制列表提供的絕對路徑,或者根據(jù)訪問控制列表提供的絕對路徑與共享項目指定信息中提供的相對路徑這二者的組合,從所述第一即時通信客戶機的本地文件系統(tǒng)中查找共享項目信息;輸出裝置,用于在ID比較裝置或共享名判定裝置判定不匹配時,將錯誤信息輸出到發(fā)送裝置,以表明請求未被授權(quán),以及用于在這二者均判定匹配時,將輸出查找裝置查找到的信息輸出到發(fā)送裝置,以表明請求被授權(quán)。
10.一種用于一個第一即時通信客戶機的方法,用于響應(yīng)來自一個第二即時通信客戶機的獲取共享項目信息的請求,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述方法包括從即時通信服務(wù)器接收來自所述第二即時通信客戶機的所述請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、以及共享項目的指定信息;通過查閱一個訪問控制列表,根據(jù)所述請求中包括的第二即時通信客戶機的標識信息以及共享項目的指定信息,確定所述第二即時通信客戶機的請求是否是被授權(quán)的;根據(jù)請求是否是被授權(quán)的,將對請求的響應(yīng)發(fā)送給所述即時通信服務(wù)器,以便返回給所述第二即時通信客戶機。
11.根據(jù)權(quán)利要求10所述的方法,確定所述第二即時通信客戶機的請求是否是被授權(quán)的步驟包括確定所述第二即時通信客戶機是否在所述第一即時通信客戶機的聯(lián)系人列表中或訪問控制列表中。
12.根據(jù)權(quán)利要求11所述的方法,還包括在所述確定步驟的結(jié)果為“是”時,進一步針對所述第一即時通信客戶機確定共享項目指定信息是否在訪問控制列表中有匹配。
13.根據(jù)權(quán)利要求12所述的方法,還包括在進一步確定存在匹配時,表明請求被授權(quán),根據(jù)訪問控制列表提供的絕對路徑,或者根據(jù)訪問控制列表提供的絕對路徑與共享項目指定信息中提供的相對路徑這二者的組合,從所述第一即時通信客戶機的本地文件系統(tǒng)中查找共享項目信息,以便返回給第二即時通信客戶機作為響應(yīng)。
14.根據(jù)權(quán)利要求11或12所述的方法,在任何一個確定步驟給出否定結(jié)果時,表明未被授權(quán),并將錯誤信息作為響應(yīng)返回給所述第二即時通信客戶機。
15.一個第一即時通信客戶機,用于請求開始從一個第二即時通信客戶機接收在該第二即時通信客戶機上共享出的項目,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述第一即時通信客戶機包括請求生成裝置,用于響應(yīng)用戶的請求操作,生成開始接收共享項目的請求,所述請求中包括第二即時通信客戶機的標識符、共享項目的指定信息以及用于項目傳送的參數(shù);發(fā)送裝置,用于將所述請求發(fā)送給即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到所述第二即時通信客戶機;項目接收裝置,用于通過基于所述用于項目傳送的參數(shù)與所述第二即時通信客戶機之間建立的通信連接,從所述第二即時通信客戶機接收共享的項目。
16.根據(jù)權(quán)利要求15所述的客戶機,還包括響應(yīng)接收裝置,用于經(jīng)由即時通信服務(wù)器接收來自所述第二即時通信客戶機的關(guān)于所述請求是否被授權(quán)的響應(yīng)。
17.根據(jù)權(quán)利要求15所述的客戶機,所述共享項目的指定信息包括下列之一用于代表針對該第一即時通信客戶機共享的所有項目的標記(“\”)、共享名、共享名與相對路徑的組合;所述用于項目傳送的參數(shù)包括用于項目傳送的第一即時通信客戶機的IP地址、用于項目傳送的第一即時通信客戶機的端口地址以及項目傳送會話ID。
18.一種用于一個第一即時通信客戶機的方法,用于請求開始從一個第二即時通信客戶機接收在該第二即時通信客戶機上共享出的項目,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述方法包括響應(yīng)用戶的請求開始接收共享項目的操作,生成請求開始接收共享項目的請求,所述請求中包括第二即時通信客戶機的標識符、共享項目的指定信息以及用于項目傳送的參數(shù);將所述請求發(fā)送給即時通信服務(wù)器,以便轉(zhuǎn)發(fā)到所述第二即時通信客戶機;通過基于所述用于項目傳送的參數(shù)與所述第二即時通信客戶機之間建立的通信連接,從所述第二即時通信客戶機接收共享的項目。
19.根據(jù)權(quán)利要求18所述的方法,還包括經(jīng)由即時通信服務(wù)器,接收來自所述第二即時通信客戶機的關(guān)于所述請求是否被授權(quán)的響應(yīng)。
20.根據(jù)權(quán)利要求18所述的方法,所述共享項目的指定信息包括下列之一用于代表針對該第一即時通信客戶機共享的所有項目的標記(“\”)、共享名、共享名與相對路徑的組合;所述用于項目傳送的參數(shù)包括用于項目傳送的第一即時通信客戶機的IP地址、用于項目傳送的第一即時通信客戶機的端口地址以及項目傳送會話ID。
21.根據(jù)權(quán)利要求18所述的方法,還包括在響應(yīng)用戶的請求開始接收共享項目的操作,生成請求開始接收共享項目的請求的步驟之前,執(zhí)行下列步驟響應(yīng)用戶的請求獲取項目的操作,生成請求獲取項目的請求,以獲得共享項目的信息;通過即時通信服務(wù)器將請求獲取項目的請求轉(zhuǎn)發(fā)給第二即時通信客戶機;通過即時通信服務(wù)器從第二即時通信客戶機接收共享項目的信息或者錯誤信息作為響應(yīng)。
22.一個第一即時通信客戶機,用于根據(jù)來自一個第二即時通信客戶機的請求將共享項目傳送到該第二即時通信客戶機,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述第一即時通信客戶機包括接收裝置,用于從即時通信服務(wù)器接收來自所述第二即時通信客戶機的開始接收共享項目的請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、共享項目的指定信息以及用于項目傳送的參數(shù);管理裝置,用于通過查閱一個訪問控制列表,根據(jù)所述請求中包括的第二即時通信客戶機的標識信息以及共享項目的指定信息,確定所述第二即時通信客戶機的請求是否是被授權(quán)的;項目傳送裝置,用于響應(yīng)于管理裝置確定所述請求是被授權(quán)的,基于所述用于項目傳送的參數(shù)與所述第二即時通信客戶機之間建立通信連接,以將共享項目傳送到所述第二即時通信客戶機。
23.根據(jù)權(quán)利要求22所述的客戶機,還包括發(fā)送裝置,用于響應(yīng)管理裝置確定所述請求是被授權(quán)的,將表示請求被授權(quán)的信息經(jīng)由所述即時通信服務(wù)器返回給所述第二即時通信客戶機,以及用于響應(yīng)管理裝置確定所述請求是未被授權(quán)的,將錯誤代碼經(jīng)由所述即時通信服務(wù)器返回給所述第二即時通信客戶機。
24.根據(jù)權(quán)利要求25所述的客戶機,所述管理裝置還包括聯(lián)系人判定裝置,用于通過訪問一個聯(lián)系人存儲裝置,判定所述第一即時通信客戶機是否是聯(lián)系人/聯(lián)系人組,或者用于通過查閱訪問控制列表,判定所述第一即時通信客戶機是否在訪問控制列表中;路徑名判定裝置,通過查閱訪問控制列表,判定所述第二共享目標客戶機的標識符或其所在用戶組的標識符、所述請求中提供的共享名是否在訪問控制列表中有匹配;絕對路徑獲得裝置,用于在路徑名判定裝置判定匹配時,獲取所述請求項目的絕對路徑;輸出裝置,用于在聯(lián)系人判定裝置或路徑名判定裝置判定不匹配時,輸出錯誤信息,以及用于在這二者均匹配時,觸發(fā)項目傳送裝置建立通信連接,并輸出表明請求被接受的信息。
25.根據(jù)權(quán)利要求22所述的客戶機,所述管理裝置還包括存在判定裝置,用于根據(jù)絕對路徑獲得裝置找到的絕對路徑,判定第二即時通信客戶機請求開始接收的項目是否存在。
26.一種用于一個第一即時通信客戶機的方法,用于根據(jù)來自一個第二即時通信客戶機的請求將共享項目傳送到該第二即時通信客戶機,所述第一、第二即時通信客戶機通過即時通信服務(wù)器通信相連,所述方法包括從即時通信服務(wù)器接收來自所述第二即時通信客戶機的開始接收共享項目的請求,所述請求包括所述第一、第二即時通信客戶機的標識信息、共享項目的指定信息以及用于項目傳送的參數(shù);通過查閱一個訪問控制列表,根據(jù)所述請求中包括的第二即時通信客戶機的標識信息以及共享項目的指定信息,確定所述第二即時通信客戶機的請求是否是被授權(quán)的;響應(yīng)于確定所述請求是被授權(quán)的,基于所述用于項目傳送的參數(shù)與所述第二即時通信客戶機之間建立通信連接,將共享項目傳送到所述第二即時通信客戶機。
27.根據(jù)權(quán)利要求26所述的方法,確定所述第二即時通信客戶機的請求是否是被授權(quán)的步驟包括確定所述第二即時通信客戶機或其所在聯(lián)系人組是否在所述第一即時通信客戶機的聯(lián)系人列表中或訪問控制列表中。
28.根據(jù)權(quán)利要求27所述的方法,還包括在所述確定步驟的結(jié)果為“是”時,進一步針對所述第二即時通信客戶機或其所在聯(lián)系人組確定共享項目指定信息是否在訪問控制列表中有匹配。
29.根據(jù)權(quán)利要求28所述的方法,還包括在進一步確定存在匹配時,根據(jù)訪問控制列表找到共享項目的絕對路徑,或者根據(jù)訪問控制列表提供的絕對路徑與共享項目指定信息中提供的相對路徑這二者的組合,找到共享項目的絕對路徑。
30.根據(jù)權(quán)利要求29所述的方法,還包括根據(jù)找到的絕對路徑確定請求開始接收的共享項目是否仍存在于第一即時通信客戶機中。
31.根據(jù)權(quán)利要求30所述的方法,用于在確定共享項目仍然存在時,觸發(fā)項目傳送裝置建立通信連接,同時將請求被授權(quán)的響應(yīng)經(jīng)由即時通信服務(wù)器返回給第二通信客戶機。
32.根據(jù)權(quán)利要求27-30中任一項所述的方法,其中在任何一個確定步驟給出否定結(jié)果時,表明請求未被授權(quán),并將錯誤信息作為響應(yīng)經(jīng)由即時通信服務(wù)器返回給所述第二即時通信客戶機。
33.根據(jù)權(quán)利要求27所述的方法,還包括在從即時通信服務(wù)器接收來自所述第二即時通信客戶機的開始接收共享項目的請求之前,執(zhí)行下列步驟接收來自第二即時通信客戶機的請求獲取項目的請求,所述請求包括第一、第二即時通信客戶機的標識信息以及共享項目的指定信息;第一即時通信客戶機根據(jù)訪問控制列表確定所述請求是否在訪問控制列表中存在匹配,在確定存在匹配時,根據(jù)訪問控制列表中的絕對路徑,或者根據(jù)訪問控制列表中的絕對路徑與共享項目指定信息中的相對路徑,從本地文件系統(tǒng)中找到共享項目信息,以經(jīng)由即時通信服務(wù)器返回給第二即時通信客戶機。
全文摘要
本發(fā)明提供了在即時通信客戶機之間進行文件/文件夾共享的系統(tǒng)和方法。在本發(fā)明中,在共享源客戶機對特定的聯(lián)系人/聯(lián)系人組共享出文件/文件夾時,建立一個訪問控制列表,相關(guān)聯(lián)地存儲所述特定的聯(lián)系人/聯(lián)系人組和對其共享的文件/文件夾。在共享目標客戶機請求訪問共享項目信息時、請求獲取項目、請求開始項目接收時,共享源客戶機均會查閱此訪問控制列表,以確定請求是否被授權(quán)。僅當(dāng)請求被授權(quán)時,共享源客戶機才能執(zhí)行請求的操作。通過使用本發(fā)明,可以在即時通信客戶機用戶之間實現(xiàn)自動而靈活的文件/文件夾共享。
文檔編號G06Q10/00GK1928861SQ20051009885
公開日2007年3月14日 申請日期2005年9月9日 優(yōu)先權(quán)日2005年9月9日
發(fā)明者馬嶽, 扈曉煒, 梁騫 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
泸州市| 修文县| 太白县| 遂川县| 探索| 吉林市| 邯郸县| 五峰| 枝江市| 三台县| 淮安市| 习水县| 山阴县| 固安县| 陕西省| 五原县| 临猗县| 通海县| 彰化市| 黑山县| 怀宁县| 沈丘县| 科技| 德清县| 广丰县| 宁河县| 武平县| 三明市| 遂川县| 涿州市| 鹤山市| 正阳县| 林甸县| 崇文区| 左云县| 元阳县| 石首市| 信丰县| 武强县| 高陵县| 永济市|