專利名稱:消息推送方法及裝置的制作方法
消息推送方法及裝置技術領域
本申請涉及網絡通信領域,尤其涉及一種消息推送方法及裝置。
背景技術:
目前,很多移動終端都支持無線網絡,用戶會在移動終端上安裝客戶端軟件訂閱互聯網服務,互聯網的服務提供商可以向客戶端發布、推送消息,客戶端收到這些消息后通過界面展示給用戶。另外,服務提供商還可以向客戶端推送一些配置信息、版本更新信息, 以及廣告、營銷等增值服務消息。
目前蘋果公司的推送(push)服務器支持在iPhone手機平臺上推送消息。它的工作流程是
第一階段第三方的服務器把要發送的消息、目的iPhone的標識打包,發給蘋果的push月艮務器;
第二階段蘋果的push服務器在自身的已注冊Push服務的iPhone列表中查找有相應標識的iPhone,并把消息發到iPhone ;
第三階段iPhone把發來的消息傳遞給相應的應用程序,并且按照設定,彈出 Push通知。
iphone手機和蘋果公司的push服務器正式通信之前,需要預先建立一條基于安全傳輸層協議(Transport Layer Security,簡稱TLS)的加密的長鏈接。每一臺正常的 iPhone都有一個獨有的設備證書,而push服務器也有一個服務器證書。兩者建立鏈接的時候會驗證彼此的證書有效性。TLS鏈接一旦建立,在沒有數據的情況下,只需要每隔15分鐘進行一次保活的握手,而一旦因為意外原因導致鏈接中斷,iPhone會不斷重新嘗試建立 TLS鏈接,直到成功。TLS加密連接需要用彼此的證書相互驗證,這決定了該系統只能用于 iPhone手機,不能應用于其他移動終端。
但由于移動互聯網中移動終端客戶端和服務器端的長連接經常被運營商的移動網關切斷,所以維護一條長連接需要經常發送保活的握手,更多的時候需要重新建立連接。
而且,iPhone手機每次和push服務器建立TLS連接時,push服務器通過每臺正常的iPhone唯一的設備證書驗證,并且該設備證書是用iPhone手機激活密鑰加密生成的。 在設備證書驗證通過后,push服務器會把對應于每臺iPhone的設備令牌返回給iPhone,而對應的Push應用程序則把返回來的設備令牌直接發送給第三方服務提供商。這樣,當第三方服務提供商有Push消息要發送時,就把設備令牌和Push消息一起發送給push服務器, push服務器再依據設備令牌找到相應TLS鏈接的iPhone,并發送相應的Push消息。
因此,上述方案將設備令牌和iPhone手機綁定,并用設備令牌區分消息,這不能將Push消息精確地推送到所屬的應用程序上,在一臺iPhone手機上存在多個第三方應用時,一個應 用程序的消息可能會被其他應用程序接收,同一個應用程序在切換用戶帳號后, 一個用戶帳號的消息可能被切換的用戶帳號接收,這是由于對于一臺iPhone手機上的多個不同的應用程序而言,使用的設備令牌是同一個。同時由于第三方服務提供商每次推送消息是根據設備令牌來推送,因此第三方服務提供商在需要向多臺iPhone手機推送同一個push消息時,只能按照每臺iphone手機的token逐個地將該push消息發送給push服務器存儲。發明內容
本申請的目的是,提供一種消息推送方法及裝置,將消息令牌與應用程序名稱、移動終端設備標識號和用戶帳號標識信息綁定,以實現精確地推送消息到所屬的應用程序中。
為實現上述目的,本申請提供了一種消息推送方法,該方法包括
發送消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;
接收所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
發送攜帶有所述消息令牌的消息數據查找請求;
接收根據所述消息令牌查找出的所述消息令牌所匹配的消息數據。
本申請提供了一種消息推送方法,該方法包括
接收消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;
發送所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
接收消息數據保存請求,所述消息數據保存請求包括所述消息令牌及其對應的消息數據,或者應用程序名稱和應用程序版本以及其對應的消息數據;
根據所述消息令牌或者應用程序名稱和應用程序版本存儲該消息數據;
接收攜帶有所述消息令牌的消息數據查找請求;
發送根據所述消息令牌從所述存儲的消息數據中查找出的所述消息令牌所匹配的消息數據。
本申請還提供了一種消息推送裝置,該裝置包括
令牌請求發送單元,用于發送消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;
令牌接收單元,用于接收所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
消息請求發送單元,用于發送攜帶有所述消息令牌的消息數據查找請求;
消息接收單元,用于接收根據所述消息令牌查找出的所述消息令牌所匹配的消息數據。
本申請還提供了一種消息推送裝置,該裝置包括
令牌請求接收單元,用于接收消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;·
令牌發送單元,用于發送所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
消息保存接收單元,用于接收消息數據保存請求,所述消息數據保存請求包括所述消息令牌及對應的消息數據,或者應用程序名稱和應用程序版本以及其對應的消息數據;
保存處理單元,用于根據所述消息令牌或者應用程序名稱和應用程序版本存儲其對應的消息數據;
消息請求接收單元,用于接收攜帶有所述消息令牌的消息數據查找請求;
消息發送單元,用于發送根據所述消息令牌從所述存儲的消息數據中查找出的所述消息令牌所匹配的消息數據。
因此,本申請適用于任何移動終端,不需要維護保活握手;將消息令牌和軟件名稱、移動終端設備標識號和用戶帳號標識信息綁定在一起,消息可以精確地投遞給移動終端。
圖1為本申請一實施例消息推送方法的示意圖2為本申請另一實施例消息推送方法的示意圖3為本申請一實施例消息推送裝置的示意圖。
圖4為本申請另一實施例消息推送裝置的示意圖5為本申請實施例實際應用中消息推送方法的過程示意圖6為本申請實際應用中的消息推送方法的信令方式流程圖7為本申請實際應用中消息推送系統的示意圖。
具體實施方式
下面通過附圖和實施例,對本申請的技術方案做進一步的詳細描述。
本申請通過將消息令牌與應用程序名稱、移動終端設備標識號和用戶帳號標識信息綁定,從而實現了消息的精確推送。
圖1為本申請一實施例消息推送方法的示意圖。如圖所示,本實施例推送方法是針對客戶端而言的,例如能夠使用網絡的各種移動終端,包括但并不限于臺式機、手機、筆記本、平板電腦等。
如圖所示本實施例包括以下步驟
步驟101,發送消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;
發送消息令牌獲取請求可以是在用戶狀態信息改變、應用程序版本更新和/或預先設定的時間間隔來注冊獲取所述消息令牌時進行的。具體來說,當移動終端上的該應用程序注冊了用戶帳號后,發生用戶帳號切換、用戶帳號注銷時,移動終端可發起向推送服務器發起消息令牌獲取請求;或者當應用程序版本升級時,也可發起向推送服務器發起消息令牌獲取請求;甚至可以按照移動終端用戶設定的時間間隔,移動終端獲取該應用程序的當前用戶帳號下的消息令牌。
對于不同的應用程序,消息令牌獲取請求也可以在安裝的時候就觸發,有些應用程序還可以在移動終端掛起服務時,如上面描述的按照設定的時間間隔來注冊獲取消息令牌,具體在什么時候觸發消息令牌獲取請求,上述僅僅為示例,并不做限制,根據具體不同的應用程序來具體設定。
步驟102,接收所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
優選地,所述消息令牌是根據所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成的。
步驟103,發送攜帶有所述消息令牌的消息數據查找請求;
步驟104,接收根據所述消息令牌查找出的所述消息令牌所匹配的消息數據。
進一步地,在步驟101之前本實施例還包括
步驟100,接收開發者帳號和密鑰進行存儲。
移動終端在下載應用程序時,應用程序攜帶有開發者帳號和密鑰,因此,在移動終端下載應用程序的同時,可接收該應用程序相對應的開發者帳號和密鑰。
可選地,在步驟101的消息令牌獲取請求中,除了移動終端設備標識號、應用程序名稱和用戶帳號標識信息,還可包括根據開發者帳號和密鑰進行的簽名和開發者帳號。
可選地,當步驟101中所述消息令牌獲取請求還包括簽名和開發者帳號時,當開發者帳號驗證合法且簽名經過鑒權后,再執行步驟102。
可選地,步驟103所述消息數據查找請求中除了包括消息令牌之外,還可包括開發者帳號以及對開發者帳號和密鑰進行的簽名。
可選地,當步驟103中消息數據查找請求還包括簽名和開發者帳號時,當開發者帳號驗證合法且簽名經過鑒權后,執行步驟102。
其中,驗證鑒權可由其他第三方服務器來實現。具體實現可參見下面的相關描述。
優選地,本實施例還可包括轉發接收到的所述消息令牌與所述用戶帳號標識信息。在移動終端接收到消息令牌后,可立即將該消息令牌和用戶帳號標識信息轉發給應用服務器,也可在一定時刻將其發送,在此不作限定。應用服務器維護該用戶帳號標識信息和消息令牌的對應關系,這樣應用服務器可以在確定向某個用戶發消息數據時,根據用戶帳號標識信息查詢出對應的消息令牌,然后將該消息令牌和消息數據發給推送服務器。
本申請該實施例通過將消息令牌與移動終端標識號、應用程序名稱和用戶帳號標識信息相對應,實現了針對一個移動終端上的一個應用程序的一個用戶帳號進行消息數據的精確推送。
圖2為本申請另一實施例消息推送方法的示意圖。如圖所示,本實施例推送方法是針對服務器端作為主體而言的,例如用于推送消息的推送服務器。本實施例消息推送方法包括以下步驟
步驟1001,接收消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;
步驟1002,發送所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
步驟1003,接收消息數據保存請求,所述消息數據保存請求包括所述消息令牌及其對應的消息數據,或者應用程序名稱和應用程序版本及其對應的消息數據;
步驟1004,根據所述消息令牌或者應用程序名稱和應用程序版本存儲其對應的消息數據;
當根據消息令牌在數據庫中存儲消息數據時,由于消息令牌的唯一性,存放的是針對特定的一個應用程序的用戶帳號的消息數據。該過程可以被稱為單存消息。
當根據應用程序名稱和應用程序版本存儲消息數據時,可以針對凡是對應該應用程序名稱和版本的所有消息令牌進行消息數據的存儲,即該應用程序的所有用戶帳號進行存儲消息數據,實現給多臺移動終端上多個應用程序的用戶帳號存儲該消息數據。該過程可以被稱為群存消息。
步驟1005,接收攜帶有所述消息令牌的消息數據查找請求;
步驟1006,發送根據所述消息令牌從所述存儲的消息數據中查找出所述消息令牌所匹配的消息數據。
優選地,本實施例還可包括
步驟1000,接收開發者帳號、所述應用程序名稱和應用程序版本進行一一對應存儲。
當某個應用程序對應的開發者例如第三方應用服務器向開發者中心控制服務器進行注冊時,開發者中心控制服務器將應用程序所對應的應用服務器注冊的開發者帳號、 密鑰以及應用程序名稱、版本等信息進行記錄,并通知推送服務器已經經過注冊的開發者帳號、應用程序名稱和版本,推送服務器接收開發者帳號、所述應用程序名稱和應用程序版本在數據庫中進行一一對應存儲。
其中,可選地,開發者中心控制服務器與該推送服務器可為一體,由一個綜合服務器實現。
優選地,如圖所示,在步驟1001和步驟1002之間,本實施例還包括以下的步驟
步驟1011,根據所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息,在數據庫中檢索是否存在所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌,如果存在,執行步驟1021 ;如果不存在,轉步驟1022 ;
步驟1021,取出該消息令牌;
步驟1022,根據所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成消息令牌,并將所述移動終端設備標識號、用戶帳號標識信息和消息令牌存儲。
如果是首次發送消息令牌獲取請求時,根據上傳的移動終端設備標識號、應用程序名稱和用戶帳號標識信息來生成相應的消息令牌,并將首次發送來的相關數據進行存儲,在首次獲取消息令牌后,在以后的每次觸發消息令牌獲取請求時,即可從數據庫6中直接獲取該消息令牌。
可選地,所述 步驟1001中,該消息令牌獲取請求中除了移動終端設備標識號、應用程序名稱和用戶帳號標識信息,還可包括對開發者帳號和密鑰進行的簽名,以及開發者帳號。
優選地,如圖所示本實施例在步驟1001之前還包括
步驟200,驗證開發者帳號合法驗證開發者帳號為有效,并且所述開發者帳號已經在數據庫中登記過所述開發者帳號對應的應用程序;
其中,驗證開發者帳號為有效是通過檢索開發者中心控制服務器中該開發者帳號已經注冊過則為有效。
步驟300,對接收到的所述消息令牌獲取請求中攜帶的簽名進行鑒權。具體鑒權過程可參見下面相關描述。可選地,步驟1003消息數據保存請求中,還可包括對開發者帳號和密鑰進行的簽名,以及開發者帳號。
該消息數據保存請求可由第三方服務器例如應用服務器發送的,或者該推送服務器的應用單元所發送。
同樣地,在步驟1003接收消息數據保存請求之前,也可經過步驟200和300 (圖中未示出)驗證開發者帳號是否合法,以及對接收到的所述消息數據保存請求中攜帶的簽名進行鑒權。
可選地,步驟1005所述消息數據查找請求除了包括消息令牌之外,也還可包括對開發者帳號和密鑰進行的簽名,以及開發者帳號。
同樣地,在步驟1005接收攜帶有所述消息令牌的消息數據查找請求之前,也可經過步驟200和300 (圖中未示出)驗證開發者帳號是否合法,以及對接收到的消息數據查找請求中攜帶的簽名進行鑒權。
步驟200和300可以是由推送服務器中的驗證單元進行,或者由第三方服務器例如接入服務器來進行。
優選地,當所述消息數據保存請求中還攜帶有開發者帳號時,本申請實施例在步驟1003接收包括消息令牌及其對應的消息數據的消息數據保存請求和步驟1004根據消息令牌存儲其對應的消息數據之間還包括
比較接收到消息數據保存請求中攜帶的該消息令牌與存儲的消息令牌是否一致; 比較根據消息數據保存請求還攜帶的開發者帳號在數據庫中查找到記錄的其對應的應用程序名稱與根據該攜帶的消息令牌查找到的應用程序名稱比較是否一致,根據比較結果的一致性,判斷此消息令牌的有效性(步驟1030),即如果均一致則具備有效性。如果消息令牌具備有效性,則可進行消息數據存儲。這樣可以防止應用服務器仿造消息令牌,來攻擊其他的應用,以提高應用的安全性。
本申請該實施例通過將消息令牌與移動終端標識號、應用程序名稱和用戶帳號標識信息相對應,實現了針對一個移動終端上的一個應用程序的一個用戶帳號進行消息數據的精確推送。
上面描述了本申請實施例消息推送方法,下面描述來實現該推送方法的消息推送裝置。如圖3所示,本申請實施例消息推送裝置是針對客戶端而言的,該消息推送裝置包括
令牌請求發送單元31,用于發送消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;
令牌接收單元32,用于接收所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
消息請求發送單元33,用于發送攜帶有所述消息令牌的消息數據查找請求;
消息接收單元3 4,用于接收根據所述消息令牌查找出的所述消息令牌所匹配的消息數據。
如圖所示,本申請消息推送裝置還包括
帳號密鑰接收單元35,用于接收開發者帳號和密鑰進行存儲。
轉發單元36,用于轉發所述用戶帳號標識信息與接收到的所述消息令牌。
如圖4所示,為本申請另一實施例消息推送裝置,該消息推送裝置是針對服務器端而言的,該消息推送裝置包括
令牌請求接收單元41,用于接收消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;
令牌發送單元42,發送所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
消息保存接收單元43,用于接收消息數據保存請求,所述消息數據保存請求包括所述消息令牌及其對應的消息數據,或者應用程序名稱和應用程序版本及其對應的消息數據;
保存處理單元44,用于根據所述消息令牌或者應用程序名稱和應用程序版本存儲其對應的消息數據;
消息請求接收單元45,用于接收攜帶有所述消息令牌的消息數據查找請求;
消息發送單元46,用于發送根據所述消息令牌從所述存儲的消息數據中查找出的所述消息令牌所匹配的消息數據。
該消息推送裝置還包括
接收單元,用于接收開發者帳號、所述應用程序名稱和應用程序版本進行對應存儲。
如圖所示,該消息推送裝置還包括
檢索單元48,用于在數據庫中檢索所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;
令牌取出單元49,用于如果存在所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌,則取出該消息令牌;
令牌生成單元50,用于如果不存在所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌,則根據所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成消息令牌,并將所述移動終端設備標識號、用戶帳號標識信息和消息令牌存儲進數據庫60中。
該消息推送裝置還包括
驗證單元,用于驗證所述消息令牌獲取請求、消息數據保存請求或消息數據查找請求中攜帶的開發者帳號為有效,并且所述攜帶的開發者帳號已經在數據庫中登記過所述開發者帳號對應的應用程序;
鑒權單元,用于對接收到的所述消息令牌獲取請求、消息數據保存請求或消息數據查找請求中攜帶的簽名進行鑒權。
該消息推送裝置還包括
第一比較單元,用于比較所述攜帶的所述消息令牌與存儲的消息令牌;
第二比較單元,用于比較根據所述消息數據查找請求中攜帶的開發者帳號查找到的存儲的應用程序名稱與根據所述攜帶的所述消息令牌查找到的存儲的應用程序名稱。
根據該第一比較單元和第二比較單元的比較,確定消息令牌的有效性,如果有效, 則進行消息數據存儲。該第一比較單元和第二比較單元可以防止應用服務器仿造消息令牌,來攻擊其他的應用,以提高應用的安全性。
本申請該實施例通過將消息令牌與移動終端標識號、應用程序名稱和用戶帳號標識信息相對應,實現了針對一個移動終端上的一個應用程序的一個用戶帳號進行消息數據的精確推送。
下面介紹本申請移動終端側而言的消息推送方法和服務器側而言的消息推送方法在實際應用中的綜合過程。參見圖5,其示出了實際應用過程中的本申請消息推送方法的過程示意圖;以及圖6,其示出了本申請實際應用過程中的消息推送方法的信令方式流程圖。為了便于理解,在下面描述的過程中涉及的各個設備可參見圖7,其示出了本申請在實際應用中消息推送系統的示意圖。該消息推送方法包括
步驟10,應用服務器2向開發者中心控制服務器3注冊開發者帳號,獲取到與開發者帳號唯一對應的密鑰。
具體地,如圖6所示的信令方式流程圖中,步驟10可包括以下過程
步驟201,應用服務器2向開發者中心控制服務器3注冊開發者帳號,申請成為合法的開發者;
步驟202,開發者中心控制服務器3生成唯一的開發者帳號和密鑰,返回給應用服務器2。以后應用服務器2的每次請求,應用服務器2都需要帶上開發者帳號和密鑰這2個值進行加密鑒權(即下面將描述的驗證應用服務器的合法性)。
其中,通常應用服務器對應一個應用程序,因此應用服務器的開發者帳號和密鑰也就是該應用程序的開發者帳號和密鑰。開發者中心控制服務器將應用程序所對應的應用服務器注冊的開發者帳號、密鑰以及應用程序名稱、版本等信息進行記錄,并通知推送服務器已經經過注冊的開發者帳號、應用程序名稱和版本,推送服務器將記錄這些信息,如圖6 中2021所示。
步驟11,根據移動終端I上的應用程序對應的開發者帳號和簽名,以及移動終端設備標識號、應用程序名稱和用戶帳號標識信息,移動終端向推送服務器5獲取應用程序對應的消息令牌,并將所述消息令牌發送給應用服務器2 ;
其中,用戶在移動終端下載安裝該應用程序后,該應用程序攜帶有該開發者帳號和密鑰,以及應用程序名稱和版本信息,并保存在移動終端上;以及用戶在該應用程序上注冊用戶帳號,在移動終端上生成該用戶帳號相對應的用戶帳號標識信息,并保存在該移動終端上。用戶帳號標識信息是標識各個應用程序的用戶(也即用戶帳號)的唯一標識;因此,移動終端I上保存有移動終端設備標識號、某應用程序的開發者帳號和密鑰、應用程序名稱、版本和該應用程序的用戶帳號標識信息等信息,以及與這些信息相對應的下面將描述的消息令牌。
具體地,如圖2所示的信令方式流程圖中,該步驟11具體為
如圖6中的步驟203,所述移動終端I通過HTTP協議向接入服務器4發起所述應用程序的消息令牌獲取請求,該消息令牌獲取請求包括對該應用程序的開發者帳號和密鑰進行的簽名,以及第一傳輸數據,該第一傳輸數據包括開發者帳號、應用程序名稱、應用程序版本和用戶帳號標識信息以及移動終端設備標識號;
其中,對開發者帳號和`密鑰進行簽名的規則可以是,利用加密算法信息摘要算法 5 (message digest algorithm 5,簡稱md5)對開發者帳號、密鑰、業務參數以及時間戳進行加密計算。其中業務參數包括應用程序名稱、應用程序版本和用戶帳號標識信息以及移動終端設備標識號等這些第一傳輸數據。除此之外業務參數還可包括應用程序接口名稱和應用程序協議版本,因此第一傳輸數據還包括時間戳、應用程序接口名稱和應用程序協議版本這些與應用程序相關的參數。
可選地,其他的業務參數可根據實際情況選取,例如指定響應格式、透傳字段、上述輸入的參數的簽名等,如果業務參數還包括這些數據,那么第一傳輸數據也相應地包括這些數據。
優選地,上述消息令牌獲取請求除了攜帶了開發者帳號、應用程序名稱、應用程序版本和用戶帳號標識信息以及移動終端設備標識號這些第一傳輸數據之外,還攜帶應用程序接口名稱、應用程序協議版本這些第一傳輸數據。即消息令牌獲取請求攜帶有簽名,以及用于進行簽名計算的除了密鑰之外的所有數據。
如圖6中的步驟204,接入服務器4在驗證開發者帳號合法后,根據對簽名進行鑒權,來驗證移動終端的合法性,同時對第一傳輸數據進行安全校驗。合法性驗證和安全校驗通過后,將所述消息令牌獲取請求通過遠程調用協議,轉發給所述推送服務器;
其中,遠程調用協議可以使用遠程調用的服務框架(High-speed Service Framework,簡稱HSF),也可以使用其他應用程序相應的遠程調用協議。
在步驟204之前執行的驗證開發者帳號合法過程為步驟2041接入服務器4根據接收到的開發者帳號,向開發者中心控制服務器3請求開發者帳號相對應的密鑰;如果開發者中心控制服務器3查找到該開發者帳號,證明該開發者帳號是有效地,則將相對應的密鑰發送給接入服務器4 ;步驟2042隨后接入服務器4向推送服務器5查詢該開發者帳號是否已在其數據庫中登記過應用程序,如果在推送服務器5中查找到該應用程序名稱,則證明該開發者帳號已經在推送服務器中登記過該應用程序,此時完成了驗證開發者帳號合法。
步驟204,接入服務器4對簽名進行鑒權利用該密鑰對傳遞過來的第一傳輸數據 (時間戳、開發者帳號、應用程序名稱、應用程序版本、用戶帳號標識信息和移動終端設備標識號,優選地還包括應用程序接口名稱、應用程序協議版本)進行加密算法md5生成簽名, 將該簽名與之前接收到的移動終端發送的簽名相比較,如果一致,則鑒權通過,驗證該移動終端為合法。
對第一傳輸數據進行安全校驗主要是對開發者帳號、應用程序名稱、應用程序版本、用戶帳號標識信息以及移動終端設備標識號,還有應用程序接口名稱和應用程序協議版本這些數據進行規則校驗,比如數字、字符串、長度是否合法符合規定。符合這些規則,則第一傳輸數據安全。安全校驗可采用現有技術實現,此處不再贅述。
如圖6中的步驟205,推送服務器5根據移動終端設備標識號、應用程序名稱和用戶帳號標識信息在數據庫中檢索消息令牌;
如圖6中的步驟206通過HSF返回給所述接入服務器,接入服務器4通過HTTP協議發送給所述移動終端I ;
上述步驟205獲取的具體過程可以是推送服務器5從數據庫6中,檢索所述移動終端設備標識號(如IMEI, International Mobil e Equipment Identity,國際移動設備身份碼)、應用程序名稱和用戶帳號標識信息(userinfo)所對應的消息令牌;
如果所述數據庫6存在對應的所述消息令牌,則將消息令牌取出;與此同時,如果發現消息令牌獲取請求中攜帶的應用程序版本與數據庫中存在應用程序版本不同時,可以將應用程序版本的升級版本取出,和消息令牌一起返回給接入服務器;
其中,應用程序版本的升級版本是應用服務器2在每次更新應用程序版本時,通過接入服務器4存儲進推送服務器5的數據庫6中的;
如果所述數據庫6不存在對應的所述消息令牌,則根據所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成所述消息令牌,并將消息令牌獲取請求攜帶的移動終端設備標識號、用戶帳號標識信息以及生成的消息令牌存儲于數據庫6中;
優選地,在數據庫6中以列表的形式進行保存這些數據,其中一行記錄存儲的是開發者帳號、一個應用程序名稱、應用程序版本、一個移動終端設備標識號,該應用程序的一個用戶帳號標識信息以及由這個應用程序名稱、用戶帳號標識信息和移動終端設備標識號生成的消息令牌;
由于消息令牌是由移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成的,因此該消息令牌指向特定的移動設備上特定的應用程序所對應的特定的用戶帳號。推送服務器通過存儲的這些記錄,實現了在對移動終端應用程序推送消息數據時,不會出現消息數據被別的應用程序接收了或者被應用程序的別的用戶帳號接收的情況。
如圖6中的步驟206,接入服務器4通過HTTP協議返回消息令牌給移動終端;步驟 207移動終端將消息令牌,與應用程序的開發者帳號和密鑰相對應保存,然后將該消息令牌和用戶帳號標識信息發送給應用服務器。移動終端和應用服務器之間的通信方式可由應用服 務器決定。
如圖6中的步驟208,應用服務器2根據用戶帳號標識信息,維護該應用程序的用戶帳號和消息令牌之間的對應關系,即該用戶帳號標識信息標識的用戶帳號唯一對應該消息令牌,這樣當應用服務器有消息數據要推送給該用戶帳號時,可以通過該用戶帳號查詢到消息令牌,然后通過攜帶有該消息令牌和消息數據的消息數據保存請求發送給推送服務器進行存儲。此時,在應用服務器2上保存了開發者帳號和密鑰,用戶帳號標識信息,以及消息令牌。
其中,移動終端I向推送服務器5獲取應用程序對應的所述消息令牌可以是在用戶狀態信息改變、應用程序版本更新和/或預先設定的時間間隔來注冊獲取所述消息令牌時進行的。具體來說,當移動終端上的該應用程序發生用戶帳號切換、用戶帳號注銷時,移動終端可發起向推送服務器發起消息令牌獲取請求;或者當應用程序版本升級時,也可發起向推送服務器發起消息令牌獲取請求;甚至可以按照移動終端用戶設定的時間間隔,移動終端獲取該應用程序的當前用戶帳號下的消息令牌。
對于不同的應用程序,獲取消息令牌也可以在安裝的時候就觸發,有些應用程序還可以在移動終端掛起服務時,如上面描述的按照設定的時間間隔來注冊獲取消息令牌, 具體在什么時候觸發獲取消息令牌,上述僅僅為示例,并不做限制,根據具體不同的應用程序來具體設定。
移動終端I上的各個應用程序在向推送服務器5獲取消息令牌時,如果是首次向推送服務器5獲取時(即如上所描述的在數據庫6中不存在消息令牌時),推送服務器5按照上傳的移動終端設備標識號、應用程序名稱和用戶帳號表示信息這些參數來相應生成消息令牌,并將首次發送來的相關數據進行存儲,在首次注冊獲取消息令牌后,在每次觸發獲取消息令牌時,即可從數據庫6中直接獲取。
步驟12,根據接收到的經過校驗的來自所述應用服務器2的所述消息令牌,或者應用程序名稱和應用程序版本的信息,所述推送服務器5將接收到的消息數據存儲;
具體地,所述步驟12為
如圖6中的步驟209,應用服務器2通過HTTP協議向接入服務器4發起消息數據保存請求,所述消息數據保存請求攜帶有對開發者帳號和密鑰的簽名,第二傳輸數據,該第二傳輸數據包括開發者帳號、消息令牌或者應用程序名稱和應用程序版本,以及消息數據;
其中,消息數據主要包括消息內容、消息類型和消息的保存時間。群存消息的時候,消息數據保存請求可攜帶應用程序名稱和應用程序版本,而消息單存即存儲私有消息的時候,消息數據保存請求僅攜帶消息令牌。這些消息數據可以是物流信息、更新信息、促銷信息、圖片或者視頻等等各種增值消息中的至少一種。
如圖6中的步驟210,接入服務器4在驗證開發者帳號合法后,根據對簽名進行鑒權,來驗證應用服務器2的合法性,以及對攜帶的第二傳輸數據進行安全校驗,并將所述消息數據保存請求轉發給推送服務器5 ;
即先執行步驟2041和2042所示的過程,然后執行步驟210鑒權后轉發給服務器。
對開發者帳號和密鑰進行簽名的規則與上述描述的一致,在此不再贅述。
驗證開發者帳號合法同上面描述的步驟2041和2042所示的過程一致。
對簽名進行鑒權來驗證應用服務器合法性和上面步驟204描述的相似,不同之處在于利用第二傳輸數據進行加密算法md5生成簽名,在此不再贅述。
對第二傳輸數據進行安全校驗與上面描述的對第一傳輸數據進行安全校驗相似。
如果在消息數據保存請求中·攜帶有消息令牌,則說明是私有消息,是指定向一移動終端的該應用程序的一用戶帳號推送的消息。如圖2中的步驟211,推送服務器5查看該消息令牌與存儲的消息令牌是否一致,如果一致,再根據開發者帳號在數據庫6中查找到記錄的其對應的應用程序名稱,與根據該消息令牌在數據庫6中查找到的應用程序名稱比較是否一致,以判斷此消息令牌的有效性(一致則有有效性),如果消息令牌具有有效性, 則根據消息令牌,將該消息數據即私有消息相應于數據庫中的記錄位置進行存儲,通過遠程調用協議返回請求的完成結果給接入服務器4。判斷此消息令牌的有效性是為了防止應用服務器仿造消息令牌,來攻擊其他的應用。私有消息是針對特定用戶帳號發送的消息數據。
當群發消息時,推送服務器5根據消息數據保存請求攜帶的應用程序名稱和應用程序版本,檢索數據庫,在滿足該應用程序名稱和應用程序版本的記錄的對應位置,存儲該消息數據。
本申請利用消息數據保存請求中攜帶應用程序名稱和應用程序版本可以實現對所有使用該應用程序的用戶帳號進行消息數據的存儲,以便實現對凡是安裝了該應用程序的所有移動終端下的該應用程序的所有用戶帳號進行消息推送,即實現了群發消息數據。
如圖6中的步驟212,接入服務器4通過HTTP協議返回發送消息數據保存請求的結果如成功給應用服務器2。
步驟13,根據接收到的經過校驗的所述移動終端I的所述消息令牌,所述推送服務器5從所述存儲的所述消息數據中匹配所述消息令牌相對應的所述消息數據,并將所述消息數據發送給所述移動終端。
具體地,步驟13為
如圖6中的步驟213,移動終端I通過HTTP協議向接入服務器4每隔一段時間發起消息數據查找請求,所述消息數據查找請求包括對對開發者帳號和密鑰進行的簽名,以及第三傳輸數據,該第三傳輸數據包括開發者帳號和該應用程序某用戶帳號對應的消息令牌;
如圖6中的步驟214,接入服務器4在驗證開發者帳號合法后,根據簽名進行鑒權, 來驗證移動終端I的合法性,以及對第三傳輸數據(開發者帳號和消息令牌)進行安全校驗,并將消息數據查找請求通過遠程調用協議轉發給推送服務器5 ;
即先執行步驟2041和2042所示的過程,然后執行步驟214鑒權后轉發給服務器。
其中,對開發者帳號和密鑰進行簽名的規則與上述描述的一致,在此不再贅述。
驗證開發者帳號合法同上面描述的步驟2041和2042所示的過程一致。
對簽名進行鑒權來驗證移動終端I的合法性同在步驟204中描述的相似,不同之處在于利用第三傳輸數據進行加密算法md5生成簽名,在此不再贅述。
對第三傳輸數據進行安全校驗同上述所描述的。
如圖6中的步驟215,推送服務器5收到消息數據查找請求,根據消息令牌檢索數據庫6中存儲的消息數據,將匹配的消息數據的列表通過hsf發送給接入服務器4 ;其中, 要按照一定列表大小來做截取,再將這些消息數據的列表發送給接入服務器4。
如圖6中的步驟216,接入服務器4通過HTTP協議將列表發送給移動終端I,從而完成消息數據的推送。
在上述過程中,數據庫6保存有開發者帳號、應用程序名稱、應用程序版本、移動終端設備標識號(imei)、標識各個應用程序的用戶帳號的唯一標識的用戶帳號標識信息、 消息令牌以及數據消息,這些信息成對應關系存儲。即通過令牌消息即可獲取到相應的應用程序名稱、應用程序版本、移動終端設備標識號(imei)、用戶帳號標識信息和數據消息。
用戶帳號標識信息在當一個應用程序有多個用戶帳號時可以唯一指定消息數據是對應某個用戶帳號,防止出現將消息數據推送給了同一應用程序的其他用戶帳號。
上述推送服務器5向移動終端推送應用程序的相關消息時,是由移動終端主動發起消息數據查找請求,推送服務器5根據該消息數據查找請 求進行消息的推送,因此本申請實現了由移動終端主動發起來請求獲取待推送的消息。
上述步驟11、步驟12和步驟13描述的三個過程中,在接入推送服務器5之前都需要經過接入服務器4的驗證校驗,因此,利用了第三方接入服務器4來進行合法性驗證和安全校驗,可以避免像現有技術中只有具有獨有的設備證書的ihone手機才能與蘋果推送服務器進行驗證接入這樣的情況,可以實現所有移動終端通過接入服務器接入推送服務器獲取消息,而無需特定的移動終端。
下面,介紹本申請消息推送裝置在實際應用中的消息推送系統。參見圖7本申請消息推送的系統示意圖。該消息推送的系統包括移動終端1、應用服務器2、開發者中心控制服務器3、接入服務器4、推送服務器5以及數據庫6。
移動終端1,用于獲取所述應用程序對應的消息令牌,并將所述消息令牌發送;
應用服務器2,用于接收所述移動終端發送的所述消息令牌,并發送消息數據保存請求進行消息數據存儲;
推送服務器5,用于根據移動終端上的應用程序對應的開發者帳號和密鑰,以及移動終端設備標識號、應用程序名稱和用戶帳號標識信息獲得所述消息令牌,并將所述消息令牌發送給移動終端;根據接收到的經過校驗的來自所述應用服務器的消息數據保存請求中的所述消息令牌或者應用程序名稱和應用程序版本進行消息數據存儲;以及根據接收到的經過校驗的所述移動終端的消息數據查找請求中的所述消息令牌,從所述存儲的消息數據中匹配所述消息令牌相對應的所述消息數據,并將所述消息數據發送給所述移動終端。
接入服務器4,用于根據所述簽名驗證所述移動終端的合法性,對第一傳輸數據進行安全校驗,所述第一傳輸數據包括所述開發者帳號、移動終端設備標識號、應用程序名稱、應用程序版本和用戶帳號標識信息;根據所述簽名驗證所述應用服務器的合法性,以及對所述應用服務器發送的第二傳輸數據進行安全校驗,所述第二傳輸數據包括所述開發者帳號、消息令牌或者應用程序名稱和應用程序版本和消息數據,并將所述消息數據保存請求轉發給推送服務器;以及對所述移動終端發送的第三傳輸數據進行安全校驗,所述第三傳輸數據包括所述開發者帳號和消息令牌,并將所述消息數據查找請求轉發給推送服務器。
開發者中心控制服務器3,用于所述應用服務器注冊所述開發者帳號,生成與所述開發者帳號唯一對應的密鑰并發送給所述應用服務器。
數據庫6,保存有開發者帳號、應用程序名稱、應用程序版本、移動終端設備標識號、用戶帳號標識信息、消息令牌以及數據消息,這些信息成對應關系存儲。
其中,通常應用服務器對應一個應用程序,因此應用服務器的開發者帳號和密鑰也就是該應用程序的開發者帳號和密鑰,在移動終端用戶將該應用程序下載安裝后,該應用程序就攜帶有該開發者帳號和密鑰,保存在移動終端上;以及開發者中心控制服務器3 也將應用程序所對應的應用服務器注冊的開發者帳號、密鑰以及應用程序名稱、版本這些信息進行記錄,并向推送服務器5通知已經經過注冊的開發者帳號、應用程序名稱和版本, 推送服務器將記錄這些信息。
其中,用戶帳號標識信息是標識各個應用程序的用戶的唯一標識;移動終端I上保存有移動終端設備標識號、某應用程序的開發者帳號和密鑰、應用程序名稱、版本和該應用程序的用戶帳號標識信息等這些信息,以及與這些信息相對應的消息令牌。
在數據庫6中可以優選地以列表的形式進行保存這些數據,其中一行記錄存儲的是開發者帳號、一個應用程序名稱、應用程序版本、一個移動終端設備標識號,該應用程序的一個用戶帳號標識信息以及由這個應用程序名稱、用戶帳號標識信息和移動終端設備標識號生成的消息令牌;
由于消息令牌是由移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成的,因此該消息令牌指向特定的移動設備上特定的應用程序所對應的特定的用戶帳號。推送服務器通過存儲的這些記錄,實現了在對移動終端應用程序推送消息數據時,不會出現消息數據被別的應用程序接收了或者被應用程序的別的用戶帳號接收的情況。
該消息推送系統可執行上述方法所示的具體過程,在此不再贅述。這樣可以避免像現有技術中只有具有獨有的設備證書的ihone手機才能與蘋果推送服務器進行驗證接入這樣的情況,可以實現所有移動終端通過接入服務器接入推送服務器獲取消息,而無需特定的移動終端。
本申請消息令牌和應用程序名稱、移動終端設備標識號和用戶帳號標識信息綁定,消息會精確地投遞到所屬的第三方應用,且支持消息群發,并且移動終端和服務器之間采用HTTP短連接,可以在任何移動終端上使用,并且沒有保活長連接的問題。
本領域普通技術人員應該還可以進一步意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結合來實現,為了清楚地說明硬件和軟件的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執行,取決于技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本申請的范圍。
結合本文中所公開的實施例描述的方法或算法的步驟可以用硬件、處理器執行的軟件模塊,或者二者的結合來實施。軟件模塊可以置于隨機存儲器(RAM)、內存、只讀存儲器 (ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或技術領域內所公知的任意其它形式的存儲介質中。
以上所述的具體實施方式
,對本申請的目的、技術方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本申請的具體實施方式
而已,并不用于限定本申請的保護范圍,凡在本申請的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本申請的保護范圍之 內。
權利要求
1.一種消息推送方法,其特征在于,包括發送消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;接收所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;發送攜帶有所述消息令牌的消息數據查找請求;接收根據所述消息令牌查找出的所述消息令牌所匹配的消息數據。
2.根據權利要求1所述的消息推送方法,其特征在于,所述消息令牌是根據所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成的。
3.根據權利要求1所述的消息推送方法,其特征在于,所述發送消息令牌獲取請求是在用戶狀態信息改變、應用程序版本更新和/或預先設定的時間間隔來注冊獲取所述消息令牌時進行的。
4.根據權利要求1所述的消息推送方法,其特征在于,還包括接收開發者帳號和密鑰進行存儲。
5.根據權利要求1所述的消息推送方法,其特征在于,還包括轉發所述用戶帳號標識信息與接收到的所述消息令牌。
6.—種消息推送方法,其特征在于,包括接收消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;發送所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;接收消息數據保存請求,所述消息數據保存請求包括所述消息令牌及其對應的消息數據,或者應用程序名稱和應用程序版本以及其對應的消息數據;根據所述消息令牌或者應用程序名稱和應用程序版本存儲其對應的消息數據;接收攜帶有所述消息令牌的消息數據查找請求;發送根據所述消息令牌從所述存儲的消息數據中查找出的所述消息令牌所匹配的消息數據。
7.根據權利要求6所述的消息推送方法,其特征在于,還包括接收開發者帳號、所述應用程序名稱和應用程序版本并對應存儲。
8.根據權利要求6所述的消息推送方法,其特征在于,在所述接收消息令牌獲取請求之后,所述發送所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌之前,還包括在數據庫中檢索所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;如果存在所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌,則取出該消息令牌;如果不存在所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌,則根據所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成消息令牌,并存儲所述移動終端設備標識號、用戶帳號標識信息及對應的消息令牌。
9.根據權利要求6所述的消息推送方法,其特征在于,還包括 驗證所述消息令牌獲取請求、消息數據保存請求或消息數據查找請求中攜帯的開發者帳號為有效,并且所述攜帶的開發者帳號已經在數據庫中登記過所述開發者帳號對應的應用程序; 對接收到的所述消息令牌獲取請求、消息數據保存請求或消息數據查找請求中攜帶的簽名進行鑒權。
10.根據權利要求6所述的消息推送方法,其特征在干, 在所述接收消息數據保存請求之后,所述根據所述消息令牌存儲其對應的消息數據之前,還包括 比較攜帶的所述消息令牌與存儲的消息令牌,當比較結果為一致時,執行 比較根據所述消息數據查找請求中攜帯的開發者帳號查找到的存儲的應用程序名稱與根據所述攜帯的所述消息令牌查找到的存儲的應用程序名稱;當比較結果為一致吋,執行根據所述消息令牌存儲其對應的消息數據的步驟。
11.ー種消息推送裝置,其特征在于,包括 令牌請求發送単元,用于發送消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息; 令牌接收單元,用于接收所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌; 消息請求發送単元,用于發送攜帯有所述消息令牌的消息數據查找請求; 消息接收單元,用于接收根據所述消息令牌查找出的所述消息令牌所匹配的消息數據。
12.根據權利要求11所述的消息推送的方法,其特征在于,還包括 帳號密鑰接收単元,用于接收開發者帳號和密鑰進行存儲。
13.根據權利要求11所述的消息推送的方法,其特征在于,還包括 轉發單元,用于轉發所述用戶帳號標識信息與接收到的所述消息令牌。
14.ー種消息推送裝置,其特征在于,包括 令牌請求接收單元,用于接收消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息; 令牌發送單元,用于發送所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌; 消息保存接收單元,用于接收消息數據保存請求,所述消息數據保存請求包括所述消息令牌及對應的消息數據,或者應用程序名稱和應用程序版本以及其對應的消息數據;保存處理單元,用于根據所述消息令牌或者應用程序名稱和應用程序版本存儲其對應的消息數據; 消息請求接收單元,用于接收攜帯有所述消息令牌的消息數據查找請求; 消息發送單元,用于發送根據所述消息令牌從所述存儲的消息數據中查找出的所述消息令牌所匹配的消息數據。
15.根據權利要求14所述的消息推送方法,其特征在于,還包括 接收單元,用于接收開發者帳號、所述應用程序名稱和應用程序版本進行對應存儲。
16.根據權利要求14所述的消息推送的方法,其特征在于,還包括 檢索單元,用于在數據庫中檢索所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌; 令牌取出単元,用于如果存在所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌,則取出該消息令牌; 令牌生成単元,用于當不存在所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌時,根據所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息生成消息令牌,并存儲所述移動終端設備標識號、用戶帳號標識信息及對應的消息令牌。
17.根據權利要求14所述的消息推送方法,其特征在于,還包括 驗證單元,用于驗證所述消息令牌獲取請求、消息數據保存請求或消息數據查找請求中攜帯的開發者帳號為有效,并且所述攜帶的開發者帳號已經在數據庫中登記過所述開發者帳號對應的應用程序; 鑒權單元,用于對接收到的所述消息令牌獲取請求、消息數據保存請求或消息數據查找請求中攜帯的簽名進行鑒權。
18.根據權利要求14所述的消息推送方法,其特征在于,還包括 第一比較單元,用于比較所述攜帶的所述消息令牌與存儲的消息令牌是否一致; 第二比較單元,用于比較根據所述消息數據查找請求中攜帯的開發者帳號查找到的存儲的應用程序名稱與根據所述攜帯的所述消息令牌查找到的存儲的應用程序名稱是否ー致。
全文摘要
本申請涉及一種消息推送方法及裝置,該方法包括發送消息令牌獲取請求,所述消息令牌獲取請求包括移動終端設備標識號、應用程序名稱和用戶帳號標識信息;接收所述移動終端設備標識號、應用程序名稱和用戶帳號標識信息所對應的消息令牌;發送攜帶有所述消息令牌的消息數據查找請求;接收根據所述消息令牌查找出的所述消息令牌所匹配的消息數據。因此,本申請適用于任何移動終端,不需要維護保活握手;將消息令牌和軟件名稱、移動終端設備標識號和用戶帳號標識信息綁定在一起,消息可以精確地投遞給移動終端。
文檔編號H04W4/12GK103037312SQ20111030298
公開日2013年4月10日 申請日期2011年10月8日 優先權日2011年10月8日
發明者陳虓將, 陳瑛 申請人:阿里巴巴集團控股有限公司