欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

傳輸不可知拉模式消息通信服務(wù)的制作方法

文檔序號:7604560閱讀:188來源:國知局
專利名稱:傳輸不可知拉模式消息通信服務(wù)的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及消息傳送系統(tǒng)領(lǐng)域。更具體而言,本發(fā)明涉及消息的發(fā)送和請求中的消息可靠性。
背景技術(shù)
當(dāng)技術(shù)不斷前進時,向用戶呈現(xiàn)了可發(fā)送和接收消息的各種各樣設(shè)備。典型的辦公室工作者在多個設(shè)備上發(fā)送和接收消息是很常見的,這些設(shè)備包括電話語音郵件系統(tǒng)、個人數(shù)字助理(PDA)、使用小消息通信服務(wù)(SMS)的蜂窩電話、以及個人電子郵件賬號。盡管從多個來源和設(shè)備發(fā)送和接收消息的能力為工作者創(chuàng)建了靈活性,然而它也造成了其它問題。例如,工作者現(xiàn)在負(fù)責(zé)核查若干不同的設(shè)備,從而增加了時間、費用和壓力,并且期望向工作者發(fā)送消息的用戶必須猜測工作者當(dāng)前正在使用什么設(shè)備,以獲得工作者將及時接收消息的高可能性。
另外,對于消息的發(fā)送者通常沒有可靠的方法來知道接收者是否接收到了消息,這會導(dǎo)致同一消息的多個副本被發(fā)送和接收。在任務(wù)關(guān)鍵的應(yīng)用中,重復(fù)的消息可以是有問題的。例如,用戶可通過電子郵件提交定單以售出100股份。如果用戶不確定其傳送,他可能再次發(fā)送它。對于接收者沒有可靠的方法來說出用戶是希望兩次單獨的100股份的銷售,還是包含該定單的第二個消息是重復(fù)的。
對這些問題的先前的解決方案通常是不靈活的,且限于某些技術(shù)。例如,存在將電子郵件轉(zhuǎn)換成SMS以供在蜂窩電話上接收的程序。然而,這些解決方案通常不允許消息接收者選擇他在哪里接收該消息;相反,它們依賴于發(fā)送者來指定消息在哪里被發(fā)送。此外,這些解決方案沒有向發(fā)送者提供消息被接收的保證,并且沒有向接收者提供消息是否被發(fā)送的指示。另外,它們需要消息發(fā)送者知道消息接收者所具有的用于接收消息的技術(shù)。
鑒于上述原因,需要一種可靠地確保消息被傳送并且重復(fù)的消息被刪除的消息通信系統(tǒng)。另外,需要向用戶提供向其它用戶發(fā)送和接收消息而無需關(guān)心用于接收那些消息的設(shè)備,以及另外選擇它們何時以及使用什么設(shè)備可接收其自己的消息的能力。
發(fā)明概述本發(fā)明提供了一種用于確保消息傳送的傳輸不可知拉模式消息通信的機制。
依照一個實施例,客戶機的用戶希望向特定的端點發(fā)送消息。端點可以是應(yīng)用程序、另一用戶或另一客戶機。用戶客戶機生成消息的唯一消息標(biāo)識(如,號碼),然后將該消息連同唯一消息標(biāo)識一起發(fā)送給服務(wù)器。服務(wù)器然后可響應(yīng)客戶機,表明具有唯一消息標(biāo)識的消息已被接收。如果客戶機在指定時間內(nèi)未從服務(wù)器接收到響應(yīng),則客戶機重新發(fā)送消息和唯一標(biāo)識。在服務(wù)器接收到消息之后,它查找消息存儲中的重復(fù)消息。如果它沒有發(fā)現(xiàn)重復(fù),則它將消息保存在消息存儲中。
客戶機的用戶希望接收在消息存儲中等待被傳送的某些或所有其消息。用戶希望在他所使用的客戶機上或在某一其它端點處接收其消息。用戶客戶機生成指定用戶期望接收的消息和期望端點的消息。用戶客戶機生成消息的唯一消息標(biāo)識,并將該消息連同唯一消息標(biāo)識一起發(fā)送給服務(wù)器。服務(wù)器然后可響應(yīng)客戶機,具有唯一消息標(biāo)識的消息已被接收。如果客戶機在指定時間內(nèi)未從服務(wù)器接收到響應(yīng),則客戶機重新發(fā)送消息和唯一標(biāo)識。服務(wù)器然后可檢索指定的消息并將它們發(fā)送到指定的端點。
當(dāng)結(jié)合附圖繼續(xù)閱讀以下說明性實施例的詳細(xì)描述時,可以清楚本發(fā)明的其它特征和優(yōu)點。
附圖簡述當(dāng)結(jié)合附圖閱讀時,可以更好地理解以上概述以及以下較佳實施例的詳細(xì)描述。為說明本發(fā)明的目的,附圖中示出了本發(fā)明的示例性構(gòu)造;然而,本發(fā)明不限于所揭示的具體方法和手段。附圖中

