專利名稱:利用工作區(qū)數(shù)據(jù)管理器來訪問、操作及同步網(wǎng)絡(luò)數(shù)據(jù)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及計算機網(wǎng)絡(luò),更特別地,提供了利用工作區(qū)數(shù)據(jù)管理器來訪問網(wǎng)絡(luò)數(shù)據(jù)的系統(tǒng)和方法。
計算機用戶非常關(guān)心數(shù)據(jù)的可訪問性和一致性。例如,當漫游用戶,即旅行到遠程位置的用戶需要瀏覽或操作諸如電子郵件或準備的文件之類的數(shù)據(jù)時,漫游用戶必須或者發(fā)送此數(shù)據(jù)達到遠程單元或者遠程地訪問工作站。維持數(shù)據(jù)庫的正確副本是個麻煩的工作。從而系統(tǒng)設(shè)計師開發(fā)了一系列技術(shù)用于通過計算機網(wǎng)絡(luò)將遠程終端連接到存儲該數(shù)據(jù)的工作站。
為了保證下載數(shù)據(jù)的可讀性,用戶必須攜帶含有所有所需應(yīng)用軟件的膝上型計算機來展示和允許操作下載數(shù)據(jù),或者找到含有需要的應(yīng)用程序的與網(wǎng)絡(luò)連接的計算機。另外,當維持多個獨立修改的特定數(shù)據(jù)副本時,用戶要冒險使用過時版本。當用戶注意到不一致性時,可能已經(jīng)導(dǎo)致雙方中斷通信或數(shù)據(jù)丟失。然后用戶必須花費更多的時間來協(xié)調(diào)不一致的版本。
當在不同的網(wǎng)絡(luò)單元維持多個文件版本時數(shù)據(jù)訪問性和不一致性的問題更加惡化。例如,由于諸如常規(guī)防火墻技術(shù)的網(wǎng)絡(luò)安全技術(shù),用戶只能訪問到這些網(wǎng)絡(luò)單元中的特定一個單元。沒有訪問其它站址,用戶不能確認所訪問站址的版本是最新的方案。
本發(fā)明提供了一種利用工作區(qū)數(shù)據(jù)管理器來訪問、操作和同步工作區(qū)數(shù)據(jù)的系統(tǒng)。工作區(qū)數(shù)據(jù)管理器可以包括個人信息管理器(PIM)、文字處理程序、電子表格程序或允許操作工作區(qū)數(shù)據(jù)的任何應(yīng)用程序。工作區(qū)數(shù)據(jù)包括諸如電子郵件、年歷日、文字文件、書簽、電子表格數(shù)據(jù)表或其中的一部分的至少一個工作區(qū)單元。工作區(qū)數(shù)據(jù)還可以包括電子郵件、日期數(shù)據(jù)、文字文件、書簽、電子表格數(shù)據(jù)或其中的部分。
該系統(tǒng)包括用于從遠程站址下載工作區(qū)數(shù)據(jù)的通信模塊;一個應(yīng)用程序接口,其連接到通信模塊用于與工作區(qū)數(shù)據(jù)管理器通信以便操作下載的工作區(qū)數(shù)據(jù)并由此創(chuàng)建操作的數(shù)據(jù);和連接到通信模塊用于使操作數(shù)據(jù)和存儲在遠程站址的工作區(qū)數(shù)據(jù)同步的一個通用同步模塊。示例器(instantiator)請求工作區(qū)數(shù)據(jù)管理器提供用于能夠操作下載的工作區(qū)數(shù)據(jù)的一個接口。工作區(qū)數(shù)據(jù)管理器還可以創(chuàng)建接口的另一個示例或可以只提供訪問其接口以便操作數(shù)據(jù)。數(shù)據(jù)閱讀器把遠程站址使用格式的下載工作區(qū)數(shù)據(jù)翻譯成工作區(qū)數(shù)據(jù)管理器所用的格式。例如,以規(guī)范格式存儲在全局服務(wù)器站址的數(shù)據(jù)可以被翻譯成OrganizerTM、OutlookTM或其它工作區(qū)單元管理器格式。當注銷時,去示例器(de-instantiator)開始同步并刪除本地存儲的數(shù)據(jù)??梢岳斫庀到y(tǒng)處理存儲在遠程站址的數(shù)據(jù)不改變并因此包括下載數(shù)據(jù)的情況以及存儲在遠程站址的數(shù)據(jù)已修改并因此不同于下載數(shù)據(jù)的情況。
本發(fā)明還提供了利用工作區(qū)數(shù)據(jù)管理器來訪問、操作和同步工作區(qū)數(shù)據(jù)的方法。該方法包括步驟從遠程站址下載數(shù)據(jù)、請求工作區(qū)數(shù)據(jù)管理器允許操作數(shù)據(jù)并由此創(chuàng)建操作數(shù)據(jù)、和將操作的數(shù)據(jù)與存儲在遠程站址的數(shù)據(jù)同步。
本發(fā)明的系統(tǒng)和方法有利地使用完整的接口,而不是使用用于同步軟件的接口、用于工作區(qū)數(shù)據(jù)管理器的接口和用于下載工作區(qū)數(shù)據(jù)的通信引擎的接口。從而,用戶不必熟悉多個接口。用戶只需要找到包括含有類助理(assistant-like)功能的工作區(qū)數(shù)據(jù)管理器的遠程站址。類助理功能包括用于在工作區(qū)數(shù)據(jù)管理器和全局服務(wù)器之間接口的服務(wù)。由于該系統(tǒng)和方法用全局數(shù)據(jù)代替本地數(shù)據(jù)的或創(chuàng)建用于全局數(shù)據(jù)的示例,因此該系統(tǒng)和方法有利地使工作區(qū)數(shù)據(jù)管理器提供用于操作工作區(qū)數(shù)據(jù)的一個接口而不必包含本地數(shù)據(jù)。
另外,該系統(tǒng)和方法有利地提供了簡易圖示用戶接口,用于能夠借助于工作區(qū)數(shù)據(jù)管理器并使操作數(shù)據(jù)同步。該系統(tǒng)和方法還有利地刪除了下載數(shù)據(jù)和來自本地客戶的所有接口,因此對本地客戶不進行跟蹤以使無權(quán)限的用戶來瀏覽。本發(fā)明的系統(tǒng)和方法還能夠通過不同的工作區(qū)數(shù)據(jù)管理器格式和通過網(wǎng)絡(luò)防火墻來訪問和同步數(shù)據(jù)。
圖1是說明根據(jù)本發(fā)明的網(wǎng)絡(luò)系統(tǒng)的方框圖;圖2是詳細說明圖1的家庭或工作客戶的方框圖;圖3是詳細說明圖1的全局服務(wù)器的方框圖;圖4是詳細說明圖1的遠程客戶的方框圖;圖5是說明圖1的助理(assistant)方框圖;圖6說明個人信息管理器接口;圖7說明包括一個助理接口的第二個人信息管理器接口;圖8是說明根據(jù)本發(fā)明從遠程站址訪問網(wǎng)絡(luò)數(shù)據(jù)的方法流程圖;圖9是說明從遠程站址同步網(wǎng)絡(luò)數(shù)據(jù)的方法流程圖。
圖1是說明根據(jù)本發(fā)明利用工作區(qū)數(shù)據(jù)管理器訪問、操作和同步工作區(qū)數(shù)據(jù)的一個網(wǎng)絡(luò)系統(tǒng)100的方框圖。工作區(qū)數(shù)據(jù)管理器可以包括個人信息管理器(PIM)、文字處理程序、電子表格程序、或允許操作工作區(qū)數(shù)據(jù)的任何應(yīng)用程序。工作區(qū)數(shù)據(jù)包括至少一個工作區(qū)單元,諸如電子郵件、年歷數(shù)據(jù)日、文字文件、書簽、電子表格數(shù)據(jù)表或其中的部分。工作區(qū)數(shù)據(jù)還可以包括電子郵件、年歷數(shù)據(jù)、文字文件、書簽、電子表格數(shù)據(jù)或其中的部分。雖然參考PIM描述網(wǎng)絡(luò)系統(tǒng)100,但本領(lǐng)域技術(shù)人員將意識到系統(tǒng)100可以利用任何的工作區(qū)數(shù)據(jù)管理器工作。
網(wǎng)絡(luò)系統(tǒng)100包括經(jīng)計算機網(wǎng)絡(luò)125連接到工作客戶110、家庭客戶115和遠程客戶120的一個全局服務(wù)器105。全局服務(wù)器105包括同步代理130和工作區(qū)數(shù)據(jù)135。工作客戶110包括基本系統(tǒng)140和工作區(qū)數(shù)據(jù)145。家庭客戶115包括一個基本系統(tǒng)150和工作區(qū)數(shù)據(jù)155。
基本系統(tǒng)140和150的每個系統(tǒng)與同步代理130共同操作以便同步工作客戶110、家庭客戶115和全局服務(wù)器105之間的工作區(qū)數(shù)據(jù)135、工作區(qū)數(shù)據(jù)145和工作區(qū)數(shù)據(jù)155。為完整起見提供同步的簡要示例。
首先,工作客戶110站址的基本系統(tǒng)140經(jīng)過任何防火墻與同步代理130協(xié)商安全通信信道,例如利用安全套接層(SSL)技術(shù)?;鞠到y(tǒng)140檢查版本信息并且如果必要的話,檢查工作區(qū)內(nèi)容以便確定最新更新的版本。最新版本然后被存儲在客戶110站址和全局服務(wù)器105站址中?;鞠到y(tǒng)140對選擇同步的所有工作區(qū)單元重復(fù)這些操作。第二,家庭客戶115站址上的基本系統(tǒng)150利用相同的步驟同步其工作區(qū)數(shù)據(jù)155與全局服務(wù)器105站址上的工作區(qū)數(shù)據(jù)135。從而,工作區(qū)數(shù)據(jù)135、140和145的最新版本存儲在所有三個站址中。
工作客戶110、家庭客戶115和遠程客戶120的每個包括相應(yīng)的工作區(qū)數(shù)據(jù)管理器,例如個人信息管理器(PIM)160、165和170,例如微軟公司開發(fā)的、OutlookTM、Lotus開發(fā)公司開發(fā)的Organizer97或Starfish Software開發(fā)的Sidekick98。每個PIM160、165和170包括對PIM160、165和170增加數(shù)據(jù)訪問和同步功能的一個助理175、180和185。從而,用戶能夠經(jīng)PIM160、165或170來透明地使用助理175、180或185以便從全局服務(wù)器105訪問工作區(qū)數(shù)據(jù)135、展現(xiàn)和允許操作下載的工作區(qū)數(shù)據(jù)135并使操作的下載數(shù)據(jù)135與存儲在全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135同步。將參考圖7-9來詳細描述助理175、180或185的各組成部分和工作。
圖2是以示例每個工作客戶110和家庭客戶115的通用實施例來說明數(shù)據(jù)同步客戶200的細節(jié)的方框圖。客戶200包括耦合到通信信道210的處理器205,諸如英特爾奔騰微處理器或摩托羅拉PC微處理器。客戶200還包括諸如鍵盤和鼠標的輸入部件215、諸如陰極射線管(CRT)顯示器的輸出部件、諸如磁盤的數(shù)據(jù)存儲器230、和諸如隨機訪問存儲器(RAM)的內(nèi)部存儲器235,每個部件都耦合到通信信道210。通信接口225將通信信道耦合到計算機網(wǎng)絡(luò)125。
操作系統(tǒng)240由處理器205控制程序,并被典型地存儲在數(shù)據(jù)存儲器230中并加載到內(nèi)部存儲器235(如所示)以便執(zhí)行。與同步代理130共同操作以用于將本地工作區(qū)數(shù)據(jù)245與工作區(qū)數(shù)據(jù)135進行同步的基本系統(tǒng)250也可以存儲在數(shù)據(jù)存儲器230中,并加載到內(nèi)部存儲器235(如所示)用于處理器205執(zhí)行。
本地工作區(qū)數(shù)據(jù)245以工作區(qū)數(shù)據(jù)145或工作區(qū)數(shù)據(jù)150為例,也可以存在數(shù)據(jù)存儲器230中。
PIM 255包括一個助理260,該助理能使用戶從全局服務(wù)器105中下載工作區(qū)數(shù)據(jù)135,并用PIM 255顯示和操作工作區(qū)數(shù)據(jù)135。助理260還允許PIM 255將操作的數(shù)據(jù)135與全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135同步。PIM 255以工作客戶110上的PIM 160和家庭客戶115上的PIM 165的每個為例。助理260以工作客戶110上的助理175和家庭客戶115上的助理180的每個為例。PIM 255可以被存儲在數(shù)據(jù)存儲器230中并加載到內(nèi)部存儲器235(如所示)以便處理器205執(zhí)行。
本領(lǐng)域技術(shù)人員可以理解系統(tǒng)100還可包括附加信息,諸如網(wǎng)絡(luò)連接、附加存儲器、附加處理器、LAN、用于經(jīng)過硬件信道傳送信息的輸入/輸出線路、互連網(wǎng)或內(nèi)聯(lián)網(wǎng)等。本領(lǐng)域技術(shù)人員也將意識到程序和數(shù)據(jù)能夠以其它方式接收并存儲在系統(tǒng)100中。例如,諸如磁盤驅(qū)動器、硬盤驅(qū)動器、磁-光閱讀器、CPU等的計算機可讀存儲媒介(CRSM)閱讀器265能夠耦合到信號總線210上用于讀取諸如磁盤、硬盤、磁-光盤、RAM等的計算機可讀存儲媒介(CRSM)270。從而,系統(tǒng)100能夠經(jīng)CRSM閱讀器265接收程序和數(shù)據(jù)。
圖3是詳細說明全局服務(wù)器105的方框圖。全局服務(wù)器105包括連接到通信信道310的一個處理器305,諸如英特爾奔騰微處理器或摩托羅拉PC微處理器。全局服務(wù)器105還包括諸如鍵盤和鼠標的輸入部件315、諸如CRT顯示器的輸出部件320、諸如磁盤的數(shù)據(jù)存儲器325和諸如RAM的內(nèi)部存儲器330,每個部件耦合到通信信道310。通信接口325將通信信道310耦合到計算機網(wǎng)絡(luò)125。
操作系統(tǒng)340由處理器305控制程序,被典型地存儲在數(shù)據(jù)存儲器330并加載到內(nèi)部存儲器335(如所示)以便執(zhí)行。與基本系統(tǒng)250(圖2)共同操作將本地工作區(qū)數(shù)據(jù)245與工作區(qū)數(shù)據(jù)135進行同步的同步代理130也可以存儲載數(shù)據(jù)存儲器330中并加載到內(nèi)部存儲器335(如所示)用于處理器305執(zhí)行。工作區(qū)數(shù)據(jù)135能夠存儲在數(shù)據(jù)存儲器230中。
本領(lǐng)域技術(shù)人員意識到系統(tǒng)100還可包括附加信息,諸如網(wǎng)絡(luò)連接、附加存儲器、附加處理器、LAN、用于經(jīng)過硬件信道傳送信息的輸入/輸出線路、互連網(wǎng)或內(nèi)聯(lián)網(wǎng)等。本領(lǐng)域技術(shù)人員也將意識到程序和數(shù)據(jù)能夠以其它方式接收并存儲在系統(tǒng)100中。例如,諸如磁盤驅(qū)動器、硬盤驅(qū)動器、磁-光閱讀器、CPU等的CRSM閱讀器345能夠耦合到信號總線310上用于讀取諸如磁盤、硬盤、磁-光盤、RAM等的計算機可讀存儲媒介CRSM 350。從而,系統(tǒng)100能夠經(jīng)CRSM閱讀器345接收程序和數(shù)據(jù)。
圖4是詳細說明遠程客戶120的方框圖??蛻?20包括連接到通信信道410的一個處理器405,諸如英特爾奔騰微處理器或摩托羅拉PC微處理器,??蛻?20還包括諸如鍵盤和鼠標的輸入部件415、諸如CRT顯示器的輸出部件420、諸如磁盤的數(shù)據(jù)存儲器425和諸如RAM的內(nèi)部存儲器430,每個部件耦合到通信信道410。通信接口425將通信信道410耦合到計算機網(wǎng)絡(luò)125。
操作系統(tǒng)440由處理器405控制程序,并被典型地存儲在數(shù)據(jù)存儲器430中并加載在內(nèi)部存儲器435(如所示)用于執(zhí)行。PIM170和助理185能夠存儲在數(shù)據(jù)存儲器430中,并加載到內(nèi)部存儲器435(如所示)用于處理器405執(zhí)行。
本領(lǐng)域技術(shù)人員意識到系統(tǒng)100還可包括附加信息,諸如網(wǎng)絡(luò)連接、附加存儲器、附加處理器、LAN、用于經(jīng)過硬件信道傳送信息的輸入/輸出線路、互連網(wǎng)或內(nèi)聯(lián)網(wǎng)等。本領(lǐng)域技術(shù)人員也將意識到程序和數(shù)據(jù)能夠以其它方式接收并存儲在系統(tǒng)100中。例如,諸如磁盤驅(qū)動器、硬盤驅(qū)動器、磁-光閱讀器、CPU等的CRSM閱讀器445能夠耦合到信號總線310上用于讀取諸如磁盤、硬盤、磁-光盤、RAM等的CRSM閱讀器450。從而,系統(tǒng)100能夠經(jīng)CRSM閱讀器455接收程序和數(shù)據(jù)。
圖5是說明PIM接口500的方框圖,包括標題505和選擇窗口510。
標題505包括同步按鈕540和“借助”按鈕545,這些是通過PIM160、165或170中的助理175、180或185實現(xiàn)的。激活同步按鈕540導(dǎo)致助理175、180或185能夠使輸入到PIM160、165或170中的數(shù)據(jù)與全局服務(wù)器135中的工作區(qū)數(shù)據(jù)135同步。同步按鈕540能夠使用戶配置指示何時開始自動同步的優(yōu)選文件并且還能夠使用戶執(zhí)行手動同步。
“借助”按鈕545能夠使用戶使用PIM160、165、或170來瀏覽和操作從全局服務(wù)器105下載的工作區(qū)數(shù)據(jù)135。也就是說,激活“借助(borrow me)”按鈕545使相應(yīng)的助理175、180或185與全局服務(wù)器105通信、向全局服務(wù)器105提供用戶標識和驗證信息、從全局服務(wù)器105下載工作區(qū)數(shù)據(jù)135、利用PIM接口500顯示和允許操作下載數(shù)據(jù)135、以及當注銷時同步操作的下載數(shù)據(jù)135。由于先存在的PIM提供PIM接口500,那么助理175、180或185不需要提供其自己的數(shù)據(jù)接口。只需要一個接口。
可以理解,當注銷時,基本系統(tǒng)140和150將與同步代理130合作以便自動同步全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135與工作區(qū)數(shù)據(jù)145和155。從而,用戶通常得從執(zhí)行具有裝在其中的助理175、180或185的PIM160、165或170的任何站址中訪問工作區(qū)數(shù)據(jù)的最新版本。
可以理解同步按鈕540對工作客戶110和家庭客戶115是最有幫助的,這是由于典型地工作客戶110和家庭客戶115將設(shè)置優(yōu)選文件來配置自動同步。通常通過自動注銷“借助”按鈕的程序來實施在遠程客戶120處的操作的工作區(qū)數(shù)據(jù)135的同步。參考OutlookTM和以下參考圖7所示和所描述的Lotus Organizer示例來更詳細地說明注銷。從而,借助按鈕545對遠程客戶120最有幫助。
選擇窗口510提供按鈕507的列表,其中每個按鈕507對應(yīng)于一組工作區(qū)單元,例如電子郵件515、聯(lián)絡(luò)520、文件525、年歷數(shù)據(jù)530和書簽535。在虛按鈕507上按下鼠標導(dǎo)致選擇相應(yīng)工作區(qū)單元組和選擇相應(yīng)的用戶接口,以便顯示和允許操作包括在該組中的工作區(qū)單元。例如,選擇按鈕515選擇電子郵件組,并選擇相應(yīng)的用戶接口以顯示、寫入、轉(zhuǎn)發(fā)等電子郵件。選擇按鈕507使助理175、180或185下載相應(yīng)的工作區(qū)數(shù)據(jù)135,并使PIM160、165或170在工作區(qū)單元組接口上顯示和允許操作下載的數(shù)據(jù)135(參考圖6所示和描述的)。
圖6說明用于顯示接收的電子郵件的電子郵件工作區(qū)單元組用戶接口600的一個示例(通常被稱為“In-Box”)。用戶接口600包括標題605、電子郵件列表窗口610和操作命令窗口650。
標題605列出工作區(qū)單元組的名字,即,“電子郵件”。電子郵件列表窗口610包括三欄,其包括提供每個電子郵件開始的開始欄615、提供每個電子郵件主題的主題欄620、和提供每個電子郵件接收日期的日期欄625。電子郵件列表窗口610能夠顯示存儲在本地電子郵件數(shù)據(jù)庫(未示出)中的電子郵件、存儲在電子郵件服務(wù)器(未示出)中的電子郵件或從全局服務(wù)器105中下載的電子郵件。所示的電子郵件包括來自Joe Smith的第一電子郵件、來自Tom Jones的第二電子郵件,和來自Roy White的第三電子郵件。如果用戶按下圖5所示的“借助”按鈕,則顯示的電子郵件列表將是存儲的和從全局服務(wù)器105下載的電子郵件。
操作窗口650包括諸如常規(guī)電子郵件讀取功能630、電子郵件回復(fù)功能635、電子郵件轉(zhuǎn)發(fā)功能640和新寫入電子郵件功能645的可用功能。將意識到這些欄和功能會根據(jù)PIM而變化。
圖7是說明示例每個助理175、180和185的通用助理700的細節(jié)。通用助理700包括通信模塊705、定位器模塊710、通用同步模塊715、基于內(nèi)容的同步模塊720、安全模塊725、示例器730、數(shù)據(jù)閱讀器735、PIM應(yīng)用程序接口(API)740和去示例器745。助理700的同步功能使用通信模塊705、定位器模塊710、通用同步模塊715、基于內(nèi)容的同步模塊720、安全模塊725和PIM API 740。助理700的“借助”功能使用通信模塊705、定位器模塊710、安全模塊725、示例器730、數(shù)據(jù)閱讀器735、PIM API 740和去示例器745。
通信模塊705包括用于壓縮和解壓縮數(shù)據(jù)的例行程序、用于與同步代理130通信的例行程序。通信模塊705可以應(yīng)用安全套接層(SSL)技術(shù)來建立一個安全通信信道。通信模塊705的例子可包括TCP/IP堆?;駻ppleTalk網(wǎng)絡(luò)協(xié)議。
定位器模塊710包括用于在工作區(qū)數(shù)據(jù)135中識別工作區(qū)單元的存儲單元的例行程序。工作區(qū)單元存儲單元標識能夠利用智能軟件即預(yù)置內(nèi)存地址或系統(tǒng)注冊,或利用對話框詢問用戶來實現(xiàn)。從而,定位器模塊710在電子郵件工作區(qū)數(shù)據(jù)135、文件工作區(qū)數(shù)據(jù)135、年歷工作區(qū)數(shù)據(jù)135等中確定工作區(qū)單元的內(nèi)存地址。
通用同步模塊715檢查全局服務(wù)器105中的工作區(qū)數(shù)據(jù)135以便確定當用戶在客戶110、115或120上操作數(shù)據(jù)時數(shù)據(jù)是否被修改。另外,通用同步模塊715確定用戶是否在客戶110、115或120上操作任何數(shù)據(jù)。如果通用同步模塊715確定只操作了客戶110、115和120上的數(shù)據(jù),那么通用同步模塊715將這些變化進行計算并發(fā)送到全局服務(wù)器105的同步代理130。當同步按鈕540按下時并在注銷“借助”功能期間,初始化通用同步模塊715。
然后同步代理130更新最新的同步標記以便向所有基本系統(tǒng)140和150指示需要與工作區(qū)數(shù)據(jù)145同步以及與工作區(qū)數(shù)據(jù)155同步。如果通用同步模塊715確定只有全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135被修改,那么通用同步模塊715命令同步代理130在客戶請求時計算并發(fā)送已做的改變到客戶110、115或120。然后客戶110或120更新其信息。將意識到雖然可選地能夠把一個完整的操作工作區(qū)單元發(fā)送到全局服務(wù)器105,但只發(fā)送這些改變則降低了處理器負載并提高傳輸線路的效率。
如果通用同步模塊715確定從下載后全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135已被修改,并且客戶110、115或120上的數(shù)據(jù)已被修改,那么通用同步模塊715命令基于內(nèi)容的同步模塊720執(zhí)行其任務(wù)?;趦?nèi)容的同步模塊720包括用于協(xié)調(diào)工作區(qū)單元的兩個或多個修改版本的程序。基于內(nèi)容的同步模塊720能夠請求用戶選擇優(yōu)選的一個修改版本或能夠根據(jù)預(yù)置優(yōu)選來響應(yīng),即通過在兩個存儲器中存儲兩個版本或通過把這些改變合并到單獨的優(yōu)選版本中,所說的優(yōu)選版本代替了兩個存儲器中的每個修改版本。
安全模塊725包括用于獲得用戶標識和驗證的例行程序,利用諸如獲得登錄和口令信息、獲得挑戰(zhàn)的響應(yīng)、獲得公開密鑰認證等的技術(shù)。安全模塊725執(zhí)行標識和驗證技術(shù)以便由用戶確認授權(quán)以訪問存儲在全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135。將意識到只能夠?qū)儆谟脩舻牟糠止ぷ鲄^(qū)數(shù)據(jù)135準許授權(quán)。
示例器730是創(chuàng)建窗口的一個應(yīng)用接口730,該窗口用于顯示和允許操作從全局服務(wù)器105中下載的工作區(qū)數(shù)據(jù)135。在面向?qū)ο蟮沫h(huán)境下,示例器730能夠為工作區(qū)數(shù)據(jù)135創(chuàng)建新的范例?;蛘撸纠?30能夠?qū)⒈镜財?shù)據(jù)存儲到緩沖器(未示出)并利用當前的接口顯示并允許操作工作區(qū)數(shù)據(jù)135。
數(shù)據(jù)閱讀器735在全局服務(wù)器105處與同步代理130通信,并檢索請求的工作區(qū)數(shù)據(jù)135。例如,如果用戶按下“借助”按鈕545(圖5)并按下電子郵件按鈕515,則數(shù)據(jù)閱讀器735檢索工作區(qū)數(shù)據(jù)135的電子郵件工作區(qū)單元并將之送到PIM API 740中。
PIM API 740翻譯并發(fā)送從全局服務(wù)器105接收的工作區(qū)數(shù)據(jù)135到PIM 160、165或170以用于顯示和允許對數(shù)據(jù)進行操作。PIM API740還將在客戶110、115或120上操作的工作區(qū)數(shù)據(jù)從PIM 160、165或170翻譯并傳送回全局服務(wù)器105。
去示例器745將PIM 160、165或170回復(fù)到用戶選擇“借助”按鈕545之前的狀態(tài)。用戶通過按下“無借助”按鈕(未示出)來開始操作去示例器745,所述的“無借助”按鈕是在選擇“借助”按鈕545之后出現(xiàn)的。去示例器745刪除由示例器730創(chuàng)建的任何范例,刪除所有工作區(qū)數(shù)據(jù)135和用戶在客戶110、115或120上創(chuàng)建的數(shù)據(jù)并自動開始任何操作的下載數(shù)據(jù)135與存儲在全局服務(wù)器105的工作區(qū)數(shù)據(jù)135之間的同步。
參考以下例子將更詳細地描述示例器730、數(shù)據(jù)閱讀器735、PIMAIP 740和去示例器745的操作
OUTLOOK示例動作全局數(shù)據(jù)本地數(shù)據(jù)等待 -- 本地數(shù)據(jù)→pstlocal按鈕按下 -- pstlocal輸入登錄/口令 -- pstlocal確認 -- pstlocal發(fā)送全局數(shù)據(jù) 全局數(shù)據(jù)→pstlocal本地數(shù)據(jù)→pstbuffer操作數(shù)據(jù) 全局數(shù)據(jù)→全局數(shù)據(jù)2pstbuffer注銷 1)計算△全局數(shù)據(jù)2)利用全局服務(wù)器同步△全局數(shù)據(jù)3)刪除全局數(shù)據(jù)2 本地數(shù)據(jù)→pstlocal4)如上述OutlookTM例子所述,在等待期間,PIM 160、165或170將客戶110、115或120上的本地數(shù)據(jù)存儲到個人文件夾存儲器pstlocal中。然后該用戶按下“借助”按鈕545。安全模塊725請求用戶輸入全局服務(wù)器105確認的登錄和口令。在這些步驟中,將意識到本地數(shù)據(jù)繼續(xù)存儲在pstlocal中。當用戶標識和驗證時,全局服務(wù)器105發(fā)送工作區(qū)數(shù)據(jù)135(全局數(shù)據(jù))給請求的客戶110、115或120??蛻?10、115或120上的示例器730將本地數(shù)據(jù)從pstlocal發(fā)送到緩沖器pstbuffer,并且將接收的全局數(shù)據(jù)存儲到pstlocal中。數(shù)據(jù)閱讀器745和PIM API740允許用戶操作全局數(shù)據(jù),被操作的數(shù)據(jù)在此被稱為“全局數(shù)據(jù)2”。當注銷時,例如,“無借助”按鈕(未示出)按下之后,全局數(shù)據(jù)2與工作區(qū)數(shù)據(jù)135同步。即,通用同步模塊715確定產(chǎn)生的改變(△全局數(shù)據(jù)),并將△全局數(shù)據(jù)與工作區(qū)數(shù)據(jù)135同步。去示例器745刪除全局數(shù)據(jù)2和△全局數(shù)據(jù)并將本地數(shù)據(jù)恢復(fù)為pstlocal。
LOTUS ORGANIZER示例動作 全局數(shù)據(jù)本地數(shù)據(jù)等待 -- local.org按鈕 -- local.org輸入登錄/口令 -- local.org確認 新范例 local.org發(fā)送全局數(shù)據(jù)用global.org打開 local.org操作數(shù)據(jù)global.org →local.orgglobal.org2注銷1)計算△ global.org local.org2)利用全局服務(wù)器同步△global.org3)刪除global.org2正如上述Lotus Organizer示例所述的,在等待期間,PIM 160、165或170將客戶110、115或120上的本地數(shù)據(jù)存儲到local.org中。然后用戶按下“借助”按鈕545。安全模塊725請求用戶輸入全局服務(wù)器105確認的登錄和口令。在這些步驟中,將意識到本地數(shù)據(jù)繼續(xù)存儲在local.org中。當用戶標識和驗證時,全局服務(wù)器105發(fā)送工作區(qū)數(shù)據(jù)135(全局數(shù)據(jù))給請求的客戶110、115或120??蛻?10、115或120上的示例器730創(chuàng)建新示例,例如PIM API 740的一個新窗口,并且將接收的全局數(shù)據(jù)存儲到另一個文件即global.org中。數(shù)據(jù)閱讀器745和PIM API 740允許用戶操作全局數(shù)據(jù),被操作的數(shù)據(jù)在此被稱為“全局數(shù)據(jù)2”。當注銷時,全局數(shù)據(jù)2與工作區(qū)數(shù)據(jù)135同步。即,通用同步模塊715確定產(chǎn)生的改變(△全局數(shù)據(jù)),并將△全局數(shù)據(jù)與工作區(qū)數(shù)據(jù)135同步。去示例器745刪除全局數(shù)據(jù)2和△全局數(shù)據(jù)并將本地數(shù)據(jù)恢復(fù)為global.org。
圖8是說明根據(jù)本發(fā)明遠程訪問數(shù)據(jù)的方法800流程圖。方法800開始于在每個用戶請求時處理器405在步驟805打開PIM 160、165、或170,并且PIM 160、165或170打開PIM接口500(圖5)。在步驟810中,PIM 160、165或170接收來自用戶的“借助”請求,即用戶按下“借助”按鈕545。在步驟815中,PIM API 740識別該請求并命令通信模塊705創(chuàng)建與全局服務(wù)器105的一個通信鏈路。
在步驟820中,安全模塊725請求并且將標識和驗證信息諸如登錄和口令信息從用戶發(fā)送到全局服務(wù)器105以便檢查。如果全局服務(wù)器105不能識別或驗證用戶,則方法800結(jié)束。否則,在步驟825中,示例器730打開PIM接口500以便顯示和允許操作從全局服務(wù)器105下載的工作區(qū)數(shù)據(jù)135。在步驟830中,數(shù)據(jù)閱讀器735閱讀從全局服務(wù)器105下載的工作區(qū)數(shù)據(jù)135,并在必要時在步驟835將數(shù)據(jù)翻譯成適當格式。也就是說,數(shù)據(jù)閱讀器735將工作區(qū)數(shù)據(jù)135從全局服務(wù)器105使用的格式翻譯為PIM 160、165或170使用的格式。在步驟840中,PIM API 740將翻譯的工作區(qū)數(shù)據(jù)135傳送到PIM接口500和600。
在步驟845中,PIM160、165或170允許用戶在必要時操作工作區(qū)數(shù)據(jù)135。操作過程包括增加新數(shù)據(jù)、刪除工作區(qū)數(shù)據(jù)135、編輯工作區(qū)數(shù)據(jù)135等。例如,用戶能夠按下接口500中的電子郵件按鈕515以便選擇、恢復(fù)和操作接口600中的電子郵件,并且接著能夠按下接口500中的日歷按鈕530以便選擇、恢復(fù)和操作類似于電子郵件接口600的另一個接口中的日歷信息(未示出)。在步驟850,PIM API 740等待以便接收“結(jié)束會話”請求。直至收到“結(jié)束會話”請求,方法800才返回到步驟830以便允許連續(xù)的數(shù)據(jù)瀏覽和操作。
當接收“結(jié)束會話”或“無借助”請求時,如果需要的話,去示例器745在步驟855中初始化通用同步模塊715以便將客戶110、115或120上操作的工作區(qū)數(shù)據(jù)與全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135同步。參考圖6將詳細描述同步。在步驟860中,去示例器745刪除客戶110、115或120上的工作區(qū)數(shù)據(jù),并刪除所有有關(guān)記錄。然后方法800結(jié)束。
圖9是說明用于在計算機網(wǎng)絡(luò)100中同步工作區(qū)數(shù)據(jù)的方法900的流程圖。在步驟905中,方法900開始與通信模塊與全局服務(wù)器105的同步代理130建立通信鏈路。在步驟910中定位器模塊710識別工作區(qū)數(shù)據(jù)135中的工作區(qū)單元的存儲單元。將意識到工作區(qū)單元存儲位置標識能夠利用智能軟件或?qū)υ捒驅(qū)崿F(xiàn)。
在步驟915中通用同步模塊715比較在(客戶110、115或120和在全局服務(wù)器105上)工作區(qū)數(shù)據(jù)中的每個工作區(qū)單元的版本信息(未示出)與最后的同步標記以便確定哪個工作區(qū)單元已經(jīng)被修改了。在此實施例中,如果最近修改的日期和時間是在下載的日期和時間之后,那么已經(jīng)修改了工作區(qū)單元。
如果通用同步模塊715在客戶110、115或120上的工作區(qū)數(shù)據(jù)中確定沒有修改的工作區(qū)單元,那么方法900結(jié)束。否則,步驟920中,通用同步模塊確定在下載了數(shù)據(jù)135后,全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135的相同工作區(qū)單元的版本是否被修改了。
如果只有客戶110、115或120上的版本進行了修改,那么在步驟925中通用同步模塊715在全局服務(wù)器105上存儲工作區(qū)單元的更新版本。為了在全局服務(wù)器105上存儲更新的版本,通用同步模塊715能夠計算所做的修改并將這些改變轉(zhuǎn)發(fā)到同步代理130。同步代理130將這些改變輸入到全局服務(wù)器105版本。在步驟930中,通用同步模塊715確定下載到客戶110、115或120的所有工作區(qū)單元是否已經(jīng)被檢查過。如果沒有被檢查,則方法900返回到步驟915。否則,在步驟935中,同步代理130更新最新的同步標記,并且方法900結(jié)束。更新最新同步標記將命令基本系統(tǒng)140和150將同步工作區(qū)數(shù)據(jù)145和155與全局服務(wù)器105上的工作區(qū)數(shù)據(jù)135同步。
在步驟920中如果通用同步模塊715確定客戶110、115或120上的版本和全局服務(wù)器105上的版本都進行了修改,那么在步驟935中通用同步模塊命令基于內(nèi)容的同步模塊729去協(xié)調(diào)修改的版本。協(xié)調(diào)可以包括從用戶請求命令、或根據(jù)諸如在全局服務(wù)器105上存儲兩個版本之類的預(yù)選的優(yōu)選響應(yīng)動作來執(zhí)行。在步驟940,通用同步模塊715在全局服務(wù)器105上存儲優(yōu)選的版本。然后方法900進行到步驟930。
上述只利用示例描述了本發(fā)明的優(yōu)選實施例,但按照上述教導(dǎo),上述實施例和方法的其它變化和修改也是允許的。雖然網(wǎng)絡(luò)站址被描述為分離的和不同的,但本領(lǐng)域技術(shù)人員將意識到這些站址可以是整體站址的一部分,可以是每個包括多個站址的部分或者可以包括單獨和多個站址的組合。另外,能夠利用可編程通用數(shù)字計算機、利用專用集成電路、或利用內(nèi)部連接的常規(guī)部件和電路的網(wǎng)絡(luò)來實現(xiàn)本發(fā)明的構(gòu)成??梢允怯芯€、無線、調(diào)制解調(diào)器連接等。在此描述的實施例并不是窮舉或限定。本發(fā)明只受以下權(quán)利要求的限定。
權(quán)利要求
1.一種基于計算機的方法,包括以下步驟從遠程站址下載數(shù)據(jù);請求工作區(qū)數(shù)據(jù)管理器以便允許操作數(shù)據(jù)并由此創(chuàng)建操作的數(shù)據(jù);和將操作數(shù)據(jù)與存儲在遠程站址的數(shù)據(jù)同步。
2.根據(jù)權(quán)利要求1的方法,還包括以下步驟請求工作區(qū)數(shù)據(jù)管理器提供能夠操作數(shù)據(jù)的一個接口。
3.根據(jù)權(quán)利要求2的方法,還包括步驟利用工作區(qū)數(shù)據(jù)管理器接口來請求同步。
4.根據(jù)權(quán)利要求2的方法,其中工作區(qū)數(shù)據(jù)管理器通過創(chuàng)建一個范例來提供接口。
5.根據(jù)權(quán)利要求2的方法,其中工作區(qū)數(shù)據(jù)管理器通過只對其接口提供訪問來提供接口。
6.根據(jù)權(quán)利要求1的方法,還包括步驟翻譯遠程站址使用格式的工作區(qū)數(shù)據(jù)和工作區(qū)數(shù)據(jù)管理器使用格式的工作區(qū)數(shù)據(jù)。
7.根據(jù)權(quán)利要求1的方法,還包括步驟在不需要操作數(shù)據(jù)之后刪除工作區(qū)數(shù)據(jù)管理器接口。
8.根據(jù)權(quán)利要求1的方法,其中存儲在遠程站址的數(shù)據(jù)沒有改變并因此包括下載的數(shù)據(jù)。
9.根據(jù)權(quán)利要求1的方法,其中存儲在遠程站址的數(shù)據(jù)被改變了,并因此不同于下載的數(shù)據(jù)。
10.一種系統(tǒng),包括通信模塊,用于從遠程站址下載工作區(qū)數(shù)據(jù);應(yīng)用程序接口,耦合到通信模塊,用于與工作區(qū)數(shù)據(jù)管理器通信以便允許操作下載的工作區(qū)數(shù)據(jù)并因此創(chuàng)建操作的數(shù)據(jù);和通用同步模塊,耦合到通信模塊,用于將操作的數(shù)據(jù)與存儲在遠程站址的工作區(qū)數(shù)據(jù)同步。
11.根據(jù)權(quán)利要求10的系統(tǒng),還包括一個示例器,用于請求工作區(qū)數(shù)據(jù)管理器提供用于允許操作下載的工作區(qū)數(shù)據(jù)的一個數(shù)據(jù)操作接口。
12.根據(jù)權(quán)利要求11的系統(tǒng),其中該數(shù)據(jù)操作接口允許請求數(shù)據(jù)同步。
13.根據(jù)權(quán)利要求11的系統(tǒng),其中工作區(qū)數(shù)據(jù)管理器創(chuàng)建接口的另一個范例以便允許操作數(shù)據(jù)。
14.根據(jù)權(quán)利要求11的系統(tǒng),其中工作區(qū)數(shù)據(jù)管理器只對其接口訪問以便允許操作數(shù)據(jù)。
15.根據(jù)權(quán)利要求10的系統(tǒng),還包括數(shù)據(jù)閱讀器,用于把下載的工作區(qū)數(shù)據(jù)從遠程站址使用的格式翻譯成工作區(qū)數(shù)據(jù)管理器使用的格式。
16.根據(jù)權(quán)利要求11的系統(tǒng),還包括去示例器,用于在不再要求操作數(shù)據(jù)之后,刪除數(shù)據(jù)操作接口。
17.根據(jù)權(quán)利要求10的系統(tǒng),其中存儲在遠程站址的數(shù)據(jù)沒有改變并因此包括下載的數(shù)據(jù)。
18.根據(jù)權(quán)利要求10的方法,其中存儲在遠程站址的數(shù)據(jù)被改變了,并因此不同于下載的數(shù)據(jù)。
19.根據(jù)權(quán)利要求18的系統(tǒng),還包括基于內(nèi)容的同步模塊,用于將存儲在遠程站址的數(shù)據(jù)與操作的數(shù)據(jù)同步。
20.一種系統(tǒng),包括用于從遠程站址下載工作區(qū)數(shù)據(jù)的裝置;用于請求工作區(qū)數(shù)據(jù)管理器以便允許操作下載的數(shù)據(jù)并因此創(chuàng)建操作的數(shù)據(jù)的裝置;和用于將操作的數(shù)據(jù)與存儲在遠程站址的數(shù)據(jù)同步的裝置。
21.存儲程序代碼的計算機可讀存儲介質(zhì),用于使計算機執(zhí)行以下步驟從遠程站址下載工作區(qū)數(shù)據(jù);請求工作區(qū)數(shù)據(jù)管理器以便允許操作下載的數(shù)據(jù)并因此創(chuàng)建操作的數(shù)據(jù);和將操作的數(shù)據(jù)與存儲在遠程站址的數(shù)據(jù)同步。
全文摘要
一種系統(tǒng),包括:通信模塊,用于從遠程站址下載工作區(qū)數(shù)據(jù)(135);應(yīng)用程序接口,耦合到通信模塊,用于與工作區(qū)數(shù)據(jù)管理器(160)通信以便允許操作下載的工作區(qū)數(shù)據(jù)并從而創(chuàng)建操作的數(shù)據(jù);和通用同步模塊(130),耦合到通信模塊,用于將操作的數(shù)據(jù)與存儲在遠程站址的工作區(qū)數(shù)據(jù)(135)同步。示例器請求工作區(qū)數(shù)據(jù)管理器提供用于允許操作下載的工作區(qū)數(shù)據(jù)的一個接口。工作區(qū)數(shù)據(jù)管理器能夠創(chuàng)建接口的另一個范例或能夠提供只訪問其接口以便允許操作數(shù)據(jù)。數(shù)據(jù)閱讀器能夠把下載的工作區(qū)數(shù)據(jù)從遠程站址使用的格式翻譯成工作區(qū)數(shù)據(jù)管理器使用的格式。當注銷時,去示例器將數(shù)據(jù)與全局服務(wù)器同步并刪除工作區(qū)數(shù)據(jù)。系統(tǒng)處理存儲在遠程站址的數(shù)據(jù)不改變并因此包括下載的數(shù)據(jù)的情況,以及存儲在遠程站址的數(shù)據(jù)被改變并因此不同于下載的數(shù)據(jù)的情況。
文檔編號G06F17/30GK1291310SQ99803070
公開日2001年4月11日 申請日期1999年1月15日 優(yōu)先權(quán)日1998年1月16日
發(fā)明者丹尼爾·J·門德茨 申請人:維斯托公司