專利名稱:從服務(wù)器向設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的制作方法
技術(shù)領(lǐng)域:
本領(lǐng)域總體地涉及計算機系統(tǒng),更具體地,涉及用于從服務(wù)器向設(shè)備傳送數(shù)據(jù)的方法和系統(tǒng)。
背景技術(shù):
企業(yè)內(nèi)容管理一般涉及管理包含企業(yè)或風(fēng)險企業(yè)(business venture)的數(shù)字?jǐn)?shù)據(jù)的內(nèi)容。提供對企業(yè)應(yīng)用和處理的及時和精確的設(shè)備訪問是最終用戶的根本要求。使設(shè)備與企業(yè)內(nèi)容同步對使設(shè)備符合由企業(yè)提供的技術(shù)和內(nèi)容的最新狀態(tài)必不可少。當(dāng)前,利用基于拉(pull)的技術(shù)使設(shè)備數(shù)據(jù)與企業(yè)內(nèi)容同步,其中設(shè)備觸發(fā)從企業(yè)的數(shù)據(jù)下載。因為設(shè)備不知道在企業(yè)上何時或是否存在任何新數(shù)據(jù)可用于下載,所以這類同步可能對于每個同步動作并不總是產(chǎn)生數(shù)據(jù)下載。此外,這類同步不向設(shè)備提供及時數(shù)據(jù),而這對于在該設(shè)備上運行的企業(yè)應(yīng)用可能是關(guān)鍵性的。從而,期望更有效的設(shè)備與企業(yè)的同步技術(shù)。
發(fā)明內(nèi)容
公開用于從延續(xù)服務(wù)器(continuation server)到手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的系統(tǒng)和方法的多個實施例。在實施例中,在延續(xù)服務(wù)器處接收從手持設(shè)備建立的協(xié)議連接。在延續(xù)服務(wù)器上創(chuàng)建堆棧,該堆棧存儲接收的每個協(xié)議連接的狀態(tài)。該狀態(tài)指示相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接的可用性。所述堆棧保持每個相應(yīng)的手持設(shè)備的協(xié)議連接的狀態(tài)直到該連接被中止或直到接收到數(shù)據(jù)通知。該數(shù)據(jù)通知可以包括要下載到手持設(shè)備的數(shù)據(jù)的可用性。該堆棧維持延續(xù)服務(wù)器和手持設(shè)備之間的連接。維持該連接包括連續(xù)地監(jiān)控手持設(shè)備的協(xié)議連接并重建延續(xù)服務(wù)器和手持設(shè)備之間的中止的協(xié)議連接。利用協(xié)議連接的狀態(tài)更新該堆棧。一旦由延續(xù)服務(wù)器接收了數(shù)據(jù)通知,就調(diào)用該堆棧以取回每個協(xié)議連接的狀態(tài)?;谠谘永m(xù)服務(wù)器和手持設(shè)備之間的協(xié)議連接的可用性,從延續(xù)服務(wù)器向相應(yīng)的手持設(shè)備轉(zhuǎn)發(fā)所述數(shù)據(jù)通知和可用數(shù)據(jù)。如果手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接中止,則延續(xù)服務(wù)器可以向相應(yīng)的手持設(shè)備發(fā)送中止警報以在手持設(shè)備和延續(xù)服務(wù)器之間重建中止的協(xié)議連接。堆棧中的協(xié)議連接的狀態(tài)基于重建的協(xié)議連接而得到更新。當(dāng)考慮結(jié)合以下附圖給出的、下述優(yōu)選實施例的詳細(xì)描述時,本發(fā)明的實施例的這些和其它優(yōu)點和特征將很清楚。
權(quán)利要求以特征性闡明本發(fā)明的實施例。在附圖中以示例的方式而非出于限制示出本發(fā)明,附圖中相似的標(biāo)號指示相似的元件。從以下結(jié)合附圖的詳細(xì)描述中,本發(fā)明的實施例連同其優(yōu)點將更容易理解。圖I是示出根據(jù)實施例的從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的系統(tǒng)的概觀的框圖。圖2是示出根據(jù)另一實施例的從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的系統(tǒng)的概觀的框圖。圖3是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的堆棧的框圖。圖4是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的方法的處理流程圖。 圖5A是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的方法的功能流程圖。圖5B是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的方法的功能流程圖。圖6是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的數(shù)據(jù)流的順序圖。圖7是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的數(shù)據(jù)流的順序圖。圖8是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的計算機系統(tǒng)的框圖。圖9是示出根據(jù)實施例的示范性計算機系統(tǒng)的框圖。
具體實施例方式公開用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的系統(tǒng)和方法的技術(shù)的多個實施例。延續(xù)服務(wù)器可以被描述為負(fù)責(zé)跨分布式網(wǎng)絡(luò)運行計算機應(yīng)用的計算設(shè)備。延續(xù)服務(wù)器可以安裝在作為存在于公共網(wǎng)絡(luò)中的設(shè)備和存在于私人網(wǎng)絡(luò)中的設(shè)備之間的接口的網(wǎng)絡(luò)接口區(qū)上。手持設(shè)備可以被描述為包括在公共網(wǎng)絡(luò)中的便攜式計算設(shè)備。一些手持設(shè)備可以包括移動電話、個人數(shù)字助理(PDA)、膝上型計算機等等。在公共網(wǎng)絡(luò)中的手持設(shè)備可以與網(wǎng)絡(luò)接口區(qū)中的延續(xù)服務(wù)器建立連接以交換數(shù)據(jù)?;谠谘永m(xù)服務(wù)器和手持設(shè)備之間建立的連接,可以調(diào)用數(shù)據(jù)同步以告訴(intimate)手持設(shè)備關(guān)于數(shù)據(jù)的可用性,從而只有當(dāng)將被下載的數(shù)據(jù)可用時才觸發(fā)手持設(shè)備的同步。在下面的描述中,闡述許多的細(xì)節(jié)以提供對本發(fā)明的實施例的透徹理解。然而,相關(guān)領(lǐng)域的一個技術(shù)人員將清楚,可以無需一個或多個細(xì)節(jié)、或利用其它方法、組件、材料等而實現(xiàn)本發(fā)明。在其它實例中,沒有示出或詳細(xì)描述公知結(jié)構(gòu)、材料或操作以避免模糊本發(fā)明的方面。貫穿說明書,對“一個實施例”、“此實施例”和類似短語的引用,意思是結(jié)合實施例描述的具體的特征、結(jié)構(gòu)或特性包括在本發(fā)明的至少一個實施例中。從而,貫穿說明書在各處出現(xiàn)的這些短語不一定都指相同的實施例。此外,可以在一個或多個實施例中以任何合適方式組合具體的特征、結(jié)構(gòu)或特性。圖I是示出根據(jù)實施例的從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的系統(tǒng)的概觀的框圖。延續(xù)服務(wù)器可以被描述為安裝在網(wǎng)絡(luò)上的計算設(shè)備,其管理相應(yīng)網(wǎng)絡(luò)上的數(shù)據(jù)。在實施例中,延續(xù)服務(wù)器可以描述為安裝在作為存在于公共網(wǎng)絡(luò)中的設(shè)備和存在于私人網(wǎng)絡(luò)中的設(shè)備之間的接口的網(wǎng)絡(luò)接口區(qū)上的計算設(shè)備。在實施例中,網(wǎng)絡(luò)接口區(qū)獨立于公共網(wǎng)絡(luò)和私人網(wǎng)絡(luò)。手持設(shè)備可以被描述為公共網(wǎng)絡(luò)中包括的便攜式計算設(shè)備。協(xié)議連接可以被描述為建立用于多個計算設(shè)備之間一例如,手持設(shè)備和延續(xù)服務(wù)器之間一的通信的連接的格式。建立協(xié)議連接可以包括建立計算設(shè)備之間的通信、在計算設(shè)備之間交換信息、驗證建立的通信、檢測通信期間可能出現(xiàn)的錯誤、校正檢測的錯誤等等。一般建立協(xié)議連接以使多個計算設(shè)備同步。計算設(shè)備使用協(xié)議連接用于交換具有想要含義的信息,該信息將調(diào)用(invoke)想要的響應(yīng)。協(xié)議連接的示例可以包括超文本傳輸協(xié)議(HTTP)連接。相關(guān)領(lǐng)域的一個技術(shù)人員將清楚用于在計算設(shè)備之間通信的不同類型協(xié)議連接。在實施例中,手持設(shè)備包括輪詢代理(polling agent)和數(shù)據(jù)同步模塊。輪詢代理可操作以從手持設(shè)備向延續(xù)服務(wù)器發(fā)送協(xié)議連接請求。輪詢代理在手持設(shè)備上作為后臺服務(wù)運行,并與延續(xù)服務(wù)器建立協(xié)議連接。如果在任何情況下,手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接丟失,則調(diào)用輪詢代理以重建協(xié)議連接。從而,輪詢代理可操作以建立在手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接,并保證協(xié)議連接不丟失。數(shù)據(jù)同步模塊負(fù)責(zé)將相關(guān)聯(lián)的手持設(shè)備與經(jīng)營企業(yè)同步。經(jīng)營企業(yè)包括延伸到相關(guān)聯(lián)的手持設(shè)備的信息、應(yīng)用和處理。經(jīng)營企業(yè)可以存在于私人網(wǎng)絡(luò)上,并且延伸為向存在于公共網(wǎng)絡(luò)中的手持設(shè)備提供需要的信息。當(dāng)存在可用于下載到手持設(shè)備的數(shù)據(jù)時觸發(fā)數(shù)據(jù)同步模塊,并且數(shù)據(jù)同步模塊將可用數(shù)據(jù)從經(jīng)營企業(yè)下載到手持設(shè)備。 參照圖I,手持設(shè)備可以包括移動電話105、個人數(shù)字助理(PDA) 120和膝上型計算機135。相關(guān)領(lǐng)域的一個技術(shù)人員將清楚許多這種可以從延續(xù)服務(wù)器150接收轉(zhuǎn)發(fā)數(shù)據(jù)的手持設(shè)備。手持設(shè)備105、120和135中的每一個與延續(xù)服務(wù)器150建立相應(yīng)的協(xié)議連接(PC105,PC 120和PC 135)。建立協(xié)議連接可以包括初始化存在于每個手持設(shè)備中的輪詢代理以向延續(xù)服務(wù)器150發(fā)送協(xié)議連接請求。在實施例中,延續(xù)服務(wù)器150接受從手持設(shè)備接收的協(xié)議連接請求以建立協(xié)議連接。對于接收的協(xié)議連接,延續(xù)服務(wù)器150創(chuàng)建堆棧155以存儲每個協(xié)議連接的狀態(tài)。協(xié)議連接的狀態(tài)指示手持設(shè)備(105,120和135)和延續(xù)服務(wù)器150之間的協(xié)議連接(PC 105、PC 120和PC 135)的可用性。堆棧155可以描述為以指定的方式存儲數(shù)據(jù)以供進一步使用的數(shù)據(jù)容器。在實施例中,堆棧155存儲在數(shù)據(jù)庫160中。堆棧155存儲相應(yīng)的手持設(shè)備(105、120和135)和延續(xù)服務(wù)器150之間的所有協(xié)議連接(PC 105、PC120和PC 135)的狀態(tài),直到延續(xù)服務(wù)器150接收到數(shù)據(jù)通知或直到協(xié)議連接被中止(suspend)。數(shù)據(jù)通知可以包括要下載到手持設(shè)備(105、120和135)上的數(shù)據(jù)的可用性?;谑殖衷O(shè)備(105、120和135)和延續(xù)服務(wù)器150之間建立的協(xié)議連接(PC 105、PC 120和PC 135),可以調(diào)用數(shù)據(jù)同步以將數(shù)據(jù)可用性告訴手持設(shè)備(105、120和135)。從而只有當(dāng)存在要下載的數(shù)據(jù)的可用性時才觸發(fā)手持設(shè)備(105,120和135)的數(shù)據(jù)同步。此夕卜,因為堆棧155存儲全部協(xié)議連接(PC 105、PC 120和PC 135)的狀態(tài),所以可以確定可用的協(xié)議連接以觸發(fā)對于具有可用的協(xié)議連接的手持設(shè)備的數(shù)據(jù)同步。延續(xù)服務(wù)器150連續(xù)地監(jiān)控協(xié)議連接(PC 105,PC 120和PC 135)并更新堆棧155中的協(xié)議連接(PC 105,PC120和PC 135)的狀態(tài)。堆棧155包括設(shè)備標(biāo)識符(設(shè)備ID)列表和在手持設(shè)備(105、120和135)和延續(xù)服務(wù)器150之間建立的協(xié)議連接的狀態(tài)。在實施例中,堆棧155維持延續(xù)服務(wù)器150和手持設(shè)備(105、120和135)之間的連接。維持該連接包括連續(xù)地監(jiān)控手持設(shè)備的協(xié)議連接并重建延續(xù)服務(wù)器150和手持設(shè)備(105,120和135)之間的中止的協(xié)議連接。利用協(xié)議連接(PC 105、PC 120和PC 135)的狀態(tài)更新堆棧155。響應(yīng)于接收的數(shù)據(jù)通知,延續(xù)服務(wù)器150基于手持設(shè)備和延續(xù)服務(wù)器150之間的協(xié)議連接的可用性向手持設(shè)備的輪詢代理發(fā)送數(shù)據(jù)警報。通過調(diào)用堆棧155以取回每個協(xié)議連接的狀態(tài)確定協(xié)議連接的可用性。響應(yīng)于數(shù)據(jù)警報,手持設(shè)備的輪詢代理調(diào)用與該手持設(shè)備關(guān)聯(lián)的數(shù)據(jù)同步模塊用于將數(shù)據(jù)下載到手持設(shè)備。在實施例中,如果延續(xù)服務(wù)器150和手持設(shè)備之間的協(xié)議連接被中止,延續(xù)服務(wù)器150將該中止的協(xié)議連接通知與相應(yīng)的手持設(shè)備關(guān)聯(lián)的輪詢代理。延續(xù)服務(wù)器150可以向具有中止的協(xié)議連接的手持設(shè)備的輪詢代理發(fā)送中止警報?;诮邮盏闹兄咕瘓螅甘据喸兇韺f(xié)議連接請求從相應(yīng)的手持設(shè)備發(fā)送到延續(xù)服務(wù)器以重建中止的協(xié)議連接。在實施例中,數(shù)據(jù)協(xié)調(diào)引擎165與經(jīng)營企業(yè)175通信,并且被安裝在私人網(wǎng)絡(luò)中。數(shù)據(jù)協(xié)調(diào)引擎165可以定義為允許經(jīng)營企業(yè)175和手持設(shè)備(105、120和135)之間交換數(shù)據(jù)的計算設(shè)備。數(shù)據(jù)協(xié)調(diào)引擎165識別經(jīng)營企業(yè)175上的數(shù)據(jù)、數(shù)據(jù)通知或手持設(shè)備(105、120和135)可用的數(shù)據(jù)的任何修改,并且將數(shù)據(jù)或數(shù)據(jù)通知從經(jīng)營企業(yè)175發(fā)送到延續(xù)服務(wù)器150。延續(xù)服務(wù)器150進一步將數(shù)據(jù)通知和可用數(shù)據(jù)轉(zhuǎn)發(fā)到相應(yīng)的手持設(shè)備(105、120和 135)。 在實施例中,外向(outbound)傳輸介質(zhì)170可以與數(shù)據(jù)協(xié)調(diào)引擎165關(guān)聯(lián)。外向傳輸介質(zhì)170接受每個手持設(shè)備的注冊以從經(jīng)營企業(yè)175接收數(shù)據(jù)或數(shù)據(jù)通知。外向傳輸介質(zhì)170將這種數(shù)據(jù)通知與相應(yīng)的數(shù)據(jù)警告一起發(fā)送到向該外向傳輸介質(zhì)170登記了的手持設(shè)備(105、120 和 135)。此處公開用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的方法的示例。移動設(shè)備105、PDA 120和膝上型計算機135存在于公共網(wǎng)絡(luò)中。經(jīng)營企業(yè)175包括與移動設(shè)備105、PDA120和膝上型計算機135有關(guān)的信息。移動設(shè)備105、PDA 120和膝上型計算機135向外向傳輸介質(zhì)170登記以接收在經(jīng)營企業(yè)175上可用的任何數(shù)據(jù)通知。移動設(shè)備105、PDA 120和膝上型計算機135的關(guān)聯(lián)的輪詢代理向延續(xù)服務(wù)器150發(fā)送協(xié)議連接請求以建立各自的協(xié)議連接(PC 105,PC 120和PC 135)。延續(xù)服務(wù)器150創(chuàng)建堆棧155以存儲協(xié)議連接(PC105、PC 120和PC 135)的可用性的狀態(tài)。延續(xù)服務(wù)器150連續(xù)地監(jiān)控協(xié)議連接(PC 105、PC 120和PC 135)并更新堆棧155中的協(xié)議連接的狀態(tài)。在實施例中,延續(xù)服務(wù)器150將堆棧155存儲在數(shù)據(jù)庫160中。為了在移動設(shè)備105、PDA 120和膝上型計算機135上包括某些改進的特征,在經(jīng)營企業(yè)175中新的軟件更新(SOFTWARE UPDATE)是可用的。數(shù)據(jù)協(xié)調(diào)引擎165識別可用于移動設(shè)備105、PDA 120和膝上型計算機135的軟件更新,并向延續(xù)服務(wù)器150發(fā)送數(shù)據(jù)通知和可用數(shù)據(jù)?;谟裳永m(xù)服務(wù)器150接收的數(shù)據(jù)通知,延續(xù)服務(wù)器150調(diào)用堆棧155以取回每個協(xié)議連接(PC 105、PC 120和PC 135)的狀態(tài)。在此實例中,協(xié)議連接(PC 105、PC 120和PC 135)的狀態(tài)是已連接。延續(xù)服務(wù)器150向移動設(shè)備105、PDA 120和膝上型計算機135的輪詢代理發(fā)送數(shù)據(jù)警報以通知軟件更新的可用性。響應(yīng)于數(shù)據(jù)警報,移動設(shè)備105、PDA 120和膝上型計算機135的輪詢代理調(diào)用它們的關(guān)聯(lián)數(shù)據(jù)同步模塊以向移動設(shè)備105、PDA 120和膝上型計算機135下載軟件更新。將軟件更新從延續(xù)服務(wù)器150轉(zhuǎn)發(fā)到移動設(shè)備105、PDA 120和膝上型計算機135。如果協(xié)議連接PC 135被中止,則由延續(xù)服務(wù)器150更新堆棧155。延續(xù)服務(wù)器150向具有中止的協(xié)議連接PC 135的膝上型計算機135的輪詢代理發(fā)送中止警報。基于該中止警報,指示膝上型計算機135的輪詢代理將協(xié)議連接請求從膝上型計算機135發(fā)送到延續(xù)服務(wù)器150,以重建相應(yīng)的中止的協(xié)議連接PC 135。圖2是示出根據(jù)另一實施例的從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的系統(tǒng)的概觀的框圖。手持設(shè)備(例如,205、220和235)包括關(guān)聯(lián)的數(shù)據(jù)同步(DS)模塊(例如,210、225和240)以及輪詢代理(例如,215,230和245)。延續(xù)服務(wù)器250從相應(yīng)的手持設(shè)備(205、220和235)接收協(xié)議連接(例如,PC 205、PC 220和PC 235)。對于接收的協(xié)議連接(PC205、PC 220和PC 235),延續(xù)服務(wù)器250創(chuàng)建堆棧255以存儲每個協(xié)議連接的狀態(tài)。該狀態(tài)指示在相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器250之間的協(xié)議連接的可用性。輪詢代理(215、230和245)將協(xié)議連接請求從相應(yīng)的手持設(shè)備(205、220和235)發(fā)送到延續(xù)服務(wù)器250以建立用于該手持設(shè)備(205、220和235)的協(xié)議連接(PC 205、PC 220和PC 235)。堆棧255將協(xié)議連接(PC 205、PC 220和PC 235)與相應(yīng)的狀態(tài)一起保持直到由延續(xù)服務(wù)器250接收了數(shù)據(jù)通知或直到延續(xù)服務(wù)器250和相應(yīng)的手持設(shè)備(205、220和235)之間的協(xié)議連接(PC 205、PC 220 和 PC 235)被中止?;诮邮盏臄?shù)據(jù)通知,調(diào)用堆棧255以取回每個協(xié)議連接(PC 205、PC220和PC 235)的狀態(tài)。數(shù)據(jù)通知可以包括要下載到手持設(shè)備(205、220和235)的數(shù)據(jù)的可用性。延續(xù)服務(wù)器250基于相應(yīng)的協(xié)議連接(PC 205、PC 220和PC 235)的可用性向每個手持設(shè)備(205、220和235)的輪詢代理(215、230和245)發(fā)送數(shù)據(jù)警報,用于通知數(shù)據(jù)的可用性。響應(yīng)于數(shù)據(jù)警報,每個手持設(shè)備(205、220和235)的輪詢代理(215、230和245)調(diào)用數(shù)據(jù)同步模塊(210、225和240)用于將數(shù)據(jù)下載到相應(yīng)的手持設(shè)備(205、220和235)?;趨f(xié)議連接(PC 205、PC 220和PC 235)的狀態(tài),從延續(xù)服務(wù)器250向相應(yīng)的手持設(shè)備(205、220和235)轉(zhuǎn)發(fā)數(shù)據(jù)通知和可用數(shù)據(jù)。在實施例中,堆棧255將協(xié)議連接(PC 205,PC 220和PC 235)和相應(yīng)的狀態(tài)一起保持,直到相應(yīng)的手持設(shè)備(205、220和235)和延續(xù)服務(wù)器250之間的協(xié)議連接(PC 205、PC 220和PC 235)被中止。堆棧255維持延續(xù)服務(wù)器250和手持設(shè)備(205、220和235)之間的連接。如果協(xié)議連接(PC 205、PC220和PC 235)被中止,則延續(xù)服務(wù)器250向具有中止的協(xié)議連接(PC 205,PC 220和PC 235)的手持設(shè)備(205、220和235)的輪詢代理(215、230和245)發(fā)送中止警報。基于中止警報,指示輪詢代理(215、230和245)將協(xié)議連接請求從相應(yīng)的手持設(shè)備(205、220和235)發(fā)送到延續(xù)服務(wù)器250以重建相應(yīng)的中止的協(xié)議連接(PC 205、PC 220 和 PC 235)。圖3是示出根據(jù)實施例的、當(dāng)從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)時利用的堆棧305的框圖。延續(xù)服務(wù)器處從相應(yīng)的手持設(shè)備接收協(xié)議連接。對于接收的協(xié)議連接,在延續(xù)服務(wù)器上創(chuàng)建堆棧305以存儲每一個協(xié)議連接的狀態(tài)??梢詫⒍褩C枋鰹橐灾付ǖ姆绞酱鎯?shù)據(jù)以使得可以有效地使用存儲的數(shù)據(jù)的數(shù)據(jù)容器。在實施例中,堆棧305存儲指示在相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的每個協(xié)議連接的狀態(tài)的數(shù)據(jù)。該協(xié)議連接的狀態(tài)指示在延續(xù)服務(wù)器和手持設(shè)備之間的協(xié)議連接的可用性。協(xié)議連接的狀態(tài)可以包括“已連接”狀態(tài)和“斷開”狀態(tài)以表示連接的協(xié)議連接和斷開的協(xié)議連接。連接的協(xié)議連接指示在手持設(shè)備和延續(xù)服務(wù)器之間建立了連接(例如,協(xié)議連接)。斷開的協(xié)議連接指示在手持設(shè)備和延續(xù)服務(wù)器之間的連接被中止、或斷開、或沒有建立等。延續(xù)服務(wù)器連續(xù)地監(jiān)控協(xié)議連接并更新堆棧305中的協(xié)議連接的狀態(tài)。在實施例中,堆棧305維持延續(xù)服務(wù)器和手持設(shè)備之間的連接。維持該連接包括連續(xù)地監(jiān)控手持設(shè)備的協(xié)議連接并重建延續(xù)服務(wù)器和手持設(shè)備之間的中止的協(xié)議連接。利用協(xié)議連接的狀態(tài)更新堆棧305。如圖3中所示,堆棧305包括已經(jīng)與延續(xù)服務(wù)器建立了協(xié)議連接的手持設(shè)備的設(shè)備標(biāo)識符(設(shè)備ID)列表和協(xié)議連接的狀態(tài)。設(shè)備ID指示相應(yīng)的手持設(shè)備的協(xié)議連接,而狀態(tài)指示在延續(xù)服務(wù)器和相應(yīng)的手持設(shè)備之間的協(xié)議連接的狀態(tài)。例如,堆棧305包括設(shè)備ID “手持設(shè)備I的協(xié)議連接”和相應(yīng)的狀態(tài)“斷開”作為第一項?!笆殖衷O(shè)備I的協(xié)議連接”的狀態(tài)可以是由連續(xù)地監(jiān)控協(xié)議連接的延續(xù)服務(wù)器更新的連接的當(dāng)前狀態(tài)。在實施例中,不需要所有手持設(shè)備在相同時間與延續(xù)服務(wù)器建立相應(yīng)的協(xié)議連接。可以存在還沒有建立與延續(xù)服務(wù)器的相應(yīng)協(xié)議連接的一些手持設(shè)備??梢源嬖谠诓煌臅r間間隔建立了相應(yīng)的協(xié)議連接的一些手持設(shè)備。每當(dāng)在延續(xù)服務(wù)器和相應(yīng)的手持設(shè)備之間建立了協(xié)議連接時延續(xù)服務(wù)器更新堆棧305。例如,手持設(shè)備I在11:00點建立與延續(xù)服務(wù)器的協(xié)議連接。手持設(shè)備2在13:30點建立與延續(xù)服務(wù)器的協(xié)議連接。手持設(shè)備3在14:00點建立與延續(xù)服務(wù)器的協(xié)議連接。因為延續(xù)服務(wù)器連續(xù)地監(jiān)控在延續(xù)服務(wù)器和手持 設(shè)備之間存在的協(xié)議連接,所以延續(xù)服務(wù)器在11:00點將手持設(shè)備I的狀態(tài)更新為已連接,在13:30將手持設(shè)備2的狀態(tài)更新為已連接,以及在14:00點將手持設(shè)備3的狀態(tài)更新為已連接。同時,如果手持設(shè)備I的協(xié)議連接在14:00點被中止,則延續(xù)服務(wù)器將手持設(shè)備I的狀態(tài)更新為斷開。在14:00點,堆棧305表現(xiàn)為圖3中所示。從而,堆棧305將全部手持設(shè)備的協(xié)議連接與相應(yīng)的狀態(tài)一起保持直到協(xié)議連接被中止或直到由延續(xù)服務(wù)器接收了數(shù)據(jù)通知。根據(jù)實施例,當(dāng)從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的時候在兩種情況下調(diào)用堆棧305,一種是當(dāng)延續(xù)服務(wù)器監(jiān)控協(xié)議連接并更新堆棧305中的相應(yīng)狀態(tài)時,而再一種是當(dāng)基于由延續(xù)服務(wù)器接收的數(shù)據(jù)通知取回協(xié)議連接的狀態(tài)時。在實施例中,對于在手持設(shè)備和延續(xù)服務(wù)器之間建立的第一連接,在延續(xù)服務(wù)器上創(chuàng)建堆棧305以存儲在手持設(shè)備和延續(xù)服務(wù)器之間建立的協(xié)議連接的狀態(tài)。圖4是根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的方法的處理流程圖。在處理塊405中,在延續(xù)服務(wù)器處接收來自相應(yīng)的手持設(shè)備的協(xié)議連接。存在于每個手持設(shè)備中的輪詢代理可以被初始化以將協(xié)議連接請求從相應(yīng)的手持設(shè)備發(fā)送到延續(xù)服務(wù)器,以建立相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接。在處理塊410中,對于接收的協(xié)議連接,在延續(xù)服務(wù)器上創(chuàng)建堆棧以存儲每個協(xié)議連接的狀態(tài)。協(xié)議連接的狀態(tài)指示在相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接的可用性。所述堆棧保持每個手持設(shè)備的協(xié)議連接和相應(yīng)的狀態(tài)直到該連接被中止或直到延續(xù)服務(wù)器接收到數(shù)據(jù)通知。例如,連接到延續(xù)服務(wù)器的手持設(shè)備的協(xié)議連接可以具有存儲在堆棧中的“已連接”狀態(tài),并且如果手持設(shè)備與延續(xù)服務(wù)器的協(xié)議連接被中止,則存儲在堆棧中的狀態(tài)可以被更新為“斷開”。在處理塊415中,維持在延續(xù)服務(wù)器和手持設(shè)備之間的連接。在實施例中,維持該連接包括連續(xù)地監(jiān)控延續(xù)服務(wù)器和手持設(shè)備之間的協(xié)議連接,并且更新堆棧。維持還包括在手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接被中止的情況下重建中止的協(xié)議連接。在處理塊420中,基于由延續(xù)服務(wù)器接收的數(shù)據(jù)通知,調(diào)用該堆棧以取回每個協(xié)議連接的狀態(tài)。數(shù)據(jù)通知包括要下載到手持設(shè)備的數(shù)據(jù)的可用性。延續(xù)服務(wù)器可以基于相應(yīng)的協(xié)議連接的可用性向每個手持設(shè)備的輪詢代理發(fā)送數(shù)據(jù)警報,用于通知數(shù)據(jù)的可用性。響應(yīng)于數(shù)據(jù)警報,每個手持設(shè)備的輪詢代理調(diào)用數(shù)據(jù)同步模塊用于將數(shù)據(jù)下載到相應(yīng)的手持設(shè)備。在處理塊425中,基于協(xié)議連接的狀態(tài),從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)通知和可用數(shù)據(jù)。在實施例中,在相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接可以被中止。這種存在于堆棧中的協(xié)議連接的狀態(tài)可以被更新為“斷開”,指示連接的中止。在這種中止期間,延續(xù)服務(wù)器可以向具有中止的協(xié)議連接的手持設(shè)備的輪詢代理發(fā)送中止警報。基于該中止警報,指示輪詢代理將協(xié)議連接請求從相應(yīng)的手持設(shè)備發(fā)送到延續(xù)服務(wù)器,以重建相應(yīng)的中止的協(xié)議連接。基于重建的協(xié)議連接,延續(xù)服務(wù)器可以更新堆棧中的相應(yīng)狀態(tài)。圖5是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的方法的功能流程圖。在功能塊505中,手持設(shè)備將輪詢代理初始化為作為手持設(shè)備中的后臺服務(wù)運行。在實施例中,輪詢代理包括在手持設(shè)備中。在功能塊510中,手持設(shè)備調(diào)用輪詢代理以建立手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接。在實施例中,與手持設(shè)備關(guān)聯(lián)的設(shè)備同步層初始化輪詢代理以在手持設(shè)備中作為后臺服務(wù)運行。設(shè)備同步層調(diào)用輪詢代理以在手持設(shè)備中作為后臺服務(wù)運行。
為建立手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接,輪詢代理向延續(xù)服務(wù)器發(fā)送協(xié)議連接請求。在功能塊515中,延續(xù)服務(wù)器保持手持設(shè)備的協(xié)議連接直到遇到動作。在實施例中,延續(xù)服務(wù)器創(chuàng)建堆棧以存儲手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接的狀態(tài)。協(xié)議連接的狀態(tài)可以包括“已連接”狀態(tài)和“斷開”狀態(tài)以表示協(xié)議連接的狀態(tài)。延續(xù)服務(wù)器連續(xù)地監(jiān)控協(xié)議連接并更新堆棧中連接的狀態(tài)。例如,手持設(shè)備的協(xié)議連接可以開始具有“已連接”狀態(tài)并且在時間段的結(jié)束時,該連接可以由于時間已到而被中止。因為延續(xù)服務(wù)器連續(xù)地監(jiān)控連接的狀態(tài),所以延續(xù)服務(wù)器能夠在堆棧中將該連接的狀態(tài)更新為“斷開”。在判定塊520中,確定遇到的動作的類型,其中該確定是協(xié)議連接是否被中止。動作的類型可以包括“協(xié)議連接被中止”或“接收到數(shù)據(jù)通知”。如果手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接被中止,則功能流進行到功能塊525。如果協(xié)議連接未中止,則功能流進行到參考連接點“A”。在功能塊525中,延續(xù)服務(wù)器向與手持設(shè)備關(guān)聯(lián)的輪詢代理通知中止的協(xié)議連接。在功能塊530中,輪詢代理重新初始化相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的新協(xié)議連接。功能流進行到功能塊515,其中延續(xù)服務(wù)器保持該連接直到遇到動作。在實施例中,堆棧維持延續(xù)服務(wù)器和手持設(shè)備之間的連接。維持該連接包括連續(xù)地監(jiān)控手持設(shè)備的協(xié)議連接并重建延續(xù)服務(wù)器和手持設(shè)備之間的中止的協(xié)議連接。利用協(xié)議連接的狀態(tài)更新該堆棧。圖5B是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的方法的功能流程圖。參考連接點“A”表示從功能塊505執(zhí)行到判定塊520執(zhí)行的步驟。當(dāng)協(xié)議連接不被中止時的功能流開始于功能塊540。在功能塊540中,延續(xù)服務(wù)器等待直到從數(shù)據(jù)協(xié)調(diào)引擎接收了數(shù)據(jù)通知。該數(shù)據(jù)通知可以包括要下載到手持設(shè)備的數(shù)據(jù)的可用性。基于由延續(xù)服務(wù)器接收的數(shù)據(jù)通知,在功能塊545中,延續(xù)服務(wù)器向輪詢代理發(fā)送數(shù)據(jù)警報以通知數(shù)據(jù)的可用性。響應(yīng)于數(shù)據(jù)警報,在功能塊550中,輪詢代理向設(shè)備同步層發(fā)送信號通知數(shù)據(jù)的可用性。在功能塊555中,設(shè)備同步層調(diào)用數(shù)據(jù)同步模塊,該模塊在功能塊560中與數(shù)據(jù)協(xié)調(diào)引擎通信以將數(shù)據(jù)下載到手持設(shè)備。圖6和圖7是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的數(shù)據(jù)流的順序圖。順序6和圖7表示包含在用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的方法中的全部交互和操作。圖6和圖7分別示出處理對象包括設(shè)備同步層605和705、輪詢代理610和710以及延續(xù)服務(wù)器615和715連同源自它們的它們各自的垂直虛線。設(shè)備同步層605和705、輪詢代理610和710以及延續(xù)服務(wù)器615和715的垂直虛線分別表示可以同時存在的處理。水平箭頭(例如,620、625和635 ;以及720、725和735)表示在源自它們的各自的處理對象(例如,605、610和615 ;以及705、710和715)的垂直虛線之間的數(shù)據(jù)流。水平箭頭之間的活動盒(activation box)表示正在各自的處理對象中執(zhí)行的處理。參照圖6,設(shè)備同步層605初始化每個手持設(shè)備上的輪詢代理610,以作為后臺服務(wù)運行。在水平箭頭620的末端的活動盒表示輪詢代理610的初始化。輪詢代理610建立輪詢代理610和延續(xù)服務(wù)器615之間的協(xié)議連接625。在實施例中,通過從輪詢代理610向延續(xù)服務(wù)器615發(fā)送協(xié)議連接請求來建立協(xié)議連接。延續(xù)服務(wù)器615保持建立的協(xié)議連接并等待接收數(shù)據(jù)通知630。在水平箭頭625的末端的活動盒表示當(dāng)延續(xù)服務(wù)器保持連接并等待數(shù)據(jù)通知時的情況。延續(xù)服務(wù)器的“保持并等待”動作可以指維持延續(xù)服務(wù)器和手持設(shè)備之間的連接。維持該連接包括連續(xù)地監(jiān)控手持設(shè)備的協(xié)議連接并重建延續(xù)服務(wù)器和手持設(shè)備之間的中止的協(xié)議連接。利用協(xié)議連接的狀態(tài)更新該堆棧。該數(shù)據(jù)通知包括要下載到手持設(shè)備的數(shù)據(jù)的可用性。在實施例中,延續(xù)服務(wù)器615創(chuàng)建堆棧以保持協(xié)議連接的狀態(tài),該狀態(tài)指示手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接的可用性。延續(xù)服務(wù)器615連續(xù)地監(jiān)控協(xié)議連接并更新堆棧中的協(xié)議連接的狀態(tài)。如果建立協(xié)議連接,則可以利用“已連接”狀態(tài)更新堆棧,并且如果中止協(xié)議連接,則可以利用“斷開”狀態(tài)來更新堆棧。一旦接收數(shù)據(jù)通知,延續(xù)服務(wù)器615就向輪詢代理610發(fā)送數(shù)據(jù)警報635。在水平箭頭635的末端的活動盒表示由輪詢代理610接收數(shù)據(jù)警報。基于接收的數(shù)據(jù)警報,輪詢代理610向設(shè)備同步層605通知新數(shù)據(jù)的可用性640?;跀?shù)據(jù)通知,設(shè)備同步層605調(diào)用數(shù)據(jù)同步模塊以下載數(shù)據(jù)并同步手持設(shè)備645。在水平箭頭640的末端的活動盒表示此同步。一旦同步了手持設(shè)備,設(shè)備同步層605就對輪詢代理610進行重新初始化輪詢代理650。序列從水平箭頭625繼續(xù),在其中建立輪詢代理610和延續(xù)服務(wù)器615之間的協(xié)議連接。參照7,水平箭頭720和725如圖6中水平箭頭620和625所述。當(dāng)協(xié)議連接中止時順序數(shù)據(jù)流開始于延續(xù)服務(wù)器715處的箭頭730。在水平箭頭725的末端的活動盒表示當(dāng)延續(xù)服務(wù)器715遇到輪詢代理710和延續(xù)服務(wù)器715之間的協(xié)議連接的中止730的情況。延續(xù)服務(wù)器715通知輪詢代理710關(guān)于協(xié)議連接的中止735。在水平箭頭735的末端的活動盒表示作為中止結(jié)果由輪詢代理710執(zhí)行的動作,其中輪詢代理710被建議采取相應(yīng)動作。輪詢代理710與延續(xù)服務(wù)器715重建中止的協(xié)議連接740。延續(xù)服務(wù)器715保持重建的協(xié)議連接并等待接收數(shù)據(jù)通知745。在水平箭頭740的末端的活動盒表示當(dāng)延續(xù)服務(wù)器保持連接并等待數(shù)據(jù)通知的情況。一旦接收數(shù)據(jù)通知,延續(xù)服務(wù)器715就向輪詢代理710發(fā)送數(shù)據(jù)警報750。從延續(xù)服務(wù)器715向輪詢代理710發(fā)送數(shù)據(jù)警報750時開始的順序的數(shù)據(jù)流如圖6中635所述繼續(xù)。圖8是示出根據(jù)實施例的、用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的計算機系統(tǒng)的框圖。計算機系統(tǒng)800包括輪詢代理805、數(shù)據(jù)同步模塊810、處理器815、延續(xù)服務(wù)器820、數(shù)據(jù)庫825、數(shù)據(jù)協(xié)調(diào)引擎830和經(jīng)營企業(yè)835。在實施例中,輪詢代理805和數(shù)據(jù)同步模塊810與處理器815和延續(xù)服務(wù)器820通信。延續(xù)服務(wù)器820與數(shù)據(jù)庫825通信。數(shù)據(jù)協(xié)調(diào)引擎830與處理器815和延續(xù)服務(wù)器820以及經(jīng)營企業(yè)835通信。在實施例中,輪詢代理805和數(shù)據(jù)同步模塊810包括在手持設(shè)備中。在另一實施例中,外向傳輸模塊840與數(shù)據(jù)協(xié)調(diào)引擎830通信。在實施例中,初始化輪詢代理805以向延續(xù)服務(wù)器820發(fā)送協(xié)議連接請求并建立與延續(xù)服務(wù)器820的協(xié)議連接。在實施例中,手持設(shè)備包括關(guān)聯(lián)的輪詢代理。許多這種手持設(shè)備通過它們的關(guān)聯(lián)輪詢代理建立與延續(xù)服務(wù)器820的相應(yīng)協(xié)議連接。在實施例中,設(shè)備同步層調(diào)用輪詢代理805以作為后臺服務(wù)運行。還調(diào)用輪詢代理805以向延續(xù)服務(wù)器820發(fā)送協(xié)議連接請求。對于接收的協(xié)議連接,處理器815在延續(xù)服務(wù)器820上創(chuàng)建堆棧以存儲每個協(xié)議連接的狀態(tài)。協(xié)議連接的狀態(tài)指示相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器820之間的協(xié)議連接的可用性。延續(xù)服務(wù)器820通過處理器815連續(xù)地監(jiān)控每個協(xié)議連接的狀態(tài),并利用每個協(xié)議連接的當(dāng)前狀態(tài)更新堆棧。例如,連接到延續(xù)服務(wù)器820的手持設(shè)備“移動電話”的協(xié)議連接可以具有存儲在堆棧中的“已連接”狀態(tài),并且如果“移動電話”與延續(xù)服務(wù)器的協(xié)議連 接被中止,則存儲在堆棧中的狀態(tài)可以被更新為“斷開”。從而,堆棧包括來自手持設(shè)備的協(xié)議連接的列表連同它們的對應(yīng)狀態(tài)。協(xié)議連接的狀態(tài)存儲在堆棧中直到延續(xù)服務(wù)器820接收數(shù)據(jù)通知或直到協(xié)議連接被中止。從而,延續(xù)服務(wù)器820保持來自手持設(shè)備的協(xié)議連接并等待直到它遇到動作,其中該動作可以包括接收數(shù)據(jù)通知或協(xié)議連接的中止。與堆棧關(guān)聯(lián)的處理器815維持延續(xù)服務(wù)器820和手持設(shè)備之間的連接。維持該連接包括連續(xù)地監(jiān)控手持設(shè)備的協(xié)議連接并重建延續(xù)服務(wù)器820和手持設(shè)備之間的中止的協(xié)議連接。利用協(xié)議連接的狀態(tài)更新該堆棧。基于由延續(xù)服務(wù)器820接收的數(shù)據(jù)通知,由處理器815調(diào)用堆棧以取回每個協(xié)議連接的狀態(tài)。數(shù)據(jù)通知可以包括要下載到手持設(shè)備上的數(shù)據(jù)的可用性。例如,“軟件更新”可能可用于“移動電話”,并且這種數(shù)據(jù)的可用性的數(shù)據(jù)通知由延續(xù)服務(wù)器820接收。在實施例中,數(shù)據(jù)協(xié)調(diào)引擎830可以向延續(xù)服務(wù)器820發(fā)送關(guān)于數(shù)據(jù)的可用性的這種數(shù)據(jù)通知。數(shù)據(jù)協(xié)調(diào)引擎830可以識別在經(jīng)營企業(yè)835上對于手持設(shè)備可用的數(shù)據(jù)通知,并且將該數(shù)據(jù)通知連同可用數(shù)據(jù)一起從經(jīng)營企業(yè)835發(fā)送到延續(xù)服務(wù)器820。在實施例中,對于“移動電話”可用的“軟件更新”存在于經(jīng)營企業(yè)835中。響應(yīng)于接收數(shù)據(jù)通知,延續(xù)服務(wù)器820基于相應(yīng)的協(xié)議連接的可用性,向每個手持設(shè)備的輪詢代理805發(fā)送數(shù)據(jù)警報,用于通知數(shù)據(jù)的可用性。響應(yīng)于接收數(shù)據(jù)警報,輪詢代理805向設(shè)備同步層發(fā)送信號以通知數(shù)據(jù)的可用性。設(shè)備同步層調(diào)用數(shù)據(jù)同步模塊810以與數(shù)據(jù)協(xié)調(diào)引擎830通信,并將數(shù)據(jù)下載到手持設(shè)備。數(shù)據(jù)協(xié)調(diào)引擎830基于延續(xù)服務(wù)器820和手持設(shè)備的輪詢代理805之間的協(xié)議連接的狀態(tài)、通過延續(xù)服務(wù)器820向數(shù)據(jù)同步模塊810轉(zhuǎn)發(fā)數(shù)據(jù)通知和可用數(shù)據(jù)?;谘永m(xù)服務(wù)器820和“移動電話”之間的協(xié)議連接的“已連接”狀態(tài),對“移動電話”可用的“軟件更新”通過延續(xù)服務(wù)器820從經(jīng)營企業(yè)835發(fā)送到與“移動電話”關(guān)聯(lián)的數(shù)據(jù)同步模塊810。在實施例中,如果輪詢代理805和延續(xù)服務(wù)器820之間的協(xié)議連接被中止,與延續(xù)服務(wù)器820關(guān)聯(lián)的處理器815向關(guān)聯(lián)的手持設(shè)備的輪詢代理805發(fā)送中止警報。關(guān)聯(lián)的手持設(shè)備的輪詢代理805重建與延續(xù)服務(wù)器820的中止的協(xié)議連接。輪詢代理805向延續(xù)服務(wù)器820發(fā)送協(xié)議連接請求以重建中止的協(xié)議連接。與延續(xù)服務(wù)器820關(guān)聯(lián)的處理器815利用與手持設(shè)備的輪詢代理805的協(xié)議連接的當(dāng)前狀態(tài)來更新堆棧,并保持協(xié)議連接直到接收了數(shù)據(jù)通知或直到協(xié)議連接被再次中止。在實施例中,手持設(shè)備連同關(guān)聯(lián)的輪詢代理805和數(shù)據(jù)同步模塊810包括在公共網(wǎng)絡(luò)中,并且數(shù)據(jù)協(xié)調(diào)引擎830和經(jīng)營企業(yè)835包括在私人網(wǎng)絡(luò)中。為了對手持設(shè)備轉(zhuǎn)發(fā)在經(jīng)營企業(yè)上可用的數(shù)據(jù),延續(xù)服務(wù)器820安裝在網(wǎng)絡(luò)接口區(qū)上,該網(wǎng)絡(luò)接口區(qū)獨立于公共網(wǎng)絡(luò)和私人網(wǎng)絡(luò)。數(shù)據(jù)協(xié)調(diào)引擎830識別經(jīng)營企業(yè)835上可用的數(shù)據(jù)并通知延續(xù)服務(wù)器820。延續(xù)服務(wù)器820調(diào)用堆棧以確定延續(xù)服務(wù)器820和相應(yīng)的手持設(shè)備之間的每個協(xié)議連接的狀態(tài)?;趨f(xié)議連接的可用性,延續(xù)服務(wù)器820向相應(yīng)的手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)通知和可用數(shù)據(jù)。在實施例中,數(shù)據(jù)協(xié)調(diào)引擎830可以具有關(guān)聯(lián)的外向傳輸模塊840。外向傳輸模塊840接受手持設(shè)備的注冊用于接收在經(jīng)營企業(yè)835上可用的任一數(shù)據(jù)通知。當(dāng)數(shù)據(jù)對于手持設(shè)備可用時,外向傳輸模塊840向注冊的手持設(shè)備發(fā)送數(shù)據(jù)通知和相應(yīng)的數(shù)據(jù)警報。延續(xù)服務(wù)器820包括來自相應(yīng)的手持設(shè)備的協(xié)議連接,使能數(shù)據(jù)通知和可用數(shù)據(jù)向手持設(shè)備 的轉(zhuǎn)發(fā)以及對數(shù)據(jù)協(xié)調(diào)引擎830的可訪問性,使能數(shù)據(jù)通知的接收。本發(fā)明的一些實施例可以包括編寫為一個或多個軟件組件的以上描述的方法。這些組件,以及與每個組件關(guān)聯(lián)的功能性,可以由客戶、服務(wù)器、分布式或?qū)Φ扔嬎銠C系統(tǒng)使用??梢砸韵鄳?yīng)于一個或多個編程語言的計算機語言編寫這些組件,所述編程語言諸如函數(shù)型、表述型、過程化、面向?qū)ο?、低級語言等。它們可以經(jīng)由各種應(yīng)用編程接口鏈接到其它組件,然后被編譯成為用于服務(wù)器或客戶的一個完整的應(yīng)用。可替換地,所述組件可以在服務(wù)器和客戶應(yīng)用中實現(xiàn)。此外,這些組件可以經(jīng)由各種分布式程序設(shè)計協(xié)議鏈接在一起。本發(fā)明的一些示例實施例可以包括用于跨分布式程序設(shè)計環(huán)境實現(xiàn)一個或多個這些組件的遠(yuǎn)程過程調(diào)用。例如,邏輯電平可以位于第一計算機系統(tǒng)上,該第一計算機系統(tǒng)遠(yuǎn)離包含界面級別(例如,圖形用戶界面)的第二計算機系統(tǒng)??梢砸苑?wù)器-客戶、對等或其它的配置來配置這些第一計算機系統(tǒng)和第二計算機系統(tǒng)??蛻艨梢詮囊苿釉O(shè)備和手持設(shè)備到瘦客戶端和胖客戶端乃至其它服務(wù)器而在復(fù)雜性方面不同。以上示出的軟件組件作為指令有形地存儲在計算機可讀存儲介質(zhì)上。術(shù)語“計算機可讀存儲介質(zhì)”可以理解為包括存儲一個或多個指令的集合的單個介質(zhì)或多個介質(zhì)。術(shù)語“計算機可讀存儲介質(zhì)”可以理解為包括能夠經(jīng)歷一組物理變化以物理上存儲、編碼、或者攜帶用于由計算機系統(tǒng)運行的一組指令的任何物理產(chǎn)品,所述指令引起計算機系統(tǒng)執(zhí)行此處描述、表示或示出的任何方法或處理步驟。計算機可讀存儲介質(zhì)的示例包括,但不限于諸如硬光盤、軟盤和磁帶之類的磁介質(zhì);諸如CD-ROM、DVD和全息照相裝置之類的光學(xué)介質(zhì);磁光介質(zhì);以及專門為存儲和運行而配置的硬件設(shè)備,諸如專用集成電路(“ASIC”)、可編程邏輯器件(“PLD”)和ROM以及RAM設(shè)備。計算機可讀指令的示例包括諸如由編譯器產(chǎn)生的機器代碼,以及包含由計算機使用解釋器運行的更高級代碼的文件。例如,本發(fā)明的實施例可以使用Java、C++或其它面向?qū)ο蟮某绦蛟O(shè)計語言和開發(fā)工具實現(xiàn)。本發(fā)明的另一實施例可以以硬接線電路實現(xiàn)而不是由機器可讀的軟件指令實現(xiàn),或者和機器可讀的軟件指令共同一起實現(xiàn)。圖9是示范性計算機系統(tǒng)900的框圖。計算機系統(tǒng)900包括運行計算機可讀存儲介質(zhì)955上存儲的軟件指令或代碼以執(zhí)行以上示出的本發(fā)明的方法的處理器905。計算機系統(tǒng)900包括介質(zhì)讀取器940,用于從計算機可讀存儲介質(zhì)955讀取指令,并將指令存儲在存儲器910或隨機存取存儲器(RAM)915中。存儲器910提供用于保存靜態(tài)數(shù)據(jù)的大空間,在其中可以存儲至少一些指令用于稍后的運行。存儲的指令還可以被編譯以生成指令的其它表示并且被動態(tài)地存儲在RAM 915中。處理器905從RAM 915讀指令并執(zhí)行如指示的動作。根據(jù)本發(fā)明的一個實施例,計算機系統(tǒng)900還包括輸出設(shè)備925(例如,顯示器)和輸入設(shè)備930,輸出設(shè)備925向用戶提供運行的至少一些結(jié)果作為輸出,包括但不限于視覺信息,輸入設(shè)備930向用戶或另一設(shè)備提供輸入數(shù)據(jù)和/或其它與計算機系統(tǒng)900交互的手段。這些輸出設(shè)備925和輸入裝置930中的每一個可以通過一個或多個額外的外圍設(shè)備相連以更進一步擴展計算機系統(tǒng)900的能力??梢蕴峁┚W(wǎng)絡(luò)通信器935以將計算機系統(tǒng)900 連接到網(wǎng)絡(luò)950以及進而連接到與網(wǎng)絡(luò)950連接的其它設(shè)備,例如,包括其它客戶端、延續(xù)服務(wù)器、數(shù)據(jù)存儲器和接口。計算機系統(tǒng)900的模塊經(jīng)由總線945互聯(lián)。計算機系統(tǒng)900包括數(shù)據(jù)源接口 920以訪問數(shù)據(jù)源960??梢越?jīng)由以硬件或軟件實現(xiàn)的一個或多個抽象層 訪問數(shù)據(jù)源960。例如,可以通過網(wǎng)絡(luò)950訪問數(shù)據(jù)源960。在一些實施例中,可以經(jīng)由諸如語義學(xué)層的抽象層訪問數(shù)據(jù)源960。數(shù)據(jù)源是信息資源。數(shù)據(jù)源包括使能數(shù)據(jù)儲存和檢索的數(shù)據(jù)的源。數(shù)據(jù)源可以包括數(shù)據(jù)庫,諸如,關(guān)系數(shù)據(jù)庫、事務(wù)數(shù)據(jù)庫、層次數(shù)據(jù)庫、多維(例如,0LAP)數(shù)據(jù)庫、面向?qū)ο髷?shù)據(jù)庫等等。更多的數(shù)據(jù)源包括表列數(shù)據(jù)(例如,電子表格、界定文本文件)、利用標(biāo)記語言標(biāo)記的數(shù)據(jù)(例如,XML數(shù)據(jù))、事務(wù)數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)(例如,文本文件、屏幕抓取)、分層數(shù)據(jù)(例如,文件系統(tǒng)中的數(shù)據(jù)、XML數(shù)據(jù))、文件、多個報告以及通過基礎(chǔ)的軟件系統(tǒng)(例如,ERP系統(tǒng))產(chǎn)生的通過建立的諸如開放式數(shù)據(jù)庫互接(ODBC)的協(xié)議可訪問的任何其他的數(shù)據(jù)源等等。數(shù)據(jù)源還可以包括在其中數(shù)據(jù)不是有形地存儲而是短暫的存儲的數(shù)據(jù)源,諸如數(shù)據(jù)流、廣播數(shù)據(jù)等等。這些數(shù)據(jù)源可以包括關(guān)聯(lián)的數(shù)據(jù)基礎(chǔ)、語義學(xué)層、管理系統(tǒng)、安全系統(tǒng)等等。在上述的描述中,闡述許多的細(xì)節(jié)以提供對本發(fā)明的實施例的全面理解。然而,相關(guān)領(lǐng)域的一個技術(shù)人員將清楚可以沒有一個或多個細(xì)節(jié)、或利用其他方法、組件、技術(shù)等而實現(xiàn)本發(fā)明。在其它情況中,不示出或詳細(xì)描述公知操作或結(jié)構(gòu)以避免模糊本發(fā)明的方面。雖然此處示出和描述的處理包括步驟的系列,但是將理解,本發(fā)明的不同實施例不限于示出的步驟的次序,因為一些步驟可以以不同的次序發(fā)生,一些步驟與除此處示出和描述之外的其它步驟同時發(fā)生。此外,不要求全部示出的步驟實現(xiàn)根據(jù)本發(fā)明的方法。此夕卜,將理解的是,可以與此處示出和描述的裝置和系統(tǒng)相聯(lián)系以及與未示出的其它系統(tǒng)相聯(lián)系地實現(xiàn)處理。本發(fā)明的實施例的以上描述和圖示,包括摘要中的描述,不旨在窮盡或限制本發(fā)明為公開的精確形式。而是此處描述用于本發(fā)明的的指定實施例和示例用于說明性的目的,如那些本領(lǐng)域技術(shù)人員將清楚的,在本發(fā)明范圍內(nèi)許多等效修改是可能的??紤]到以上詳細(xì)描述可以作出對本發(fā)明的這些修改。更確切地,本發(fā)明的范圍通過以下權(quán)利要求確定,將根據(jù)已建立的專利保護范圍解讀原則來解釋所述權(quán)利要求。
權(quán)利要求
1.一種用于從延續(xù)服務(wù)器向一個或多個手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的計算機實現(xiàn)的方法,包括 在延續(xù)服務(wù)器處,從相應(yīng)的手持設(shè)備接收ー個或多個協(xié)議連接; 對于接收的協(xié)議連接,在延續(xù)服務(wù)器上創(chuàng)建堆棧以存儲每個協(xié)議連接的狀態(tài),該狀態(tài)指示相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接的可用性; 維持延續(xù)服務(wù)器和手持設(shè)備之間的連接; 基于在延續(xù)服務(wù)器處接收的、指示要下載到手持設(shè)備的數(shù)據(jù)的可用性的數(shù)據(jù)通知來調(diào)用堆棧以取回每個協(xié)議連接的狀態(tài);以及基于協(xié)議連接的狀態(tài),從延續(xù)服務(wù)器向相應(yīng)的手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)通知和可用數(shù)據(jù)。
2.如權(quán)利要求I所述的計算機實現(xiàn)的方法,其中響應(yīng)于下述步驟接收所述協(xié)議連接 初始化每個手持設(shè)備上的輪詢代理,所述輪詢代理被配置為從相應(yīng)的手持設(shè)備向延續(xù)服務(wù)器發(fā)送協(xié)議連接請求;以及 在相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間建立相應(yīng)的協(xié)議連接。
3.如權(quán)利要求I所述的計算機實現(xiàn)的方法,其中所述堆棧保持協(xié)議連接與相應(yīng)的狀態(tài),直到由延續(xù)服務(wù)器接收了數(shù)據(jù)通知。
4.如權(quán)利要求I所述的計算機實現(xiàn)的方法,其中,響應(yīng)于所述接收的數(shù)據(jù)通知,所述延續(xù)服務(wù)器基于相應(yīng)的協(xié)議連接的可用性向每個手持設(shè)備的輪詢代理發(fā)送數(shù)據(jù)警報,用于通知數(shù)據(jù)的可用性。
5.如權(quán)利要求4所述的計算機實現(xiàn)的方法,其中響應(yīng)于所述數(shù)據(jù)警報,每個手持設(shè)備的輪詢代理調(diào)用數(shù)據(jù)同步模塊,用于將數(shù)據(jù)下載到相應(yīng)的手持設(shè)備。
6.如權(quán)利要求I所述的計算機實現(xiàn)的方法,其中所述堆棧保持協(xié)議連接與相應(yīng)的狀態(tài),直到相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接被中止。
7.如權(quán)利要求6所述的計算機實現(xiàn)的方法,其中所述延續(xù)服務(wù)器向具有中止的協(xié)議連接的手持設(shè)備的輪詢代理發(fā)送中止警報。
8.如權(quán)利要求7所述的計算機實現(xiàn)的方法,其中基于所述中止警報,指示所述輪詢代理將協(xié)議連接請求從相應(yīng)的手持設(shè)備發(fā)送到延續(xù)服務(wù)器以重建中止的協(xié)議連接。
9.如權(quán)利要求I計算機實現(xiàn)的方法,其中,維持連接包括 連續(xù)地監(jiān)控手持設(shè)備的協(xié)議連接; 重建延續(xù)服務(wù)器和手持設(shè)備之間的中止的協(xié)議連接;以及 利用協(xié)議連接的狀態(tài)更新堆棧。
10.如權(quán)利要求I所述的計算機實現(xiàn)的方法,還包括數(shù)據(jù)協(xié)調(diào)引擎,用于 識別在經(jīng)營企業(yè)上的可用于手持設(shè)備的一個或多個數(shù)據(jù)通知;以及 將數(shù)據(jù)通知與可用數(shù)據(jù)一起從經(jīng)營企業(yè)發(fā)送到延續(xù)服務(wù)器。
11.如權(quán)利要求I所述的計算機實現(xiàn)的方法,其中所述延續(xù)服務(wù)器安裝在網(wǎng)絡(luò)接ロ區(qū)上,所述網(wǎng)絡(luò)接ロ區(qū)獨立于手持設(shè)備的公共網(wǎng)絡(luò)和數(shù)據(jù)協(xié)調(diào)引擎的私人網(wǎng)絡(luò)。
12.如權(quán)利要求I計算機實現(xiàn)的方法,其中,所述延續(xù)服務(wù)器包括 來自相應(yīng)的手持設(shè)備的協(xié)議連接,使能數(shù)據(jù)通知和可用數(shù)據(jù)向手持設(shè)備的轉(zhuǎn)發(fā);以及對數(shù)據(jù)協(xié)調(diào)引擎的可訪問性,使能數(shù)據(jù)通知的接收。
13.一種用于從延續(xù)服務(wù)器向一個或多個手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的計算機系統(tǒng),包括處理器,可操作用于讀取和執(zhí)行存儲在ー個或多個存儲元件中的指令;以及 存儲指令的一個或多個存儲元件,所述指令用于使得 輪詢代理從手持設(shè)備向延續(xù)服務(wù)器發(fā)送ー個或多個協(xié)議連接; 處理器在延續(xù)服務(wù)器上創(chuàng)建堆棧用于存儲每個協(xié)議連接的狀態(tài),該狀態(tài)指示相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接的可用性; 延續(xù)服務(wù)器維持與手持設(shè)備的連接以及基于接收的數(shù)據(jù)通知調(diào)用堆棧并取回每個協(xié)議連接的狀態(tài);以及 數(shù)據(jù)同步模塊基于協(xié)議連接的狀態(tài)接收從延續(xù)服務(wù)器轉(zhuǎn)發(fā)到手持設(shè)備的數(shù)據(jù)通知和可用數(shù)據(jù)。
14.如權(quán)利要求13所述的計算機系統(tǒng),還包括 數(shù)據(jù)協(xié)調(diào)引擎,用于在經(jīng)營企業(yè)上識別可用于手持設(shè)備的一個或多個數(shù)據(jù)通知,并且用于將數(shù)據(jù)通知從經(jīng)營企業(yè)發(fā)送到延續(xù)服務(wù)器;以及 外向傳輸模塊,用干與數(shù)據(jù)協(xié)調(diào)引擎通信以接受手持設(shè)備的用于接收數(shù)據(jù)通知的注冊,并且用于將數(shù)據(jù)通知發(fā)送到向外向傳輸介質(zhì)登記了的手持設(shè)備。
15.如權(quán)利要求13所述的計算機系統(tǒng),其中所述手持設(shè)備包括所述輪詢代理和所述數(shù)據(jù)同步模塊。
16.如權(quán)利要求13所述的計算機系統(tǒng),其中所述延續(xù)服務(wù)器將創(chuàng)建的堆棧存儲在數(shù)據(jù)庫上,并且基于接收的數(shù)據(jù)通知從數(shù)據(jù)庫取回堆棧。
17.如權(quán)利要求13所述的計算機系統(tǒng),其中公共網(wǎng)絡(luò)包括手持設(shè)備并且私人網(wǎng)絡(luò)包括數(shù)據(jù)協(xié)調(diào)引擎。
18.—種包括有形地存儲指令的計算機可讀存儲介質(zhì)的產(chǎn)品,當(dāng)由計算機運行所述指令時導(dǎo)致計算機 在延續(xù)服務(wù)器處從相應(yīng)的一個或多個手持設(shè)備接收ー個或多個協(xié)議連接; 對于接收的協(xié)議連接,在延續(xù)服務(wù)器上創(chuàng)建堆棧以存儲每個協(xié)議連接的狀態(tài),該狀態(tài)指示相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接的可用性; 維持延續(xù)服務(wù)器和手持設(shè)備之間的連接; 基于延續(xù)服務(wù)器接收的、指示要下載到手持設(shè)備的數(shù)據(jù)的可用性的數(shù)據(jù)通知來調(diào)用堆棧以取回每個協(xié)議連接的狀態(tài);以及 基于協(xié)議連接的狀態(tài),從延續(xù)服務(wù)器向相應(yīng)的手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)通知和可用數(shù)據(jù)。
19.如權(quán)利要求18所述的產(chǎn)品,其中響應(yīng)于下述步驟接收所述協(xié)議連接 初始化每個手持設(shè)備上的輪詢代理,所述輪詢代理被配置為從相應(yīng)的手持設(shè)備向延續(xù)服務(wù)器發(fā)送協(xié)議連接請求;以及 在相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間建立相應(yīng)的協(xié)議連接。
20.如權(quán)利要求18所述的產(chǎn)品,其中維持連接包括 連續(xù)地監(jiān)控手持設(shè)備的協(xié)議連接; 重建延續(xù)服務(wù)器和手持設(shè)備之間的中止的協(xié)議連接;以及 利用協(xié)議連接的狀態(tài)更新堆棧。
全文摘要
公開用于從延續(xù)服務(wù)器向手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)的系統(tǒng)和方法的多個實施例。在延續(xù)服務(wù)器處,接收從手持設(shè)備建立的協(xié)議連接。在延續(xù)服務(wù)器上創(chuàng)建堆棧,該堆棧存儲接收的每個協(xié)議連接的狀態(tài)。該狀態(tài)指示在相應(yīng)的手持設(shè)備和延續(xù)服務(wù)器之間的協(xié)議連接的可用性。維持延續(xù)服務(wù)器和手持設(shè)備之間的連接。一旦延續(xù)服務(wù)器接收了數(shù)據(jù)通知,就調(diào)用堆棧以取回每個協(xié)議連接的狀態(tài)。該數(shù)據(jù)通知可以包括要下載到手持設(shè)備的數(shù)據(jù)的可用性?;谘永m(xù)服務(wù)器和手持設(shè)備之間的協(xié)議連接的可用性,從延續(xù)服務(wù)器向相應(yīng)的手持設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)通知和可用數(shù)據(jù)。
文檔編號H04L29/06GK102801700SQ20121004382
公開日2012年11月28日 申請日期2012年2月23日 優(yōu)先權(quán)日2011年2月23日
發(fā)明者V.拉姆巴 申請人:Sap股份公司