TWI493356B - 非同步通信的方法、非同步地與網路瀏覽器通信的方法,及用於與網路通信的系統 - Google Patents
非同步通信的方法、非同步地與網路瀏覽器通信的方法,及用於與網路通信的系統 Download PDFInfo
- Publication number
- TWI493356B TWI493356B TW098129437A TW98129437A TWI493356B TW I493356 B TWI493356 B TW I493356B TW 098129437 A TW098129437 A TW 098129437A TW 98129437 A TW98129437 A TW 98129437A TW I493356 B TWI493356 B TW I493356B
- Authority
- TW
- Taiwan
- Prior art keywords
- message
- local
- network
- web browser
- web
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
Description
本發明係與用於網路應用之非同步佇列傳訊有關。
一般而言,軟體應用程式為執行各種任務及功能例如文字處理、播放數位媒體、視訊遊戲、會計等等的程式。
雖然軟體應用典型地位於本地端運算裝置上(例如個人電腦、個人數位助理、行動電話等等),但目前逐漸有一趨勢將軟體應用程式移出本地端裝置並放入一網路環境中。如此做的原因有許多,其中包括網路式軟體應用程式一般可存取更多種類及數量的內容,且網路式軟體應用程式一般為更互動性的。
然而,將軟體應用程式移至網路亦有實際上的問題。首先,網路式軟體應用程式一般使用一網際網路連線以與一本地端裝置操作或通信。舉例來說,希望傳送電子郵件至一朋友或家人的一使用者典型地建立一網際網路連線、存取至一網路應用程式(例如HotmailTM、GmailTM等等)並傳送該訊息。若於撰寫或傳送該訊息時失去該網際網路連線,則該訊息典型地也會遺失。
再者,一旦一網際網路連線被建立,該連線可能是不足的(例如緩慢的連線)或者不理想的(例如連線隨時間降級或改變)。舉例來說,在一典型商業旅行中,一業務人員於其辦公室可能具有寬頻網際網路、當出差與一
客戶會面時可能具有一蜂巢式網際網路連線、在一餐廳或旅館時可能具有一Wi-Fi連線。這些網際網路連線分別提供不同程度的功能及頻寬。
最後,為了提供如目前本地端軟體應用程式的相同方便性及功能,目前的網路程式化模型一般利用複雜的編碼層。
提出此發明內容以藉由一簡化形式介紹一概念選擇,其將於以下實施方式中加以描述。此發明內容並無意識別該申請標的之關鍵或本質特徵,且無意限制申請標的之範圍。
各種實施例允許網路瀏覽器及/或本地端應用程式依據一本地端裝置之目前狀態以及一使用者之通信偏好而非同步地與網路式服務及應用程式通信。
概觀
各種實施例允許網路瀏覽器及本地端應用程式依據一本地端裝置之目前狀態以及一使用者之通信偏好而非同步地與網路式服務及應用程式非同步地通信。
在至少某些實施例中,位於一本地端裝置上的一同步引擎從一網路式服務或應用程式接收一訊息於一『網路
收件匣』中。在至少某些實施中,該同步引擎對一本地端網路應用程式通知該訊息、傳送該訊息至該網路應用程式、及/或若該網路應用程式未處於通信期(in session)時則將其載入。該網路應用程式對該訊息之回應可被傳送至一『網路寄件匣』,其存在直到被傳送至該網路服務或應用程式為止。該同步引擎隨後藉由詢問該本地端裝置之目前狀態以及一使用者之通信偏好而判定一希望時間以傳輸一回應至該網路服務。該同步引擎隨後可判定一時間以與該網路服務通信並傳輸該回應。
替代地或額外地,該同步引擎可從一網路應用程式接收位於一『本地端寄件匣』而用於一本地端應用程式的一訊息。在至少某些實施中,該同步引擎對該本地端應用程式通知該訊息、傳送該訊息至該本地端應用程式、及/或若該本地端應用程式目前未處於通信期時則將其載入。該本地端應用程式可藉由請求源自該網路應用程式之資訊或者藉由建立其他類似請求而回應該訊息。該回應被傳輸至一『本地端收件匣』,其可位於其中直到被傳送至一網路式服務或應用程式為止。該同步引擎隨後可藉由詢問該本地端裝置之作業系統的目前狀態以及一使用者之通信偏好而判定傳輸該回應至該網路服務或應用程式的一時間。該同步引擎隨後可判定與該網路服務通信並傳輸該回應的一希望時間。
在以下討論中,被稱為『作業環境』的一部分描述可實施該各種實施例的一運算環境。再者,被稱為『非同
步網路通信』的一部分描述一實施例,其中一同步引擎非同步地與各種網路式服務及應用程式通信。隨後,被稱為『非同步本地端通信』的一部分描述一運算環境,其中一同步引擎非同步地與各種網路及本地端應用程式通信。最後,被稱為『示範系統』的一部分描述一示範系統,其可被用於實施一或多種實施例。
作業環境
第1圖說明依據一或多種實施例的一作業環境100。環境100包括一運算裝置102,其具有一或多個處理器104、一或多個電腦可讀取媒體106、位於該電腦可讀取媒體106上且可被該處理器104執行的一或多個應用程式108、以及用於非同步地與各種網路式服務及應用程式通信的一同步引擎110。
運算裝置102可被實施為任何適用運算裝置,不受限地舉例來說,例如一桌上型電腦、一攜帶型電腦、一個人數位助理(PDA)、一行動電話等等。
電腦可讀取媒體106可包括,不受限地舉例來說,典型地與一運算裝置相關之所有形式的揮發性及非揮發性記憶體及/或儲存媒體。此媒體可包括唯讀記憶體(ROM)、隨機存取記憶體(RAM)、快閃記憶體、硬碟、可移除式媒體等等。一運算裝置之一特定範例被顯示及描述於第6圖中。
該軟體應用程式108可包括任何適用類型的應用程
式,不受限地舉例來說,例如閱讀器應用程式、電子郵件應用程式、即時傳訊應用程式、網路瀏覽應用程式以及各種其他應用程式。
在一或多個實施例中,該同步引擎110為一軟體應用程式,其允許該運算裝置102在一網路112如該網際網路上非同步地與各種網路服務及應用程式通信。該網路112可為任何類型的運算網路,其包括一區域網路(LAN),其典型地連接一商業或住宅、或者一廣域網路(WAN)如該網際網路。
該作業環境100亦包括相配的網路伺服器114,其表示提供各種網路服務例如新聞及目前事件、電子郵件服務、線上銀行、社交網路等等的網站。在一進一步實施例中,該網站提供網路式應用程式例如閱讀器應用程式、電子郵件應用程式、即時傳訊應用程式等等,其執行各種任務或功能。
考慮一示範作業環境100之後,本討論現在移至一實施例,其中該同步引擎110可被用於非同步地與各種網路服務及應用程式通信。
非同步網路通信
在一或多個實施例中,一同步引擎允許一本地端運算裝置非同步地與各種網路伺服器及位於一本地端裝置如運算裝置102上的本地端應用程式通信。該同步引擎評估該目前網路環境、該本地端裝置的狀態、以及一使用
者的通信偏好以判定該本地端運算裝置與該網路伺服器及本地端應用程式的一希望時間。
第2圖說明一本地端運算裝置,其具有一同步引擎110、相配的軟體應用程式108、一網路應用程式204以及一作業系統206。
一般而言,該網路應用程式204允許一使用者瀏覽該電腦網路112以及與各種網路伺服器114通信。該網路伺服器114依次提供該使用者各種網路服務(例如新聞及目前事件、電子郵件服務、線上銀行、社交網路等等)以及軟體應用程式(例如閱讀器應用程式、媒體播放器應用程式、即時傳訊應用程式等等)。
一般而言,該作業系統206管理該運算裝置之硬體及軟體資源,並提供一軟體平台供各種本地端應用程式108於其上作業。該作業系統206管理該本地端裝置硬體及軟體資源以確保每個應用程式可存取執行其被指派任務所需的資源。
最後,該同步引擎110為位於電腦記憶體中的一軟體應用程式並允許與各種網路伺服器114及本地端應用程式108以及在其間非同步地通信。特言之,在該說明之範例中,該同步引擎110包括網路收件匣212以及寄件匣214以供與該各種網路伺服器114、本地端收件匣218及寄件匣220以供與該各種本地端應用程式108通信、以及一同步排程器216以供判定與該網路伺服器114及本地端應用程式108通信的一希望時間。
在一或多個實施例中,該網路收件匣212作為傳送至該運算裝置102或被其接收之資料及訊息的一儲存,而該網路寄件匣214作為該運算裝置所傳送或傳輸之訊息的一儲存。一般而言,該網路收件匣212及寄件匣214允許該本地端裝置依據一本地端裝置之目前狀態及/或一使用者之通信偏好而非同步地與該各種網路伺服器114通信。
本地端收件匣218及寄件匣220作為在該網路應用程式204及/或該各種本地端應用程式之間被傳輸之訊息的儲存。一般而言,這些信件匣可於一本地端應用程式108希望與一網路伺服器114通信但該網路應用程式204未處於通信期時加以使用,或者於該網路應用程式204正與該網路伺服器114通信但該本地端應用程式108未處於通信期時加以使用。一般而言,訊息於被傳送至該本地端應用程式108時到達該本地端寄件匣220,而於被傳送至該網路應用程式204時到達該本地端收件匣218。
一般而言,該網路收件匣212、網路寄件匣214、本地端收件匣218及本地端寄件匣220位於非揮發性記憶體中,例如快閃記憶體、硬碟、光碟等等。
第3圖為一流程圖,其描述依據一或多個實施例之一方法中的步驟。該方法可結合任何硬體、軟體、韌體或其結合加以執行。在至少某些實施例中,該方法可由一軟體應用程式例如第2圖中描述之同步引擎110加以執行。
於步驟302,位於一網路伺服器上的一網路服務或一應用程式傳送一訊息至一本地端運算裝置。此步驟可由一網路應用程式導覽一網頁、該使用者請求一網路服務或軟體下載、或者透過一網路伺服器起始一通信的任何其他方法所起始。該訊息可為任何類型之訊息且可包括,不受限地舉例來說,關於一網頁的HTML編碼、一軟體下載、或者任何其他使用之訊息形式。
於步驟304,該本地端裝置從該網路伺服器接收該訊息。該訊息可被接收於一網路收件匣如網路收件匣212,或者從一獨立接收位置被傳輸至該網路收件匣。該訊息被儲存於該網路收件匣中直到該本地端裝置執行之一網路應用程式擷取該訊息或者該訊息被傳送至該網路應用程式為止。
於步驟306,一同步引擎例如同步引擎110藉由詢問該本地端裝置之作業系統206而判定該網路應用程式是否處於通信期。此可藉由例如建立一應用程式介面(API)呼叫至該作業系統中而完成。若該網路應用程式未處於通信期,則該訊息於步驟308可保留於該網路收件匣中,直到該網路應用程式被載入且該訊息被存取為止。在一進一步實施例中,該同步引擎可指示該作業系統載入該網路應用程式,因而其可存取該訊息。
於步驟310,該網路應用程式從該網路伺服器接收該訊息。該訊息可包括與一網頁相關的HTML編碼、一軟體下載、或者任何其他資料形式。替代地,該同步引擎
可傳輸該訊息至該網路應用程式或者對該網路應用程式通知該訊息。
於步驟312,該網路應用程式藉由傳送一『回應』至該網路寄件匣而回應該訊息。該回應可為對於網頁資料之一請求、執行一軟體下載之一請求、或者傳送/接收其他資料類型的一請求。
於步驟314,該同步排程器判斷傳輸該回應至該網路伺服器114的一希望時間。一般而言,該同步排程器依據其從該作業系統獲取之資訊而判斷傳輸該回應至該網路伺服器的一時間。該同步排程器216(第2圖)於判斷何時與該網路伺服器114通信時可考慮數種因素或參數。不受限地舉例來說,這些因素可包括網路連線之一類型、一目前處理器使用量、一使用者或應用程式指派或建立之該訊息的優先度或緊急度、以及其他因素或參數。
首先,該同步排程器可詢問該作業系統以判定一網路連線是否已被建立或正被建立。若一網路連線未被建立,該訊息可保留於該網路寄件匣中直到一連線被建立為止。在一替代實施例中,該同步排程器可引導該作業系統以建立一網路連線以傳輸該訊息。
若一網路連線已被建立,該同步排程器可詢問該作業系統以取得關於該網路連線之數種因素或參數。這些可包括例如網路連線之類型(例如數位用戶迴路(DSL)、WiFi、行動寬頻網路、撥接網路等等)、傳輸速率(例如
每秒之位元數)、網路連線之穩定度(例如在過去一小時中網路丟失的數量)等等。該同步排程器由此資訊可判定該目前網路連線是否可有效地及穩定得傳輸該回應。
該同步排程器隨後可詢問該作業系統以判定各種處理器參數,例如目前執行中的應用程式數量、該處理器的目前工作負載等等。該同步排程器由此資訊可判定該處理器是否可於執行其目前任務之同時傳輸該回應。
該同步排程器隨後可詢問該作業系統以判定該訊息或回應的一優先度。在一範例中,一訊息之優先權係由一使用者所制定或輸入之一或多個『使用者通信偏好』所建立。一使用者之通信偏好可包括一訊息之重要性、一訊息之緊急度、一訊息之大小、一訊息之內容、該訊息之一收件人等等。在一替代實施例中,一訊息之優先度係由即時直接詢問該使用者所建立。
最後,該同步排程器編繹該各種參數並判定是否傳輸該訊息/回應或等待一較佳或更有機會的時間。
一旦該同步排程器已判定傳輸該訊息/回應的一希望時間,該同步引擎於步驟316可等待一較佳時間而該訊息保持於該網路寄件匣中、或者於步驟318可傳輸該訊息/回應至該網路伺服器。
於步驟320,該網路伺服器接收該訊息/回應及執行該請求之功能(例如回應該請求之HTML編碼、提供該請求之軟體下載、儲存該送出之資料等等)。
已描述一同步引擎允許一本地端運算裝置非同步地與
各種網路伺服器通信的示範實施例後,現在考慮一實施例,其中一本地端應用程式例如應用程式108(第2圖)非同步地與一本地端網路應用程式通信。特言之,在以下描述之實施例中,該同步引擎判定該網路應用程式或者本地端應用程式在服務中並建立一希望時間以非同步地與各種網路伺服器通信。
非同步的本地端通信
第4圖為一流程圖,其描述依據一或多個實施例與一本地端軟體應用程式非同步地通信的一方法的步驟。在至少某些實施例中,該方法可使用一同步引擎例如第2圖中描述之同步引擎110加以執行。
於步驟402,一網路應用程式如網路應用程式204(第2圖)傳送一訊息至位於一本地端運算裝置上的一或多個本地端應用程式。舉例來說,該訊息可包括一新的裝置驅動程式或其連結、一軟體更新或者其他有興趣之資料。
於步驟404,該訊息被接收於該本地端收件匣中,例如第2圖之本地端寄件匣220,或者從一獨立接收位置傳輸至該本地端寄件匣。該訊息被保留於該本地端寄件匣中,直到該本地端應用程式接收該訊息或被傳送該訊息為止。
於步驟406,該同步引擎藉由詢問該作業系統而判定該希望的本地端應用程式是否處於通信期。若該本地端
應用程式未處於通信期,則該訊息於步驟408可保留於該本地端寄件匣中,直到該本地端應用程式被載入且該訊息被存取為止。在一進一步實施例中,該同步引擎可指示該作業系統載入該本地端應用程式因而其可存取該訊息。
於步驟410,該本地端應用程式從該本地端寄件匣接收該訊息。替代地,該同步引擎可傳輸該訊息至該本地端應用程式或向該本地端應用程式通知該訊息。
於步驟412,該本地端應用程式可藉由傳送一回應至該本地端收件匣例如第2圖之本地端收件匣218而回應該訊息。該回應可為下載網頁資料、下載軟體、更新該網路應用程式中的資料、接收數位內容等等的請求。
於步驟414,該同步引擎藉由詢問該作業系統而判定該網路應用程式是否未處於通信期。若該網路應用程式未處於通信期,則該回應於步驟416可保留於該本地端收件匣中,直到該網路應用程式被載入且該訊息被存取為止。在一進一步實施例中,該同步引擎可指示該作業系統載入該網路應用程式因而其可存取該訊息。
於步驟418,該網路應用程式接收該回應指示其執行一任務或功能。舉例來說,該任務或功能可使該網路應用程式與各種網路伺服器通信以存取一網頁、下載一軟體更新、或下載數位內容。
於步驟420,該網路應用程式可判定其是否可建立與該各種網路伺服器的通信以執行該請求之任務。若該任
務可不存取該網路伺服器而加以執行,則該網路應用程式執行該任務而該處理完成(停止)。若該任務無法不需存取該網路伺服器而加以執行,則該網路應用程式建立一網路連線並與一或多個網路伺服器通信(步驟A)。
第5圖為一流程圖,其描述該網路應用程式如何非同步地與一或多個網路伺服器通信。
於步驟502,該本地端應用程式之回應被置於一網路寄件匣中,例如第2圖之網路寄件匣214,以準備被傳輸至該一或多個網路伺服器。於步驟504,該同步排程器依據其從該作業系統獲取之資訊例如網路連線之一類型、一目前處理器使用量、一使用者之通信偏好等等判定一希望時間以傳輸該回應。
一旦該同步排程器已判定何時傳輸該訊息/回應時,該同步引擎於步驟506傳輸該訊息/回應至該網路伺服器,或者於步驟508保留該回應於該網路寄件匣並等待一較佳時間。
於步驟510,該網路伺服器接收該訊息/回應並執行該請求之任務或功能(例如回應HTML編碼、提供一請求之軟體下載等等)。
前文已描述各種實施例,其中一同步引擎允許一本地端運算裝置非同步地與各種網路伺服器及本地端應用程式通信,現在考慮一示範運算裝置之一討論,該裝置可被用於實施前述之實施例。
示範系統
第6圖說明一示範運算裝置600,其可實施前述的各種實施例。運算裝置600可為例如第1圖之運算裝置102或者任何其他適用運算裝置如一網路伺服器等等。
運算裝置600包括一或多個處理器602、一或多個記憶體及/或儲存元件604、一或多個輸入/輸出(I/O)裝置606、以及允許該各種元件及裝置與彼此通信的一匯流排608。
匯流排608表示各種匯流排結構類型,其包括一記憶體匯流排或記憶體控制器、一周邊匯流排、一加速圖形埠或者使用各種匯流排結構的一本地端匯流排。
記憶體/儲存元件604表示一或多種電腦儲存裝置或儲存媒體。該記憶體元件604可包括揮發性媒體,例如隨機存取記憶體(RAM)、及/或非揮發性媒體,例如唯讀記憶體(ROM)、快閃記憶體、光學媒體、磁性媒體等等。該儲存元件604亦可包括固定式媒體(例如RAM、ROM、一固定式硬碟機等等)以及可移除媒體(例如一快閃記憶體、可移除硬碟機、一光碟等等)。
一或多個輸入/輸出裝置606允許一使用者輸入指令及資訊至該運算裝置600,並允許資訊被呈現給該使用者及/或其他元件或裝置。舉例來說,該輸入裝置可包括一鍵盤、一指向裝置(例如一滑鼠、觸控板、觸控筆等等)、一麥克風以及一掃瞄器等等。該輸出裝置可包括一顯示裝置(例如一螢幕或投影機)、喇叭、一印表機以及一網
路卡等等。
本文中可藉由軟體或程式模組之內容描述各種技術。一般而言,軟體包括執行任務或實施抽象資料類型的應用程式、常式、程式、物件、元件、資料結構等等。這些模組及技術的一實施可被儲存於電腦可讀取媒體之上或被傳輸於某種電腦可讀取媒體之形式間。電腦可讀取媒體可為任何可用媒體或者可被一運算裝置存取之媒體。不受限地舉例來說,電腦可讀取媒體可包含『電腦儲存媒體』。
結論
各種實施例允許網路瀏覽器及本地端應用程式依據一本地端裝置之目前狀態及一使用者之通信偏好而非同步地與網路式服務及/或應用程式通信。
非同步通信允許網路瀏覽器及本地端應用程式與網路式應用程式通信,不論一網際網路連線目前是否被建立或者當該網際網路連線為不足或不理想之時。
雖然已利用結構特徵及/或方法步驟之特定語言描述本發明主題,但將了解在附加之申請專利範圍中定義地本發明主題並不必然限於已描述之特定特徵或步驟。反之,該特定特徵及步驟僅被揭露作為實施該申請專利範圍主題的示範形式。
100‧‧‧作業環境
102‧‧‧運算裝置
104‧‧‧處理器
106‧‧‧電腦可讀取媒體
108‧‧‧應用程式
110‧‧‧同步引擎
112‧‧‧網路
114‧‧‧網路伺服器
204‧‧‧網路應用程式
206‧‧‧作業系統
212‧‧‧網路收件匣
214‧‧‧網路寄件匣
216‧‧‧同步排程器
218‧‧‧本地端收件匣
220‧‧‧本地端寄件匣
302,304,306,308,310,312,314,316,318,320,402,404,406,408,410,412,414,416,418,420,502,504,506,508,510‧‧‧步驟
600‧‧‧運算裝置
602‧‧‧處理器
604‧‧‧記憶體及/或儲存元件
606‧‧‧輸入/輸出(I/O)裝置
608‧‧‧匯流排
在各圖示中相同的編號係指類似特徵。
第1圖說明一作業環境,其中可依據一或多種實施例實施本發明原理;第2圖說明依據一或多種實施例之一本地端運算裝置伴隨一同步引擎、一網路以及各種網路路伺服器;第3圖為一流程圖,其描述依據一或多種實施例而與一網路伺服器非同步通信之一方法的步驟;第4及5圖為流程圖,其描述依據一或多種實施例而與一本地端軟體應用程式非同步通信之一方法的步驟;及第6圖為依據一或多種實施例之一系統的一方塊圖。
100‧‧‧作業環境
102‧‧‧運算裝置
104‧‧‧處理器
106‧‧‧電腦可讀取媒體
108‧‧‧應用程式
110‧‧‧同步引擎
112‧‧‧網路
114‧‧‧網路伺服器
Claims (7)
- 一種非同步通信的方法,該方法包含以下步驟:回應於在一本地端裝置上從一網路伺服器接收一訊息(304)之步驟,該訊息被導引至在該本地端裝置上的一網路瀏覽器,儲存該訊息於一第一訊息緩衝區、決定該網路瀏覽器是否處於通信期(in session)、若該網路瀏覽器並不處於通信期則載入該網路瀏覽器,及傳送該訊息至該網路瀏覽器;回應於從在該本地端裝置上的一網路瀏覽器接收對該訊息的一或多個回應(312)之步驟,儲存該等回應於一第二訊息緩衝區中、決定一網路連接是否被建立、若並無任何的網路連接被建立則建立一網路連接,及傳送該等回應至該網路伺服器。
- 如申請專利範圍第1項所述之方法,其中該等一或多個回應包含:一或多個資料請求及/或一或多個資料送出。
- 如申請專利範圍第1項所述之方法,更包含以下步驟:若該網路瀏覽器被決定為處於通信期,向該至少一網路瀏覽器通知有該等一或多個訊息。
- 一種非同步地與一網路瀏覽器通信的方法,該方法包 含以下步驟:回應於從位於一本地端裝置上的一網路瀏覽器接收一訊息,該訊息被導引至在該本地端裝置上的一本地端網路瀏覽器,儲存該訊息在一第一訊息緩衝區中、決定該本地端網路瀏覽器是否處於通信期、若該本地端網路瀏覽器並未處於通信期,則載入該本地端網路瀏覽器,及傳送該訊息至該本地端網路瀏覽器;回應於從在該本地端裝置上的一本地端網路瀏覽器接收對該等一或多個訊息的一或多個回應,儲存該等回應於一第二訊息緩衝區中、決定該本地端網路瀏覽器是否處於通信期、若該網路瀏覽器並未處於通信期則載入該網路瀏覽器,及傳送該等訊息至該網路瀏覽器。
- 如申請專利範圍第4項所述之方法,更包含以下步驟:若該本地端網路瀏覽器被決定為處於通信期,向該本地端網路瀏覽器通知有該等一或多個訊息。
- 一種用於與一網路通信的系統,該系統包含:一第一訊息緩衝區(212),該第一訊息緩衝區係經組態用於非同步地從一或多個網路服務接收一或多個訊息;一第二訊息緩衝區(214),該第二訊息緩衝區係經組態用於非同步地從一或多個網路瀏覽器(204)接收 對該等一或多個訊息的一或多個回應;及一同步引擎(216),該同步引擎係經組態用於回應於在一本地端裝置上從一或多個網路伺服器接收一或多個訊息之步驟(304),該等訊息被導引至在該本地端裝置上的一網路瀏覽器,儲存該等訊息於一第一訊息緩衝區、決定該網路瀏覽器是否處於通信期、若該網路瀏覽器並未處於通信期則載入該網路瀏覽器,及傳送該等訊息至該網路瀏覽器;該同步引擎係進一步經組態用於回應於從在該本地端裝置上的一或多個網路瀏覽器接收對該等一或多個訊息的一或多個回應(312),儲存該等回應於一第二訊息緩衝區中、決定一網路連接是否被建立、若並無任何的網路連接被建立則建立一網路連接,及傳送該等回應至該網路伺服器。
- 如申請專利範圍第6項所述之系統,其中該等一或多個網路瀏覽器係經組態用於使用該等一或多個訊息執行一操作。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/210,225 US8949344B2 (en) | 2008-09-15 | 2008-09-15 | Asynchronous queued messaging for web applications |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201015342A TW201015342A (en) | 2010-04-16 |
TWI493356B true TWI493356B (zh) | 2015-07-21 |
Family
ID=42005725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098129437A TWI493356B (zh) | 2008-09-15 | 2009-09-01 | 非同步通信的方法、非同步地與網路瀏覽器通信的方法,及用於與網路通信的系統 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8949344B2 (zh) |
EP (1) | EP2329393A4 (zh) |
JP (1) | JP5611952B2 (zh) |
CN (1) | CN102150151B (zh) |
AR (1) | AR073379A1 (zh) |
TW (1) | TWI493356B (zh) |
WO (1) | WO2010030695A2 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9712600B2 (en) * | 2012-12-06 | 2017-07-18 | Facebook, Inc. | Transmission of notifications for retrieving an application on a mobile client device |
US11579855B2 (en) * | 2017-12-15 | 2023-02-14 | Microsoft Technology Licensing Llc | Reduced memory consumption of compiler-transformed asynchronous methods |
US10726476B2 (en) * | 2018-03-23 | 2020-07-28 | Ronald M. Harstad | Systems and methods for advanced auction management |
US11847241B1 (en) * | 2018-04-20 | 2023-12-19 | Amazon Technologies, Inc. | Management of service permissions |
CN110597607B (zh) * | 2019-08-26 | 2022-05-17 | 东软集团股份有限公司 | 异步应用程序的执行方法、装置、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW386197B (en) * | 1997-08-28 | 2000-04-01 | Ibm | Server-side asynchronous form management |
US20070171924A1 (en) * | 2005-12-01 | 2007-07-26 | Firestar Software, Inc. | System and method for exchanging information among exchange applications |
US20070234195A1 (en) * | 2006-04-03 | 2007-10-04 | National Instruments Corporation | Simultaneous update of a plurality of user interface elements displayed in a web browser |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0962637A (ja) | 1995-08-28 | 1997-03-07 | Hitachi Ltd | プログラム実行管理方法 |
GB2313524A (en) | 1996-05-24 | 1997-11-26 | Ibm | Providing communications links in a computer network |
US6366159B1 (en) | 1998-02-23 | 2002-04-02 | Intel Corporation | Dynamic bias circuitry utilizing early voltage clamp and translinear techniques |
US6658485B1 (en) | 1998-10-19 | 2003-12-02 | International Business Machines Corporation | Dynamic priority-based scheduling in a message queuing system |
GB2349545A (en) | 1999-04-26 | 2000-11-01 | Nokia Mobile Phones Ltd | Terminal for providing an application using a browser |
US6493756B1 (en) | 1999-10-28 | 2002-12-10 | Networks Associates, Inc. | System and method for dynamically sensing an asynchronous network event within a modular framework for network event processing |
US6665867B1 (en) | 2000-07-06 | 2003-12-16 | International Business Machines Corporation | Self-propagating software objects and applications |
US7370289B1 (en) * | 2001-03-07 | 2008-05-06 | Palmsource, Inc. | Method and apparatus for notification on an electronic handheld device using an attention manager |
US7003570B2 (en) | 2001-10-05 | 2006-02-21 | Bea Systems, Inc. | System for integrating java servlets with asynchronous messages |
US20030093576A1 (en) * | 2001-11-13 | 2003-05-15 | International Business Machines Corporation | Method and system for message management |
US7702739B1 (en) * | 2002-10-01 | 2010-04-20 | Bao Tran | Efficient transactional messaging between loosely coupled client and server over multiple intermittent networks with policy based routing |
GB0226596D0 (en) * | 2002-11-14 | 2002-12-24 | Commtag Ltd | Data communication systems |
US6889267B2 (en) | 2002-11-26 | 2005-05-03 | Intel Corporation | Asynchronous communication protocol using efficient data transfer formats |
US7620688B2 (en) | 2003-01-03 | 2009-11-17 | Microsoft Corporation | Progress mode for electronic mail component |
US7302681B2 (en) | 2003-02-27 | 2007-11-27 | Dell Products L.P. | Method and system for customized information handling system support updates |
US7272782B2 (en) | 2003-12-19 | 2007-09-18 | Backweb Technologies, Inc. | System and method for providing offline web application, page, and form access in a networked environment |
DE502004001164D1 (de) * | 2004-06-02 | 2006-09-21 | Ixos Software Ag | Verfahren und Vorrichtung zum Verwalten von elektronischen Nachrichten |
US7490299B2 (en) * | 2004-06-30 | 2009-02-10 | International Business Machines Corporation | System and method for handling unexpected focus change messages in a computing device |
US7707585B2 (en) * | 2004-11-05 | 2010-04-27 | International Business Machines Corporation | Method, system, and program product for monitoring message flow in a message queuing system |
EP1715430A1 (en) | 2005-04-18 | 2006-10-25 | Research In Motion Limited | System and method for exposing a synchronous web service as a notification web service |
US20060242246A1 (en) * | 2005-04-20 | 2006-10-26 | International Business Machines Corporation | Managing the delivery of queued instant messages |
US7496037B2 (en) | 2005-06-14 | 2009-02-24 | International Business Machines Corporation | Apparatus, system, and method for facilitating delivery of asynchronous response messages |
EP1775911B1 (en) | 2005-10-13 | 2018-02-28 | BlackBerry Limited | System and method for providing asynchronous notifications using synchronous data |
US7962159B2 (en) * | 2006-04-25 | 2011-06-14 | International Business Machines Corporation | Method and system for receiving data on a portable device |
US7650390B2 (en) | 2006-06-01 | 2010-01-19 | Roam Data Inc | System and method for playing rich internet applications in remote computing devices |
CN1949774B (zh) * | 2006-11-02 | 2010-04-07 | 华为技术有限公司 | 一种Web应用程序会话管理方法与装置 |
US20080162728A1 (en) | 2007-01-03 | 2008-07-03 | Microsoft Corporation | Synchronization protocol for loosely coupled devices |
US9516116B2 (en) * | 2008-06-06 | 2016-12-06 | Apple Inc. | Managing notification service connections |
-
2008
- 2008-09-15 US US12/210,225 patent/US8949344B2/en active Active
-
2009
- 2009-09-01 TW TW098129437A patent/TWI493356B/zh not_active IP Right Cessation
- 2009-09-09 JP JP2011526946A patent/JP5611952B2/ja not_active Expired - Fee Related
- 2009-09-09 EP EP09813555.1A patent/EP2329393A4/en not_active Withdrawn
- 2009-09-09 CN CN200980136757.0A patent/CN102150151B/zh active Active
- 2009-09-09 WO PCT/US2009/056397 patent/WO2010030695A2/en active Application Filing
- 2009-09-15 AR ARP090103542 patent/AR073379A1/es not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW386197B (en) * | 1997-08-28 | 2000-04-01 | Ibm | Server-side asynchronous form management |
US20070171924A1 (en) * | 2005-12-01 | 2007-07-26 | Firestar Software, Inc. | System and method for exchanging information among exchange applications |
US20070234195A1 (en) * | 2006-04-03 | 2007-10-04 | National Instruments Corporation | Simultaneous update of a plurality of user interface elements displayed in a web browser |
Also Published As
Publication number | Publication date |
---|---|
CN102150151B (zh) | 2013-10-30 |
AR073379A1 (es) | 2010-11-03 |
US8949344B2 (en) | 2015-02-03 |
JP2012503231A (ja) | 2012-02-02 |
EP2329393A4 (en) | 2013-04-24 |
EP2329393A2 (en) | 2011-06-08 |
WO2010030695A2 (en) | 2010-03-18 |
JP5611952B2 (ja) | 2014-10-22 |
CN102150151A (zh) | 2011-08-10 |
US20100070586A1 (en) | 2010-03-18 |
WO2010030695A3 (en) | 2010-06-24 |
TW201015342A (en) | 2010-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7263442B2 (ja) | モバイルアプリケーションのリアルタイム遠隔制御のためのシステムおよび方法 | |
US20180176164A1 (en) | Selective communication of messages | |
EP1969786B1 (en) | High level network layer system and method | |
US8862672B2 (en) | Content sharing and instant messaging | |
KR101966258B1 (ko) | 복수의 동적 아이콘 패널을 업데이트하기 위한 푸시 알림 | |
US10733151B2 (en) | Techniques to share media files | |
US11847304B1 (en) | Techniques for media album display and management | |
US20160364106A1 (en) | Techniques for dynamic media album display and management | |
US20170371508A1 (en) | Menu management method, server, and system | |
US20120020577A1 (en) | System and method for efficient unified messaging system support for speech-to-text service | |
TWI493356B (zh) | 非同步通信的方法、非同步地與網路瀏覽器通信的方法,及用於與網路通信的系統 | |
US20120079005A1 (en) | Method, apparatus and system for controlling transmission of an attachment to an email using a plurality of computers | |
EP2958277A1 (en) | Instant messaging method and system | |
US20160127292A1 (en) | Method and system for controlling polling in message conversations across multiple devices | |
WO2017185632A1 (zh) | 数据传输的方法及电子设备 | |
US20120079008A1 (en) | Method, apparatus and system for providing event notifications across a plurality of computers | |
JP5822440B2 (ja) | 交際支援装置、交際支援方法、プログラム及び記憶媒体 | |
US20160364108A1 (en) | Techniques for interactive media album display and management | |
JP2010198091A (ja) | ブログサーバおよびブログシステム | |
JP2007026268A (ja) | 電子メール端末及びプログラム | |
WO2007142388A1 (en) | Method, server and system for processing message for use in on-line service and terminal therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |