專利名稱:數(shù)據(jù)推送方法以及移動終端、服務(wù)器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機技術(shù)領(lǐng)域,更具體地涉及數(shù)據(jù)推送技術(shù)。
背景技術(shù):
隨著移動終端的普及,應(yīng)用于移動終端的業(yè)務(wù)類別不斷擴展,移動終端與服務(wù)器的通信越來越廣泛。在服務(wù)器與移動終端的通信中,由于運營商網(wǎng)關(guān)的限制,移動終端一般是通過HTTP (Hyper Text Transfer Protocol,超文本傳送協(xié)議)與服務(wù)器通信,服務(wù)器無法實時向無線終端傳送內(nèi)容?;贏JAX (Asynchronous JavaScript and XML,異步 Java 腳本和 XML)的 HTTP 長輪詢(Long-Polling)方式實現(xiàn)“服務(wù)器推”已經(jīng)應(yīng)用于個人計算機互聯(lián)網(wǎng)。這種方式與傳統(tǒng)HTTP請求有如下不同之處服務(wù)器會阻塞請求直到有數(shù)據(jù)傳遞或超時才返回;客戶端處理完服務(wù)器的返回以后,再次發(fā)送請求,重新建立連接;在客戶端處理數(shù)據(jù)和重新連接的過程中,服務(wù)器可能有新的數(shù)據(jù)到達(dá),這時服務(wù)器會保存這些數(shù)據(jù),直到客戶端重新建立連接,這時客戶端會一次把服務(wù)器端的所有數(shù)據(jù)都取回。如果將上述HTTP長輪詢方式應(yīng)用于無線移動終端,由于移動終端在接收到服務(wù)器的響應(yīng)之后會立即發(fā)送下一請求,所以M小時之內(nèi)很容易達(dá)到數(shù)兆流量,并且移動終端電池續(xù)航能力有限,所以通信流量過大以及電池電量消耗過快的情況將成為這種技術(shù)的應(yīng)用瓶頸。另外,由于移動終端的網(wǎng)絡(luò)狀態(tài)不可預(yù)知,很可能在服務(wù)器向網(wǎng)絡(luò)發(fā)送完數(shù)據(jù)以后,移動終端接收完數(shù)據(jù)之前,移動終端進(jìn)入斷網(wǎng)狀態(tài)(例如進(jìn)入無網(wǎng)絡(luò)覆蓋的電梯間或地鐵隧道),導(dǎo)致發(fā)送數(shù)據(jù)丟失。
發(fā)明內(nèi)容
因此,目前需要一種低流量、低能耗、可靠的針對移動終端的數(shù)據(jù)推送方式。為了解決上述問題之一,本發(fā)明公開了一種數(shù)據(jù)推送方法以及移動終端和服務(wù)
ο根據(jù)本發(fā)明的一個方面,提供了一種移動終端接收服務(wù)器的推送數(shù)據(jù)的方法,包括判斷移動終端的當(dāng)前活躍程度;根據(jù)移動終端的當(dāng)前活躍程度來確定移動終端接收推送數(shù)據(jù)的模式;以及移動終端按照所述模式向所述服務(wù)器請求推送數(shù)據(jù)。根據(jù)本發(fā)明的另一方面,提供了一種移動終端,包括活躍判斷模塊,用于判斷所述移動終端的當(dāng)前活躍程度;模式確定模塊,用于根據(jù)移動終端的當(dāng)前活躍程度來確定移動終端接收推送數(shù)據(jù)的模式;以及請求發(fā)送模塊,用于按照所述模式向服務(wù)器請求推送數(shù)據(jù)。根據(jù)本發(fā)明的又一方面,提供了一種由服務(wù)器向移動終端推送數(shù)據(jù)的方法,包括 接收由移動終端按照接收推送數(shù)據(jù)的模式發(fā)送的數(shù)據(jù)請求消息,其中所述模式是根據(jù)移動終端的當(dāng)前活躍程度而確定的;響應(yīng)于數(shù)據(jù)請求消息,向移動終端推送數(shù)據(jù)。
根據(jù)本發(fā)明的又一方面,提供了一種服務(wù)器,包括請求接收模塊,用于接收由移動終端按照接收推送數(shù)據(jù)的模式發(fā)送的數(shù)據(jù)請求消息,其中所述模式是根據(jù)所述移動終端的當(dāng)前活躍程度而確定的;響應(yīng)發(fā)送模塊,用于響應(yīng)于所述數(shù)據(jù)請求消息,向所述移動終端推送數(shù)據(jù)。本發(fā)明的數(shù)據(jù)推送方法以及移動終端、服務(wù)器可以降低服務(wù)器與移動終端之間的通信流量,節(jié)省移動終端的電量,并且可以實現(xiàn)可靠傳輸。
通過對結(jié)合附圖所示出的實施方式進(jìn)行詳細(xì)說明,本發(fā)明的上述以及其他特征將更加明顯,本發(fā)明附圖中相同的標(biāo)號表示相同或相似的元素。在附圖中圖1是根據(jù)本發(fā)明一個實施方式的移動終端接收服務(wù)器的推送數(shù)據(jù)的方法的流程圖;圖2是根據(jù)本發(fā)明一個實施方式的由服務(wù)器向移動終端推送數(shù)據(jù)的方法的流程圖;圖3是根據(jù)本發(fā)明一個實施方式的消息流圖;圖4是可以實現(xiàn)本發(fā)明的實施方式的系統(tǒng)框圖;圖5是根據(jù)本發(fā)明一個實施方式的移動終端的框圖;以及圖6是根據(jù)本發(fā)明一個實施方式的服務(wù)器的框圖。
具體實施例方式在下文中,將參考附圖通過實施方式對本發(fā)明提供的數(shù)據(jù)推送方法以及移動終端和服務(wù)器進(jìn)行詳細(xì)的描述。圖1示出了根據(jù)本發(fā)明一個實施方式的移動終端接收服務(wù)器的推送數(shù)據(jù)的方法的流程圖。如圖所示,該方法包括以下步驟在步驟SlOl中,判斷移動終端的當(dāng)前活躍程度。例如,如果移動終端當(dāng)前開機或者用戶對移動終端的操作較頻繁,則判斷移動終端處于高活躍程度,否則,處于低活躍程度。當(dāng)然,也可以根據(jù)各種判斷標(biāo)準(zhǔn)及其任意組合來為移動終端的活躍程度設(shè)置多個等級。在步驟S102中,根據(jù)移動終端的當(dāng)前活躍程度來確定移動終端接收推送數(shù)據(jù)的模式,諸如移動終端接收服務(wù)器的推送數(shù)據(jù)的時間和/或方式。例如,當(dāng)移動終端的當(dāng)前活躍程度較高時,移動終端選擇接收推送數(shù)據(jù)頻率較高的模式。在步驟S103中,移動終端按照上述模式向服務(wù)器請求推送數(shù)據(jù)。根據(jù)本發(fā)明的一個實施方式,當(dāng)移動終端的當(dāng)前活躍程度是低活躍程度時,確定上述模式為周期請求模式,并且移動終端按照與當(dāng)前活躍程度相對應(yīng)的請求周期向服務(wù)器發(fā)送數(shù)據(jù)請求消息或者停止向服務(wù)器發(fā)送數(shù)據(jù)請求消息。例如,移動終端的當(dāng)前活躍程度越低,則可以將請求周期設(shè)置地越長。在活躍程度很低的情況下,例如在確定用戶不關(guān)注移動終端的某個時段中或者電量不允許的情況下,可以將請求周期設(shè)置為無限長,即在某個時段中不發(fā)送數(shù)據(jù)請求消息,從而降低了移動終端的能耗,同時也減小了移動終端與服務(wù)器之間的信令開銷,降低了網(wǎng)絡(luò)負(fù)載。根據(jù)本發(fā)明的一個實施方式,活躍程度根據(jù)以下各項中的一個或多個進(jìn)行判斷移動終端是否開機;用戶對移動終端的操作情況,例如,用戶撥打或者接聽呼叫、用戶對移動終端的鍵盤或者觸摸屏進(jìn)行操作、用戶使用安裝在移動終端上的應(yīng)用程序(諸如游戲) 等;移動終端的電量;移動終端的放置位置,例如手機是否放置在手機袋中;以及當(dāng)前時間,例如當(dāng)前是白天還是深夜。當(dāng)然,還可以包括其他不同的判斷標(biāo)準(zhǔn)。以下給出了設(shè)置移動終端在周期請求模式下的請求周期的一個示例(1)當(dāng)用戶 5分鐘以上不做任何操作,或者手機電量不足或進(jìn)入節(jié)電模式時,移動終端每10分鐘請求一次服務(wù)器,取得服務(wù)器端的所有離線消息;(2)當(dāng)用戶30分鐘以上不做任何操作時,移動終端改為1小時請求一次服務(wù)器,取得所有離線消息;(3)在上述O)的條件下,如果是當(dāng)?shù)貢r間深夜或者凌晨(如凌晨0點到6點),移動終端不再向服務(wù)器發(fā)送數(shù)據(jù)請求消息。根據(jù)本發(fā)明的一個實施方式,在移動終端的當(dāng)前活躍程度是高活躍程度時,確定上述模式為輪詢請求模式,并且移動終端響應(yīng)于接收到來自服務(wù)器的數(shù)據(jù)響應(yīng)消息而向服務(wù)器發(fā)送數(shù)據(jù)請求消息。例如,移動終端在接收到服務(wù)器的響應(yīng)消息之后,立即發(fā)送下一個數(shù)據(jù)請求消息,或者在延時某個時段之后發(fā)送數(shù)據(jù)請求消息。在活躍程度較高的情況下采用輪詢請求模式可以保證例如用戶在對移動終端的關(guān)注度較高時,可以持續(xù)快速或者準(zhǔn)實時地得到服務(wù)器的推送數(shù)據(jù),得到良好的用戶體驗。在一個實施方式中,當(dāng)移動終端處于周期請求模式時,如果用戶開始對移動終端進(jìn)行操作,則可以改為輪詢請求模式。另外,在上述方法的實施方式還可以包括當(dāng)移動終端在預(yù)定義終端超時時間后沒有接收到來自服務(wù)器的數(shù)據(jù)響應(yīng)消息時,重新發(fā)送數(shù)據(jù)請求消息。例如,當(dāng)移動終端在預(yù)定義的超時時間后沒有接收到響應(yīng)時,則判斷網(wǎng)絡(luò)發(fā)生異常,再次發(fā)出請求消息。圖2示出了根據(jù)本發(fā)明一個實施方式的由服務(wù)器向移動終端推送數(shù)據(jù)的方法的流程圖。如圖所示,該方法包括以下步驟在步驟S201中,接收由移動終端按照接收推送數(shù)據(jù)的模式發(fā)送的數(shù)據(jù)請求消息, 其中該模式是根據(jù)移動終端的當(dāng)前活躍程度而確定的。在步驟S202中,響應(yīng)于數(shù)據(jù)請求消息,向移動終端推送數(shù)據(jù)。根據(jù)本發(fā)明的一個實施方式,在接收到所述數(shù)據(jù)請求消息時,如果服務(wù)器中具有要向移動終端發(fā)送的數(shù)據(jù),則立即向移動終端返回數(shù)據(jù)響應(yīng)消息,該消息攜帶服務(wù)器要向移動終端發(fā)送的數(shù)據(jù),例如服務(wù)器可能一次將當(dāng)前的所有數(shù)據(jù)都發(fā)送給移動終端;如果服務(wù)器中沒有要向移動終端推送的數(shù)據(jù),則等待直到服務(wù)器接收到要向移動終端推送的數(shù)據(jù)或者等待時間到達(dá)預(yù)定義服務(wù)器超時時間時,向移動終端發(fā)送數(shù)據(jù)響應(yīng)消息。超時時間可以由服務(wù)器設(shè)定,例如設(shè)定為30秒,該時間可以根據(jù)不同的系統(tǒng)協(xié)議和實際情況進(jìn)行調(diào)離
iF. ο在本發(fā)明的一個實施方式中,當(dāng)移動終端沒有發(fā)送數(shù)據(jù)請求消息時,服務(wù)器端可能會有新的數(shù)據(jù)到達(dá)。服務(wù)器可以將這些數(shù)據(jù)保存在服務(wù)器中的數(shù)據(jù)隊列中,直到移動終端重新建立連接,再將數(shù)據(jù)隊列中的數(shù)據(jù)發(fā)送給移動終端。根據(jù)針對某個特定的移動終端應(yīng)用(例如游戲應(yīng)用)所進(jìn)行的流量統(tǒng)計,采用現(xiàn)有的HTTP長輪詢方式進(jìn)行數(shù)據(jù)推送,每天的通信流量可高達(dá)大約3M,而采用本發(fā)明的上述實施方式,每天的流量可降低至大約800K,極大地減少了網(wǎng)絡(luò)負(fù)擔(dān),同時降低了移動終端的電量消耗以及用戶的通信費用。
根據(jù)本發(fā)明的一個實施方式,在服務(wù)器向移動終端推送數(shù)據(jù)的過程中,可以添加校驗機制。將服務(wù)器向終端推送的數(shù)據(jù)以條目為單位進(jìn)行編號,每條數(shù)據(jù)具有相應(yīng)的條目序號。服務(wù)器與移動終端之間交換的消息的條目序號例如可以根據(jù)其中攜帶的數(shù)據(jù)條目的序號來設(shè)置。服務(wù)器在向移動終端推送數(shù)據(jù)時,根據(jù)數(shù)據(jù)請求消息的條目序號和服務(wù)器的數(shù)據(jù)隊列中的數(shù)據(jù)條目序號向移動終端發(fā)送數(shù)據(jù)響應(yīng)消息。并且服務(wù)器在接收到來自移動終端的數(shù)據(jù)請求消息時,根據(jù)數(shù)據(jù)請求消息的條目序號,刪除服務(wù)器的數(shù)據(jù)隊列中已發(fā)送至移動終端的數(shù)據(jù)條目。移動終端根據(jù)接收到的數(shù)據(jù)響應(yīng)消息的條目序號來設(shè)置下一數(shù)據(jù)請求消息的條目序號。為了對上述校驗機制進(jìn)行更加清楚地描述,以下給出了服務(wù)器向移動終端推送數(shù)據(jù)的過程的一個示例。在該示例中,可以將服務(wù)器端需要推送的數(shù)據(jù)作為消息存儲在消息隊列中,消息以條目為單位進(jìn)行編號,例如可以使用自然數(shù)編號,從1開始。該編號稱為消息序號MID (Message ID)。移動終端在請求時需要發(fā)送已經(jīng)接收到的消息的MID值,該MID 值初始可以設(shè)置為0。服務(wù)器向移動終端推送數(shù)據(jù)的示例過程可以包括以下步驟移動終端第一次連接服務(wù)器時,請求消息內(nèi)MID設(shè)為0 ;服務(wù)器對消息緩存隊列中的消息按服務(wù)器接收的時間先后排列,MID初始值為1 ;移動終端再次連接時,請求消息內(nèi)MID設(shè)為已經(jīng)接收到的消息中 MID最大的值,如果沒有接收到任何消息,則請求消息內(nèi)MID還是設(shè)為0 ;服務(wù)器接收到移動終端的請求消息時,獲取請求消息中的MID,向移動終端返回消息隊列中MID大于此MID的消息,返回后刪除消息隊列中小于和等于此MID的消息,如果請求消息中的MID為0,則返回消息隊列中所有的消息,如果其消息隊列為空,則服務(wù)器等待新的消息到達(dá),直到超時返回;當(dāng)移動終端超過兩倍超時時間沒有接收到服務(wù)器返回時,則判定網(wǎng)絡(luò)異常,再次發(fā)送請求消息,請求消息序號不變,嘗試?yán)?次后報警;當(dāng)移動終端例如10倍超時時間沒有連接到服務(wù)器時,服務(wù)器判定移動終端下線,如果消息緩存隊列中有消息,則將緩存消息設(shè)為離線消息,下次移動終端連接以后,一次推送所有離線消息。應(yīng)當(dāng)理解,以上的消息序號設(shè)置方式以及超時時間設(shè)定僅是一個示例,其可以具有多種其他實施方式,例如,移動終端在再次向服務(wù)器發(fā)送請求消息時,消息序號設(shè)置為已經(jīng)接收到的消息的MID最大值加1,服務(wù)器接收到該請求消息后,向移動終端返回消息隊列中大于等于該MID的消息,刪除小于該MID的消息。消息序號的設(shè)置能夠反映服務(wù)器已經(jīng)發(fā)送以及移動終端已經(jīng)接收的消息即可。圖3是根據(jù)本發(fā)明一個實施方式的消息流圖。如圖所示,移動終端首先向服務(wù)器發(fā)起連接,請求消息序號設(shè)為0,此時因為服務(wù)器端沒有保留MID大于1的消息,所以服務(wù)器并不立即響應(yīng)移動終端,這就使移動終端和服務(wù)器保持一個長連接的狀態(tài)。服務(wù)器在第一個超時時間(如30秒)內(nèi)沒有從外部接收到消息,超時返回。在移動終端第二次連接到服務(wù)器之前(請求消息序號還是設(shè)為0),服務(wù)器收到一條發(fā)送給移動終端的消息,此時服務(wù)器立即將該消息返回給移動終端,響應(yīng)消息序號為1。移動終端接收到該消息之后,立即重新發(fā)起連接,請求消息序號設(shè)為1。當(dāng)服務(wù)器和移動終端建立連接后,服務(wù)器從獲取到的請求消息序號=1可以判斷MID為1的消息已發(fā)送成功,此時在服務(wù)器的消息緩存隊列中刪除MID為1的消息。在第三次連接之前,服務(wù)器連續(xù)收到兩條消息,此時將兩條消息放在一個響應(yīng)消息中返回給移動終端,最大的MID為3,響應(yīng)消息序號設(shè)為3。服務(wù)器接收到移動終端再次連接請求的MID為3的參數(shù)后,將刪除MID為2、3的兩條消息。等待超時時間 (如30秒)服務(wù)器仍沒接收到需要發(fā)送給移動終端的消息,超時返回。圖4示出了可以實現(xiàn)本發(fā)明的實施方式的系統(tǒng)框圖。如圖所示,該系統(tǒng)可以包括服務(wù)器和終端,并且服務(wù)器中可以具有消息隊列,其中存儲有要向終端發(fā)送的消息。服務(wù)器和終端通過無線網(wǎng)絡(luò)進(jìn)行通信。其中,終端可以包括手機、個人數(shù)字助理(PDA)、掌上游戲機、便攜式計算機以及其他可以通過無線網(wǎng)絡(luò)與服務(wù)器進(jìn)行通信的移動設(shè)備。無線網(wǎng)絡(luò)的示例包括第三代(3G)蜂窩數(shù)據(jù)通信網(wǎng)絡(luò)、第四代GG)蜂窩數(shù)據(jù)通信網(wǎng)絡(luò)、全球移動通信網(wǎng)絡(luò)系統(tǒng)(GSM)、無線局域網(wǎng)(WLAN)或者其他當(dāng)前的或者將來的無線通信網(wǎng)絡(luò)。圖5示出了根據(jù)本發(fā)明一個實施方式的移動終端的框圖。其中,該移動終端包括活躍判斷模塊501,用于判斷移動終端的當(dāng)前活躍程度;模式確定模塊502,用于根據(jù)移動終端的當(dāng)前活躍程度來確定移動終端接收推送數(shù)據(jù)的模式;以及請求發(fā)送模塊503,用于按照上述模式向服務(wù)器請求推送數(shù)據(jù)。根據(jù)圖5的移動終端的一個實施方式,模式確定模塊502用于在活躍判斷模塊501 判斷當(dāng)前活躍程度是低活躍程度時,確定上述模式為周期請求模式。并且,請求發(fā)送模塊 503用于在模式確定模塊502確定上述模式為周期請求模式時,按照與當(dāng)前活躍程度相對應(yīng)的請求周期向服務(wù)器發(fā)送數(shù)據(jù)請求消息或者停止向服務(wù)器發(fā)送數(shù)據(jù)請求消息。在上述實施方式中,模式確定模塊502用于在活躍判斷模塊501判斷當(dāng)前活躍程度為高活躍程度時,確定上述模式為輪詢請求模式。并且,請求發(fā)送模塊503用于在模式確定模塊502確定該模式為輪詢請求模式時,響應(yīng)于接收到來自服務(wù)器的數(shù)據(jù)響應(yīng)消息而向服務(wù)器發(fā)送數(shù)據(jù)請求消息。作為本發(fā)明的一個實施方式,請求發(fā)送模塊503還用于根據(jù)接收到的數(shù)據(jù)響應(yīng)消息的條目序號來設(shè)置下一數(shù)據(jù)請求消息的條目序號。作為本發(fā)明的一個實施方式,圖5的移動終端還包括超時模塊,用于在預(yù)定義終端超時時間后沒有接收到來自服務(wù)器的數(shù)據(jù)響應(yīng)消息時,指示請求發(fā)送模塊503重新發(fā)送數(shù)據(jù)請求消息。作為本發(fā)明的一個實施方式,其中活躍判斷模塊501根據(jù)以下各項中的一個或多個來判斷移動終端的當(dāng)前活躍程度移動終端是否開機;用戶對移動終端的操作情況;移動終端的電量;移動終端的放置位置;以及當(dāng)前時間。圖6是根據(jù)本發(fā)明一個實施方式的服務(wù)器的框圖。如圖所示,該服務(wù)器包括請求接收模塊601,用于接收由移動終端按照接收推送數(shù)據(jù)的模式發(fā)送的數(shù)據(jù)請求消息,其中該模式是根據(jù)移動終端的當(dāng)前活躍程度而確定的;響應(yīng)發(fā)送模塊602,用于響應(yīng)于數(shù)據(jù)請求消息,向移動終端推送數(shù)據(jù)。在圖6的服務(wù)器的實施方式中,響應(yīng)發(fā)送模塊602還用于根據(jù)數(shù)據(jù)請求消息的條目序號和服務(wù)器的數(shù)據(jù)隊列中的數(shù)據(jù)條目序號向移動終端發(fā)送響應(yīng)數(shù)據(jù)消息。作為本發(fā)明的一個實施方式,圖6的服務(wù)器還可以包括數(shù)據(jù)隊列管理模塊,用于在請求接收模塊601接收到來自移動終端的數(shù)據(jù)請求消息時,根據(jù)數(shù)據(jù)請求消息的條目序號,刪除服務(wù)器的數(shù)據(jù)隊列中已發(fā)送至移動終端的數(shù)據(jù)條目。作為本發(fā)明的一個實施方式,圖6的服務(wù)器還可以包括延時模塊,該延時模塊用于在請求接收模塊601接收到數(shù)據(jù)請求消息時,如果服務(wù)器中沒有要向移動終端推送的數(shù)據(jù),則等待直到服務(wù)器接收到要向移動終端推送的數(shù)據(jù)或者等待時間到達(dá)預(yù)定義服務(wù)器超時時間時,指示響應(yīng)發(fā)送模塊602向移動終端發(fā)送數(shù)據(jù)響應(yīng)消息。本發(fā)明所公開的數(shù)據(jù)推送方法以及移動終端和服務(wù)器通過采用不同的數(shù)據(jù)推送模式而實現(xiàn)了低流量和低能耗的數(shù)據(jù)推送。在數(shù)據(jù)推送過程中,通過設(shè)置消息序號,實現(xiàn)了消息的可靠傳輸,避免了因各種斷網(wǎng)狀態(tài)造成的數(shù)據(jù)丟失。雖然已經(jīng)參考目前考慮到的實施方式描述了本發(fā)明,但是應(yīng)該理解本發(fā)明不限于所公開的實施方式。相反,本發(fā)明旨在涵蓋所附權(quán)利要求的精神和范圍內(nèi)所包括的各種修改和等同布置。以下權(quán)利要求的范圍符合最廣泛解釋,以便包含所有這樣的修改及等同結(jié)構(gòu)和功能。
權(quán)利要求
1.一種移動終端接收服務(wù)器的推送數(shù)據(jù)的方法,包括 判斷移動終端的當(dāng)前活躍程度;根據(jù)所述移動終端的當(dāng)前活躍程度來確定所述移動終端接收推送數(shù)據(jù)的模式;以及所述移動終端按照所述模式向所述服務(wù)器請求推送數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,其中確定所述模式包括在所述移動終端的當(dāng)前活躍程度是低活躍程度時,確定所述模式為周期請求模式;并且,所述移動終端按照與所述當(dāng)前活躍程度相對應(yīng)的請求周期向所述服務(wù)器發(fā)送數(shù)據(jù)請求消息或者停止向所述服務(wù)器發(fā)送數(shù)據(jù)請求消息。
3.根據(jù)權(quán)利要求1所述的方法,其中確定所述模式包括在所述移動終端的當(dāng)前活躍程度是高活躍程度時,確定所述模式為輪詢請求模式;并且,所述移動終端響應(yīng)于接收到來自所述服務(wù)器的數(shù)據(jù)響應(yīng)消息而向所述服務(wù)器發(fā)送數(shù)據(jù)請求消息。
4.根據(jù)權(quán)利要求1所述的方法,其中所述移動終端向所述服務(wù)器發(fā)送所述數(shù)據(jù)請求消息還包括所述移動終端根據(jù)接收到的所述數(shù)據(jù)響應(yīng)消息的條目序號來設(shè)置下一數(shù)據(jù)請求消息的條目序號。
5.根據(jù)權(quán)利要求1所述的方法,還包括當(dāng)所述移動終端在預(yù)定義終端超時時間后沒有接收到來自所述服務(wù)器的數(shù)據(jù)響應(yīng)消息時,重新發(fā)送所述數(shù)據(jù)請求消息。
6.根據(jù)權(quán)利要求1所述的方法,其中所述活躍程度根據(jù)以下各項中的一個或多個進(jìn)行判斷所述移動終端是否開機; 用戶對所述移動終端的操作情況; 所述移動終端的電量; 所述移動終端的放置位置;以及當(dāng)前時間。
7.一種移動終端,包括活躍判斷模塊,用于判斷所述移動終端的當(dāng)前活躍程度;模式確定模塊,用于根據(jù)所述移動終端的當(dāng)前活躍程度來確定所述移動終端接收推送數(shù)據(jù)的模式;以及請求發(fā)送模塊,用于按照所述模式向服務(wù)器請求推送數(shù)據(jù)。
8.根據(jù)權(quán)利要求7所述的移動終端,其中,所述模式確定模塊用于在所述活躍判斷模塊判斷所述當(dāng)前活躍程度是低活躍程度時,確定所述模式為周期請求模式;以及所述請求發(fā)送模塊用于在所述模式確定模塊確定所述模式為周期請求模式時,按照與所述當(dāng)前活躍程度相對應(yīng)的請求周期向所述服務(wù)器發(fā)送數(shù)據(jù)請求消息或者停止向所述服務(wù)器發(fā)送數(shù)據(jù)請求消息。
9.根據(jù)權(quán)利要求7所述的移動終端,其中,所述模式確定模塊用于在所述活躍判斷模塊判斷所述當(dāng)前活躍程度為高活躍程度時, 確定所述模式為輪詢請求模式;以及所述請求發(fā)送模塊用于在所述模式確定模塊確定所述模式為輪詢請求模式時,響應(yīng)于接收到來自所述服務(wù)器的數(shù)據(jù)響應(yīng)消息而向所述服務(wù)器發(fā)送所述數(shù)據(jù)請求消息。
10.根據(jù)權(quán)利要求7所述的移動終端,其中,所述請求發(fā)送模塊還用于根據(jù)接收到的所述數(shù)據(jù)響應(yīng)消息的條目序號來設(shè)置下一數(shù)據(jù)請求消息的條目序號。
11.根據(jù)權(quán)利要求7所述的移動終端,還包括超時模塊,用于在預(yù)定義終端超時時間后沒有接收到來自所述服務(wù)器的數(shù)據(jù)響應(yīng)消息時,指示所述請求發(fā)送模塊重新發(fā)送數(shù)據(jù)請求消息。
12.根據(jù)權(quán)利要求7所述的移動終端,其中所述活躍判斷模塊根據(jù)以下各項中的一個或多個來判斷所述移動終端的當(dāng)前活躍程度所述移動終端是否開機;用戶對所述移動終端的操作情況;所述移動終端的電量;所述移動終端的放置位置;以及當(dāng)前時間。
13.一種由服務(wù)器向移動終端推送數(shù)據(jù)的方法,包括接收由移動終端按照接收推送數(shù)據(jù)的模式發(fā)送的數(shù)據(jù)請求消息,其中所述模式是根據(jù)所述移動終端的當(dāng)前活躍程度而確定的;響應(yīng)于所述數(shù)據(jù)請求消息,向所述移動終端推送數(shù)據(jù)。
14.根據(jù)權(quán)利要求13所述的方法,其中向所述移動終端推送數(shù)據(jù)包括根據(jù)所述數(shù)據(jù)請求消息的條目序號和所述服務(wù)器的數(shù)據(jù)隊列中的數(shù)據(jù)條目序號向所述移動終端發(fā)送數(shù)據(jù)響應(yīng)消息。
15.根據(jù)權(quán)利要求14所述的方法,還包括在接收到來自所述移動終端的數(shù)據(jù)請求消息時,根據(jù)所述數(shù)據(jù)請求消息的條目序號, 刪除所述服務(wù)器的數(shù)據(jù)隊列中已發(fā)送至所述移動終端的數(shù)據(jù)條目。
16.根據(jù)權(quán)利要求13所述的方法,其中,向所述移動終端推送數(shù)據(jù)還包括在接收到所述數(shù)據(jù)請求消息時,如果所述服務(wù)器中沒有要向所述移動終端推送的數(shù)據(jù),則等待直到所述服務(wù)器接收到要向所述移動終端推送的數(shù)據(jù)或者等待時間到達(dá)預(yù)定義服務(wù)器超時時間時,向所述移動終端發(fā)送數(shù)據(jù)響應(yīng)消息。
17.一種服務(wù)器,包括請求接收模塊,用于接收由移動終端按照接收推送數(shù)據(jù)的模式發(fā)送的數(shù)據(jù)請求消息, 其中所述模式是根據(jù)所述移動終端的當(dāng)前活躍程度而確定的;響應(yīng)發(fā)送模塊,用于響應(yīng)于所述數(shù)據(jù)請求消息,向所述移動終端推送數(shù)據(jù)。
18.根據(jù)權(quán)利要求17所述的服務(wù)器,其中所述響應(yīng)發(fā)送模塊還用于根據(jù)所述數(shù)據(jù)請求消息的條目序號和所述服務(wù)器的數(shù)據(jù)隊列中的數(shù)據(jù)條目序號向所述移動終端發(fā)送響應(yīng)數(shù)據(jù)消息。
19.根據(jù)權(quán)利要求18所述的服務(wù)器,還包括數(shù)據(jù)隊列管理模塊,用于在所述請求接收模塊接收到來自所述移動終端的數(shù)據(jù)請求消息時,根據(jù)所述數(shù)據(jù)請求消息的條目序號,刪除所述服務(wù)器的數(shù)據(jù)隊列中已發(fā)送至所述移動終端的數(shù)據(jù)條目。
20.根據(jù)權(quán)利要求17所述的服務(wù)器,還包括延時模塊,所述延時模塊用于在所述請求接收模塊接收到所述數(shù)據(jù)請求消息時,如果所述服務(wù)器中沒有要向所述移動終端推送的數(shù)據(jù),則等待直到所述服務(wù)器接收到要向所述移動終端推送的數(shù)據(jù)或者等待時間到達(dá)預(yù)定義服務(wù)器超時時間時,指示所述響應(yīng)發(fā)送模塊向所述移動終端發(fā)送數(shù)據(jù)響應(yīng)消息。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)推送方法以及移動終端和服務(wù)器。移動終端接收服務(wù)器的推送數(shù)據(jù)的方法包括判斷移動終端的當(dāng)前活躍程度;根據(jù)移動終端的當(dāng)前活躍程度來確定移動終端接收推送數(shù)據(jù)的模式;以及移動終端按照上述模式向服務(wù)器請求推送數(shù)據(jù)。本發(fā)明所公開的數(shù)據(jù)推送方法以及移動終端和服務(wù)器實現(xiàn)了低流量和低能耗的數(shù)據(jù)推送。
文檔編號H04W52/02GK102480517SQ20101059085
公開日2012年5月30日 申請日期2010年11月30日 優(yōu)先權(quán)日2010年11月30日
發(fā)明者曹赫, 聞華強 申請人:北京千橡網(wǎng)景科技發(fā)展有限公司