圖1是可用于描述本發(fā)明的特征的示例性系統(tǒng)的框圖;圖2是可用于描述依照本發(fā)明的確保客戶機和服務(wù)器之間的消息傳送的示例性方法的圖示;
圖3是依照本發(fā)明的確??蛻魴C和服務(wù)器之間的消息傳送的示例性方法的流程圖;以及圖4所示是其中可實現(xiàn)本發(fā)明的示例性計算環(huán)境的框圖。
較佳實施例的詳細(xì)描述綜述本發(fā)明針對傳輸不可知拉模式消息通信,它使不同類型系統(tǒng)或設(shè)備的客戶機能夠彼此發(fā)送和接收消息,同時提供了保證的消息傳送。此處所揭示的示例性系統(tǒng)和方法克服了現(xiàn)有技術(shù)和系統(tǒng)中發(fā)現(xiàn)的不同的客戶機設(shè)備之間的互操作性問題以及消息傳送可靠性問題。
諸如電子郵件應(yīng)用程序或蜂窩電話等客戶機設(shè)備連接到服務(wù)器,并拉出隊列中等待它們的消息??蛻魴C可將其本身指定為拉出的消息的接收者,或?qū)⒘硪豢蛻魴C指定為接收者??蛻魴C通過客戶機適配器與服務(wù)器通信。客戶機適配器能夠通過使用客戶機和服務(wù)器使用的特定協(xié)議(并在之間轉(zhuǎn)換)在服務(wù)器和客戶機之間交互。這允許不同類型的客戶機的用戶能夠通信,并向用戶提供了關(guān)于如何、何時以及何處查看其消息的更大的靈活性。
示例性實施例圖1依照本發(fā)明描述了傳輸不可知拉模式消息通信系統(tǒng)100的示例性實施例的框圖,它準(zhǔn)許消息由多個不同的設(shè)備和格式以及在多個不同的設(shè)備和格式之間發(fā)送、排隊和/或接收。提供了消息存儲101、服務(wù)器引擎102、多個客戶機適配器103、104、105以及多個客戶機設(shè)備106、107、108。消息存儲101可用于儲存由客戶機發(fā)送和/或接收的消息。消息可包括消息正文、消息發(fā)送者的標(biāo)識、消息的端點目的地、以及可與消息相關(guān)聯(lián)的任何其它信息。例如,端點可以是特定用戶、客戶機設(shè)備或應(yīng)用程序。消息被儲存,直到從服務(wù)器引擎102接收到刪除消息的指令??梢岳斫猓墒褂帽绢I(lǐng)域中已知的用于消息存儲的任何方法、系統(tǒng)或技術(shù)。
服務(wù)器引擎102用于與客戶機適配器103、104、105和消息存儲101通信。客戶機適配器可請求服務(wù)器引擎102在消息存儲101上執(zhí)行某些操作。這些操作可包括從消息存儲101添加、刪除和/或檢索消息??梢岳斫?,服務(wù)器引擎102允許靈活地對消息存儲201進行底層設(shè)計,因為對消息存儲101的任何改變通常是依照服務(wù)器引擎102的修改來執(zhí)行的,并且將不會影響客戶機適配器的操作。
有多種消息適配器,例如,對所支持的每一客戶機設(shè)備類型有一種??蛻魴C適配器可擔(dān)當(dāng)相關(guān)聯(lián)的客戶機設(shè)備和服務(wù)器引擎102之間的中介,并允許客戶機設(shè)備與服務(wù)器引擎102交互,而無需客戶機設(shè)備或服務(wù)器引擎102使用相同的通信方法或協(xié)議。可以理解,對每一支持的客戶機類型使用客戶機適配器可允許容易地添加新的客戶機,而無需對服務(wù)器引擎102或客戶機設(shè)備本身的修改??蛻魴C設(shè)備可由用戶用于發(fā)送和接收消息。
為說明目的,參考本示例描述了三種客戶機適配器和三種客戶機設(shè)備。例如,PDA適配器103用于在PDA客戶機106和服務(wù)器引擎102之間通信。PDA客戶機106可以是本領(lǐng)域中公知的典型的個人數(shù)字助理。類似地,電子郵件適配器104用于在電子郵件客戶機107和服務(wù)器引擎102之間通信。電子郵件客戶機107可以是本領(lǐng)域中公知的典型的電子郵件應(yīng)用程序,如MICROSOFT的Outlook。此外,SMS適配器105用于在SMS客戶機108和服務(wù)器引擎102之間通信。SMS客戶機108可以是本領(lǐng)域中公知的典型的蜂窩電話設(shè)備。
PDA客戶機106的用戶可期望向特定端點發(fā)送消息。為說明的目的,選擇了PDA客戶機106,然而可以理解,可使用任何客戶機來發(fā)送消息。例如,端點可以是另一用戶、應(yīng)用程序或不同類型的客戶機。在本示例中,假定端點是SMS客戶機108。
為確保消息被接收,PDA客戶機106可首先生成消息的唯一消息標(biāo)識(如,號碼或其它標(biāo)識符)。可以理解,可使用本領(lǐng)域中已知的用于生成唯一消息標(biāo)識符的任何方法、系統(tǒng)或技術(shù)。該唯一標(biāo)識符的目的是確保消息被接收,以及任何隨后的重新發(fā)送將被系統(tǒng)作為重復(fù)來處理。唯一消息標(biāo)識符可連同消息內(nèi)容一起被發(fā)送到與PDA客戶機106相關(guān)聯(lián)的適配器,在本情況下為PDA適配器103。
在本示例性實施例中,PDA適配器103可以接收或不接收由PDA客戶機106發(fā)送的消息。如果PDA適配器103接收消息,則它可用表明消息連同由PDA客戶機106提供的唯一標(biāo)識符一起被接收的消息來響應(yīng)PDA客戶機106。如果PDA適配器103未接收消息,則表明消息在傳輸中丟失,或者如果PDA客戶機106未接收到響應(yīng),則在某一指定時間之后,可由PDA客戶機106重新發(fā)送原始消息以及唯一標(biāo)識符。PDA客戶機106將繼續(xù)重新發(fā)送消息和唯一標(biāo)識符,直到它從PDA適配器103接收到指示消息被接收的響應(yīng)。
在本示例性實施例中,PDA適配器103可能已經(jīng)發(fā)送了對由PDA客戶機106發(fā)送的消息的響應(yīng)。消息現(xiàn)在可由PDA適配器103發(fā)送到服務(wù)器引擎102。PDA適配器103可被表征為處理消息請求的服務(wù)器引擎102與發(fā)送和請求消息的PDA客戶機106之間的通信層。每一客戶機設(shè)備可使用不同的標(biāo)準(zhǔn)或協(xié)議來通信??梢岳斫?,對于服務(wù)器引擎102,與使用多種標(biāo)準(zhǔn)或協(xié)議的客戶機設(shè)備通信是麻煩的。因此,每一類型的客戶機可具有一相關(guān)聯(lián)的適配器(例如,適配器103、104、105),該適配器允許服務(wù)器引擎102和每一類型客戶機之間的通信??梢岳斫?,客戶機適配器的使用模塊化了服務(wù)器的設(shè)計,并提供了通過創(chuàng)建新適配器類型來添加新類型客戶機的能力。
服務(wù)器引擎102現(xiàn)在可使用先前由PDA客戶機106提供的唯一消息標(biāo)識符以及可與客戶機相關(guān)聯(lián)的客戶機標(biāo)識號查詢消息存儲101。每一客戶機較佳地具有與其相關(guān)聯(lián)的標(biāo)識符??蛻魴C標(biāo)識符可以是任何號碼或者其它標(biāo)識,它們唯一地標(biāo)識了客戶機并將其與其它客戶機區(qū)分開來。
該查詢可以在消息存儲101中搜索包含匹配的唯一消息標(biāo)識符以及對應(yīng)于PDA客戶機106的客戶機標(biāo)識符的任何消息。如果消息101返回任何匹配,則服務(wù)器引擎102理想地假設(shè)當(dāng)前消息是重復(fù)的,并將不保存該消息??梢岳斫?,由于唯一消息標(biāo)識符僅對特定的客戶機是唯一的,并非整個系統(tǒng),因此連同唯一消息標(biāo)識符一起使用客戶機標(biāo)識符確保沒有消息由于沖突的唯一消息標(biāo)識符而丟失。
如果消息存儲101沒有從查詢中返回任何結(jié)果,則服務(wù)器引擎102可標(biāo)準(zhǔn)化消息以儲存在消息存儲101中。可以理解,適配器的使用允許客戶機與服務(wù)器引擎102通信,然而消息仍需要被格式化或標(biāo)準(zhǔn)化以儲存在消息存儲101中。消息理想地由服務(wù)器引擎102標(biāo)準(zhǔn)化成XML。可以理解,可使用本領(lǐng)域中已知的用于消息標(biāo)準(zhǔn)化的其它系統(tǒng)、技術(shù)或方法。標(biāo)準(zhǔn)化消息然后被發(fā)送到消息存儲101以便儲存供客戶機設(shè)備稍后檢索。
在示例性實施例中,SMS客戶機108的用戶可能希望接收發(fā)送給他的某些或全部消息。這些消息可駐留在消息存儲201中,如先前由PDA客戶機106的用戶發(fā)送的消息。用戶可通過向SMS適配器105發(fā)送指定他希望接收消息以及他希望如何接收消息的消息來請求這些消息。
用戶具有關(guān)于其消息如何返回給他的若干選項。具體地,用戶可指定接收消息的端點。該端點可以是用戶當(dāng)前正在使用的設(shè)備,但也可以是諸如另一用戶或電子郵件客戶機107的另一端點。例如,用戶可具有大量的消息,并且相反希望在電子郵件客戶機107上查看它們。另外,用戶可能希望在用戶當(dāng)前正在使用的設(shè)備上接收其消息,但是使用不同的協(xié)議。例如,用戶可能在其個人計算機上使用電子郵件客戶機107已接收了其消息,但是現(xiàn)在可能期望在其個人計算機上使用web瀏覽器來接收它們。
假定SMS客戶機107的用戶期望在SMS客戶機108上讀取其消息。因此,他可向SMS適配器105發(fā)送指示他希望在SMS客戶機108上接收消息的消息。SMS客戶機108首先生成唯一消息標(biāo)識符。該唯一消息標(biāo)識符用于確保消息由SMS適配器105接收,并防止發(fā)送重復(fù)的消息。SMS客戶機108現(xiàn)在可將具有該唯一消息標(biāo)識符的消息發(fā)送到SMS適配器105,該消息指定了他希望在端點SMS客戶機108處接收其消息,以及可用的任何附加傳送選項。
SMS適配器105從SMS客戶機108接收請求,它請求將相關(guān)聯(lián)的消息發(fā)送給SMS客戶機108。SMS適配器105現(xiàn)在可向服務(wù)器引擎102發(fā)送消息,該消息帶有對具有SMS客戶機108的端點的所有消息的請求。服務(wù)器引擎102在消息存儲101中查詢具有與SMS客戶機108相匹配的指定端點的消息。消息存儲101向服務(wù)器引擎102返回所有匹配的消息。服務(wù)器引擎102可以用要向其發(fā)送的端點(在本情況下為SMS客戶機108)所要求的格式來標(biāo)準(zhǔn)化消息。如上所述,消息作為XML儲存在消息存儲101中。服務(wù)器引擎102理想地將消息從XML轉(zhuǎn)換成SMS客戶機108要求的格式。服務(wù)器引擎102然后將那些消息發(fā)送到SMS適配器105。SMS適配器105然后可將消息以及唯一消息標(biāo)識符一起發(fā)送到SMS客戶機108。一旦SMS客戶機108接收到消息,它可顯示它們或?qū)⑵涮峁┙o用戶。
SMS客戶機108可能未接收到它所請求的消息。例如,這可以是發(fā)送到SMS適配器105的初始消息在傳輸中丟失的結(jié)果,或來自SMS適配器105的響應(yīng)在傳輸中丟失的結(jié)果。在任一情況下,SMS客戶機108在某一(較佳地由用戶定義)超時時間段之后,重新發(fā)送原始消息以及原始唯一消息標(biāo)識符。較佳地,它將不斷地重新發(fā)送原始消息以及唯一標(biāo)識符,直到它從SMS適配器105接收到包含匹配的唯一標(biāo)識符的響應(yīng)??蓮奈ㄒ幌?biāo)識符中標(biāo)識的所到達的任何重復(fù)響應(yīng)理想地由SMS客戶機108忽略。
SMS客戶機108的用戶現(xiàn)在可能已接收到了其消息。那些消息可包含用于期望發(fā)送到電子郵件應(yīng)用程序的信息。例如,消息包含用戶可能更容易地用臺式機上的電子郵件應(yīng)用程序查看的文本或附件。假定SMS客戶機108的用戶希望將特定的消息轉(zhuǎn)發(fā)給電子郵件客戶機207,它可將該消息發(fā)送給SMS適配器105,以將所選擇的消息轉(zhuǎn)發(fā)給對應(yīng)于電子郵件客戶機107的端點,該消息連同唯一消息標(biāo)識符一起發(fā)送,以確保SMS適配器105接收到該消息。
一旦SMS適配器105接收到消息,它可向SMS客戶機108發(fā)送指示它接收到消息的回復(fù)。如果在(較佳地由用戶指定)超時時間段內(nèi)未收到回復(fù),則SMS客戶機108可重新發(fā)送該消息。
SMS適配器105可向服務(wù)器引擎102發(fā)送消息,以將指定的消息轉(zhuǎn)發(fā)給電子郵件客戶機107。服務(wù)器引擎102可向消息存儲101查詢指定的消息。服務(wù)器引擎然后可制作所接收消息的副本,并可將消息的目的地改為端點電子郵件客戶機107。服務(wù)器引擎102現(xiàn)在可將新消息保存在消息存儲101中。消息然后在消息存儲101中等待電子郵件客戶機107請求或訪問它們。
圖2是依照本發(fā)明確??蛻魴C和服務(wù)器之間的消息傳送的示例,圖3是確保消息傳送的示例性方法的對應(yīng)流程圖。
假定客戶機設(shè)備220期望向服務(wù)器230發(fā)送消息。該消息可以為各種目的而發(fā)送,例如,中繼發(fā)送者希望由另一用戶接收的信息,或請求由服務(wù)器排隊的消息被傳送。在發(fā)送消息之前,客戶機設(shè)備220生成或請求并接收唯一消息標(biāo)識符,如標(biāo)識號??梢詷?gòu)想唯一消息標(biāo)識是使用本領(lǐng)域中已知的用于將唯一標(biāo)識符與消息相關(guān)聯(lián)的任何方法、系統(tǒng)或技術(shù)生成的。
在201,客戶機設(shè)備220向服務(wù)器230發(fā)送消息以及唯一消息標(biāo)識。201相對于圖3中的步驟301被進一步示出。在步驟301,生成唯一消息標(biāo)識并將其與消息一起發(fā)送給服務(wù)器。另外,啟動一定時器,以對自從消息被發(fā)送以來所經(jīng)過的時間進行計數(shù)??梢岳斫猓墒褂帽绢I(lǐng)域中已知的用于保持時間的任何方法、系統(tǒng)或技術(shù)。
如202所示,由于各種原因,發(fā)送給服務(wù)器230的消息未被接收到,其某些原因已相對于圖1描述。在預(yù)定和/或可由用戶編程的某一指定的超時時間(“t”)之后,客戶機設(shè)備220確定它尚未從服務(wù)器230接收到對消息的響應(yīng)。在203,客戶機設(shè)備220重新發(fā)送消息以及唯一消息標(biāo)識。在204,服務(wù)器230接收消息,并且現(xiàn)在能夠執(zhí)行包含在消息中的指令。
203和204相對于步驟302-304進一步示出。在步驟302,可通過核查諸如“message_received”等變量來確定是否接收到對消息的匹配響應(yīng),該變量較佳地為一標(biāo)志變量,它被設(shè)置以指示是否接收到匹配的消息。可以理解,可使用本領(lǐng)域中已知的用于確定消息是否到達的任何方法、技術(shù)或系統(tǒng)。如果消息被接收,則處理繼續(xù)到步驟399,例程退出。如果消息未被接收,則處理在步驟303繼續(xù)。
在步驟303,確定自從發(fā)送原始消息以來是否經(jīng)過了最大時間t,這表明消息應(yīng)當(dāng)被再次發(fā)送。將定時器的當(dāng)前值與t進行比較。如果定時器的值小于t,則過程返回到步驟302;否則,過程繼續(xù)到步驟304。
在步驟304,確定已經(jīng)過了最大時間t,并且客戶機重新發(fā)送原始消息和唯一消息標(biāo)識。定時器也被理想地復(fù)位,使得稍后可確定消息是否應(yīng)當(dāng)被再次重新發(fā)送。
返回到圖2,如205處所示,服務(wù)器230向客戶機設(shè)備220發(fā)送它已接收到消息的響應(yīng)。在響應(yīng)中,服務(wù)器230可包括與對它所響應(yīng)的消息一起發(fā)送的唯一消息標(biāo)識。
在206,發(fā)送到客戶機設(shè)備230的響應(yīng)由于各種原因而未被接收,其某些原因已在上文描述。然后,在207,經(jīng)過了時間t,并且客戶機設(shè)備220確定它未接收到對原始消息的響應(yīng)??蛻魴C設(shè)備220可能不知道消息實際上已被接收。由此,客戶機設(shè)備220重新發(fā)送消息以及唯一消息標(biāo)識。206和207在圖3中相對于上述步驟302-304進一步示出。
在208,服務(wù)器230可接收到在207作為重復(fù)發(fā)送的消息。服務(wù)器230認(rèn)識到它先前已從客戶機設(shè)備220接收了具有同一唯一消息標(biāo)識的消息,并因此已執(zhí)行了包含在消息中的指令。因此,服務(wù)器230可假定在它205發(fā)送的消息未被接收。在209,服務(wù)器230可重新發(fā)送對它最初在205發(fā)送的消息的響應(yīng)。
在210,客戶機設(shè)備220可從服務(wù)器230接收響應(yīng)??蛻魴C設(shè)備220確定該響應(yīng)包含與發(fā)送給服務(wù)器230的消息相同的唯一消息標(biāo)識。客戶機設(shè)備220現(xiàn)在可得出結(jié)論,消息由服務(wù)器230接收并操作。
210在步驟302和399進一步示出。在步驟302,通過核查變量message_received來確定是否接收到對消息的匹配響應(yīng)。設(shè)置標(biāo)志變量message_received以指示是否接收了匹配的消息??梢岳斫猓梢允褂帽绢I(lǐng)域中用于確定消息是否已到達的任何方法、技術(shù)或系統(tǒng)。如果消息被接收,則過程可前進到步驟399。如果消息未被接收,則過程可前進到步驟303。在步驟399,已經(jīng)確定接收到響應(yīng),過程然后退出。
示例性計算環(huán)境圖4示出了適合在其中實現(xiàn)本發(fā)明的計算系統(tǒng)環(huán)境400的一個示例。計算系統(tǒng)環(huán)境400僅為合適的計算環(huán)境的一個示例,并非意在暗示對本發(fā)明的使用范圍或功能的局限。也不應(yīng)將計算環(huán)境400解釋為對示例性操作環(huán)境400中示出的任一組件或其組合具有任何依賴或需求。
本發(fā)明可以使用眾多其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置來操作。適合使用本發(fā)明的眾所周知的計算系統(tǒng)環(huán)境和/或配置包括但不限于個人計算機、服務(wù)器計算機、手持式或膝上設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機頂盒、可編程消費者電子設(shè)備、網(wǎng)絡(luò)PC、小型機、大型機、包括任一上述系統(tǒng)或設(shè)備的分布式計算環(huán)境等等。
參考圖4,用于實現(xiàn)本發(fā)明的示例系統(tǒng)包括計算機410形式的通用計算裝置。計算機410的組件可包括但不限于,處理單元420、系統(tǒng)存儲器430以及將包括系統(tǒng)存儲器的各類系統(tǒng)組件耦合至處理單元420的系統(tǒng)總線421。系統(tǒng)總線421可以是若干種總線結(jié)構(gòu)類型的任一種,包括存儲器總線或存儲器控制器、外圍總線以及使用各類總線體系結(jié)構(gòu)的局部總線。
計算機110通常包括各種計算機可讀介質(zhì),并包括易失性和非易失性介質(zhì)、可移動和不可移動介質(zhì)。
系統(tǒng)存儲器430包括以易失性和/或非易失性存儲器形式的計算機存儲介質(zhì),如只讀存儲器(ROM)431和隨機存取存儲器(RAM)432。基本輸入/輸出系統(tǒng)433(BIOS)包括如在啟動時幫助在計算機410內(nèi)的元件之間傳輸信息的基本例程,通常儲存在ROM 431中。作為示例而非局限,圖4示出了操作系統(tǒng)434、應(yīng)用程序435、其它程序模塊436和程序數(shù)據(jù)437。
計算機410也可包括其它可移動/不可移動、易失性/非易失性計算機存儲介質(zhì)。僅作示例,圖4示出了對不可移動、非易失性磁介質(zhì)進行讀寫的硬盤驅(qū)動器441、對可移動、非易失性磁盤452進行讀寫的磁盤驅(qū)動器451以及對可移動、非易失性光盤456進行讀寫的光盤驅(qū)動器455。硬盤驅(qū)動器441通常通過不可移動存儲器接口,如接口440連接到系統(tǒng)總線421,磁盤驅(qū)動器451和光盤驅(qū)動器455通常通過可移動存儲器接口,如接口450連接到系統(tǒng)總線421。
上文討論并在圖4示出的驅(qū)動器及其關(guān)聯(lián)的計算機存儲介質(zhì)為計算機410提供了計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。例如,在圖4中,示出硬盤驅(qū)動器441儲存操作系統(tǒng)444、應(yīng)用程序445、其它程序模塊446和程序數(shù)據(jù)447。注意,這些組件可以與操作系統(tǒng)434、應(yīng)用程序435、其它程序模塊436和程序數(shù)據(jù)437相同,也可以與它們不同。用戶可以通過輸入設(shè)備,如鍵盤462和定位設(shè)備461(通常指鼠標(biāo)、跟蹤球或觸摸板)向計算機410輸入命令和信息。這些和其它輸入設(shè)備通常通過耦合至系統(tǒng)總線的用戶輸入接口460連接至處理單元420,但是也可以通過其它接口和總線結(jié)構(gòu)連接。監(jiān)視器491或其它類型的顯示設(shè)備也通過接口,如視頻接口490連接至系統(tǒng)總線421。除監(jiān)視器之外,計算機也可包括其它外圍輸出設(shè)備,如揚聲器497和打印機496,它們通過輸出外圍接口495連接。
計算機410可以在使用到一個或多個遠程計算機,如遠程計算機480的邏輯連接的網(wǎng)絡(luò)化環(huán)境中操作。遠程計算機480可以是個人計算機、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它公用網(wǎng)絡(luò)節(jié)點,并通常包括許多或所有相對于計算機410所描述的元件,盡管在圖4中僅示出了存儲器存儲設(shè)備481。圖4描述的邏輯連接包括局域網(wǎng)(LAN)471和廣域網(wǎng)(WAN)473,但也可包括其它網(wǎng)絡(luò)。
當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中使用時,計算機410通過網(wǎng)絡(luò)接口或適配器470連接至LAN 471。當(dāng)在WAN網(wǎng)絡(luò)環(huán)境中使用時,計算機410可包括調(diào)制解調(diào)器472或用于通過WAN 473,如因特網(wǎng)建立通信的其它裝置。調(diào)制解調(diào)器472可以是內(nèi)置或外置的,通過用戶輸入接口460或其它適當(dāng)?shù)臋C制連接至系統(tǒng)總線421。在網(wǎng)絡(luò)化環(huán)境中,相對于計算機410所描述的程序模塊或其部分可儲存在遠程存儲器存儲設(shè)備中。作為示例而非局限,圖4示出遠程應(yīng)用程序485駐留在存儲器設(shè)備481中。可以理解,示出的網(wǎng)絡(luò)連接是示例性的,也可以使用在計算機之間建立通信鏈路的其它裝置。
如上所述,盡管結(jié)合各種計算設(shè)備描述了本發(fā)明的示例性實施例,然而基本概念可應(yīng)用于任何計算設(shè)備或系統(tǒng)。此處所描述的各種技術(shù)可結(jié)合硬件或軟件來實現(xiàn),或在適當(dāng)時以兩者的組合來實現(xiàn)。由此,本發(fā)明的系統(tǒng)和方法或其某些方面或部分,可采用包含在諸如軟盤、CD-ROM、硬盤驅(qū)動器或任何其它機器可讀存儲介質(zhì)等有形介質(zhì)中的程序代碼(即,指令)的形式,其中,當(dāng)程序代碼被加載到諸如計算機等機器中并由其執(zhí)行時,該機器變?yōu)橛糜趯嵤┍景l(fā)明的裝置。在可編程計算機上的程序代碼執(zhí)行的情況下,計算裝置一般包括處理器、處理器可讀的存儲介質(zhì)(包括易失性和非易失性存儲器和/或存儲元件)、至少一個輸入設(shè)備以及至少一個輸出設(shè)備。如有需要,程序可以用匯編語言或機器語言來實現(xiàn)。在任何情況下,語言可以是已編譯或已解釋語言,并與硬件實現(xiàn)相組合。
本發(fā)明的方法和裝置也可通過以程序代碼的形式實施的通信來實現(xiàn),該程序代碼通過某一傳輸介質(zhì)來發(fā)送,如通過電線或電纜、通過光纖或通過任一其它形式的傳輸,其中,當(dāng)程序代碼由諸如EPROM、門陣列、可編程邏輯器件(PLD)、客戶機計算機等的機器接收被裝載到其中由其執(zhí)行時,該機器變?yōu)橛糜趯嵤┍景l(fā)明的裝置。當(dāng)在通用處理器上實現(xiàn)時,程序代碼與處理器相結(jié)合,以提供用于調(diào)用本發(fā)明的功能的唯一裝置。另外,結(jié)合本發(fā)明所使用的任何存儲技術(shù)可以不變地成為硬件和軟件的組合。
盡管結(jié)合各附圖的較佳實施例描述了本發(fā)明,然而可以理解,可以在不脫離本發(fā)明的情況下使用其它類似的實施例或?qū)λ枋龅膶嵤├鞒鲂薷暮吞砑?,以?zhí)行本發(fā)明的相同功能。因此,本發(fā)明不應(yīng)限于任何單個實施例,而是相反,應(yīng)當(dāng)依照所附權(quán)利要求書的寬度和范圍來解釋。
權(quán)利要求
1.一種用于傳輸不可知拉模式消息通信的系統(tǒng),包括第一客戶機,用于使用第一通信協(xié)議向第一適配器發(fā)送第一消息、使用所述第一通信協(xié)議從所述第一適配器接收指示所述第一消息被接收的響應(yīng)、以及如果在預(yù)定時間段內(nèi)未從所述適配器接收到響應(yīng),則使用所述第一通信協(xié)議向所述第一適配器重新發(fā)送所述第一消息;第一適配器,用于使用所述第一通信協(xié)議接收第一消息并向所述第一客戶機發(fā)送指示所述第一消息被接收的響應(yīng)、基于所述第一消息生成第二消息、以及使用第二通信協(xié)議將所述第二消息發(fā)送到服務(wù)器引擎;服務(wù)器引擎,用于基于所述第二消息執(zhí)行至少一個指令;以及消息存儲,用于儲存與所述第二消息相關(guān)聯(lián)的數(shù)據(jù)。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括第二客戶機,用于使用第三通信協(xié)議從第二適配器接收第三消息;以及第二適配器,用于使用所述協(xié)議從所述服務(wù)器引擎接收第四消息、基于所述第四消息生成第三消息、以及使用第三通信協(xié)議將所述第三消息發(fā)送到第二客戶機。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述至少一個指令包括在存儲設(shè)備中儲存與所述第二消息相關(guān)聯(lián)的數(shù)據(jù)的指令。
4.如權(quán)利要求3所述的系統(tǒng),其特征在于,所述服務(wù)器引擎和所述適配器之一確定所述第二消息是否為已儲存的重復(fù)消息,如果是,則拒絕所述第二消息;否則,確定與所述消息相關(guān)聯(lián)的端點,并將所述消息儲存在對應(yīng)于所述端點的隊列中。
5.如權(quán)利要求3所述的系統(tǒng),其特征在于,所述存儲設(shè)備包括與端點相關(guān)聯(lián)的隊列。
6.如權(quán)利要求5所述的系統(tǒng),其特征在于,所述端點與所述第一客戶機相關(guān)聯(lián)。
7.如權(quán)利要求5所述的系統(tǒng),其特征在于,所述端點與用戶、客戶機、以及不同于所述客戶機的應(yīng)用程序中的至少一個相關(guān)聯(lián)。
8.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述至少一個指令包括從存儲設(shè)備中檢索附加消息,以及將所述附加消息發(fā)送到端點的指令。
9.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述端點與所述第一客戶機相關(guān)聯(lián)。
10.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述端點與用戶、客戶機以及不同于所述客戶機的應(yīng)用程序中的至少一個相關(guān)聯(lián)。
11.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述第一客戶機在發(fā)送所述第一消息之前生成所述第一消息,所述第一消息包括唯一消息標(biāo)識符。
12.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述第一適配器或所述服務(wù)器引擎確定所接收的第一消息是否為已接收的消息的重復(fù)。
13.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述第一客戶機設(shè)備生成對應(yīng)于所述第一消息的第一客戶機設(shè)備專用唯一標(biāo)識符、儲存所述第一客戶機專用標(biāo)識符、以及將所述客戶機專用標(biāo)識符連同所述第一消息一起發(fā)送給所述第一適配器。
14.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述響應(yīng)包括第一客戶機專用唯一消息標(biāo)識符,并且所述第一客戶機驗證所接收到的第一客戶機專用唯一標(biāo)識符對應(yīng)于儲存的第一客戶機專用標(biāo)識符。
15.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述第一通信協(xié)議不同于所述第二通信協(xié)議。
16.如權(quán)利要求2所述的系統(tǒng),其特征在于,所述第二通信協(xié)議不同于所述第三通信協(xié)議。
17.如權(quán)利要求2所述的系統(tǒng),其特征在于,所述第三通信協(xié)議不同于所述第一通信協(xié)議。
18.一種用于傳輸不可知拉模式消息通信的方法,包括使用第一通信協(xié)議將第一消息從客戶機發(fā)送到對應(yīng)的適配器;在所述適配器處接收所述第一消息;使用所述第一通信協(xié)議將指示所述第一消息已被接收的響應(yīng)從所述適配器發(fā)送到所述客戶機;在所述客戶機處接收所述響應(yīng);如果在預(yù)定時間段內(nèi)未在所述客戶機處接收到來自所述適配器的響應(yīng),則將所述第一消息從所述客戶機重新發(fā)送到所述適配器;基于所述第一消息在所述適配器處生成第二消息;使用第二通信協(xié)議將所述第二消息從所述適配器發(fā)送到所述服務(wù)器引擎;以及基于所述第二消息在所述服務(wù)器引擎處執(zhí)行至少一個指令。
19.如權(quán)利要求18所述的方法,其特征在于,所述第一通信協(xié)議不同于所述第二通信協(xié)議。
20.如權(quán)利要求18所述的方法,其特征在于,執(zhí)行所述至少一個指令包括在存儲設(shè)備中儲存與所述第二消息相關(guān)聯(lián)的數(shù)據(jù)。
21.如權(quán)利要求20所述的方法,其特征在于,在所述存儲設(shè)備中儲存所述數(shù)據(jù)包括確定所述第二消息是否為已儲存的重復(fù)消息;如果重復(fù),拒絕所述第二消息;確定與所述消息相關(guān)聯(lián)的端點;以及在對應(yīng)于所述端點的隊列中儲存所述消息。
22.如權(quán)利要求20所述的方法,其特征在于,所述存儲設(shè)備包括與端點相關(guān)聯(lián)的隊列。
23.如權(quán)利要求22所述的方法,其特征在于,所述端點與所述客戶機相關(guān)聯(lián)。
24.如權(quán)利要求22所述的方法,其特征在于,所述端點與用戶、客戶機以及不同于所述客戶機的應(yīng)用程序中的至少一個相關(guān)聯(lián)。
25.如權(quán)利要求18所述的方法,其特征在于,執(zhí)行所述至少一個指令包括從存儲設(shè)備檢索附加消息,以及將所述附加消息發(fā)送到端點。
26.如權(quán)利要求25所述的方法,其特征在于,所述端點與所述客戶機相關(guān)聯(lián)。
27.如權(quán)利要求25所述的方法,其特征在于,所述端點與用戶、客戶機以及不同于所述客戶機的應(yīng)用程序中的至少一個相關(guān)聯(lián)。
28.如權(quán)利要求18所述的方法,其特征在于,還包括在發(fā)送所述第一消息之前生成所述第一消息,所述第一消息包括唯一消息標(biāo)識符。
29.如權(quán)利要求18所述的方法,其特征在于,還包括在所述適配器或所述服務(wù)器引擎處確定所接收到的第一消息是否為已接收的消息的重復(fù)。
30.如權(quán)利要求18所述的方法,其特征在于,將所述第一消息從所述客戶機發(fā)送到所述適配器包括生成對應(yīng)于所述第一消息的客戶機專用唯一標(biāo)識符;儲存所述客戶機專用標(biāo)識符;以及將所述客戶機專用標(biāo)識符連同所述第一消息一起發(fā)送給所述適配器。
31.如權(quán)利要求18所述的方法,其特征在于,所述響應(yīng)包括客戶機專用唯一消息標(biāo)識符,并且所述方法還包括驗證所接收到的客戶機專用標(biāo)識符對應(yīng)于儲存的客戶機專用標(biāo)識符。
全文摘要
傳輸不可知拉模式消息通信服務(wù)使不同類型的客戶機(106、107、108)能夠彼此發(fā)送和接收消息,同時保證消息的傳送??蛻魴C專用適配器(103、104、105)連接到服務(wù)器,并拉出隊列中等待它們的消息??蛻魴C可將其自身指定為拉出的消息的接收者,或?qū)⒘硪豢蛻魴C指定為接收者。這允許不同類型客戶機(106、107、108)的用戶能夠通信,并向用戶提供了關(guān)于如何、何時以及何處查看其消息的更大的靈活性。
文檔編號H04L29/08GK101044469SQ200480001710
公開日2007年9月26日 申請日期2004年7月29日 優(yōu)先權(quán)日2003年12月31日
發(fā)明者D·N·拉薩利, K·B·史密斯, J-E·艾連恩, A·J·薩佳 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
金山区| 焉耆| 新兴县| 长治市| 临朐县| 兴仁县| 霍山县| 台前县| 和顺县| 安达市| 安顺市| 静宁县| 中山市| 且末县| 大渡口区| 巫溪县| 台中县| 繁昌县| 通许县| 德惠市| 阿城市| 阿拉善右旗| 泗阳县| 五家渠市| 沁水县| 青海省| 沂南县| 三河市| 棋牌| 临武县| 盈江县| 苏尼特左旗| 郎溪县| 嘉黎县| 沾益县| 阳朔县| 德昌县| 六安市| 蓝田县| 礼泉县| 加查县|