亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

推送消息獲取、消息推送方法及裝置的制造方法

文檔序號:10555666閱讀:332來源:國知局
推送消息獲取、消息推送方法及裝置的制造方法
【專利摘要】本發(fā)明實施例提供的推送消息獲取、消息推送方法及裝置,可以向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;接收目標(biāo)服務(wù)器根據(jù)第一請求反饋的請求結(jié)果;在根據(jù)請求結(jié)果確認目標(biāo)服務(wù)器中存在待推送消息的新版本時,向目標(biāo)服務(wù)器發(fā)送獲取新版本的待推送消息的第二請求;接收目標(biāo)服務(wù)器根據(jù)第二請求推送的新版本的待推送消息。由于目標(biāo)服務(wù)器并不依賴于自身是否保存有客戶端的registerID數(shù)據(jù),而是在接收到客戶端發(fā)送的獲取新版本的待推送消息的第二請求后,便向客戶端推送消息,因此,應(yīng)用本發(fā)明實施例提供的方案,客戶端成功獲取目標(biāo)服務(wù)器推送的消息的概率高,服務(wù)器向客戶端成功推送消息的概率也高。
【專利說明】
推送消息獲取、消息推送方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及消息推送技術(shù)領(lǐng)域,特別是涉及推送消息獲取、消息推送方法及裝置。
【背景技術(shù)】
[0002]客戶端開發(fā)商為了提高其客戶端的活躍度,引起用戶關(guān)注,激發(fā)用戶對其客戶端的使用欲望,同時喚醒沉睡用戶,增加用戶粘性,使客戶端獲得長久的生命力和更強大的市場競爭力,不可避免地要從服務(wù)器向客戶端推送消息。
[0003]以基于安卓操作系統(tǒng)的客戶端為例,現(xiàn)有技術(shù)中一般是通過Google提供的GCM(Google Cloud Messaging)服務(wù)來實現(xiàn)消息推送的,具體過程如下:
[0004]客戶端向其對應(yīng)的開發(fā)商服務(wù)器發(fā)送消息推送請求后,服務(wù)器從其本地存儲的registerID(注冊標(biāo)識)數(shù)據(jù)庫中獲得上述客戶端的registerID,并確定要推送的消息,然后對所獲得的registerID和上述要推送的消息進行數(shù)據(jù)封裝處理,并將封裝后的數(shù)據(jù)發(fā)送至GCM服務(wù)器,由GCM服務(wù)器根據(jù)上述封裝后的數(shù)據(jù)向客戶端推送上述待推送消息。
[0005]其中,registerID是客戶端請求GCM服務(wù)器生成的,客戶端獲得GCM服務(wù)器反饋的register ID后,將其發(fā)送至上述開發(fā)商服務(wù)器,上述開發(fā)商服務(wù)器將該register ID存儲至本地的registerID數(shù)據(jù)庫中,以備后續(xù)消息推送。
[0006]客戶端一般能夠應(yīng)用上述方式獲得推送消息,但是由于通過GCM服務(wù)器向客戶端推送消息時,上述封裝后的數(shù)據(jù)中必須包含客戶端的registerID,GCM服務(wù)器才能成功進行消息推送,所以,只有上述registerID數(shù)據(jù)庫中存儲有該客戶端的registerID的情況下才能應(yīng)用上述方式實現(xiàn)消息推送。而實際應(yīng)用中由于客戶端未及時請求GCM服務(wù)器為其生成registerID或者由于GCM服務(wù)器自身因素?zé)o法及時為客戶端生成registerID等原因,上述registerID數(shù)據(jù)庫無法保證能夠存儲有所有客戶端的registerID,進而應(yīng)用上述方式成功獲取推送消息的概率偏低。

【發(fā)明內(nèi)容】

[0007]本發(fā)明實施例的目的在于提供推送消息獲取、消息推送方法及裝置,以解決客戶端成功獲取推送消息的概率偏低的技術(shù)問題。
[0008]為了實現(xiàn)上述目的,本發(fā)明實施例公開了一種推送消息獲取方法,應(yīng)用于客戶端,所述方法包括:
[0009]向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;
[0010]接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果;
[0011 ]在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;
[0012]接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。
[0013]優(yōu)選的,所述請求結(jié)果中攜帶所述待推送消息的版本信息;
[0014]所述在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求包括:
[0015]判斷所述請求結(jié)果中攜帶的版本信息是否高于本地存儲的所述待推送消息的版本信息;
[0016]若為是,判定所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本;
[0017]向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求。
[0018]優(yōu)選的,所述方法還包括:
[0019]接收第三方服務(wù)器推送的第一消息;
[0020]根據(jù)所述第一消息攜帶的消息標(biāo)識,判斷是否已接收過所述第一消息;
[0021 ]如果是,將所述第一消息丟棄;
[0022]否則,展示所述第一消息。
[0023]優(yōu)選的,所述方法還包括:
[0024]接收第三方服務(wù)器發(fā)送的獲取待推送的第二消息的第一指令;
[0025]根據(jù)所述第一指令,向所述目標(biāo)服務(wù)器發(fā)送獲取所述第二消息的第三請求;
[0026]接收所述目標(biāo)服務(wù)器根據(jù)所述第三請求推送的所述第二消息;
[0027]根據(jù)所述第二消息攜帶的消息標(biāo)識,判斷是否已接收過所述第二消息;
[0028]如果是,將所述第二消息丟棄;
[0029]否則,展示所述第二消息。
[0030]優(yōu)選的,所述方法還包括:
[0031]接收第三方服務(wù)器發(fā)送的獲取待推送的第三消息的第二指令,其中,所述第二指令攜帶有所述第三消息的消息標(biāo)識;
[0032]根據(jù)所述第三消息的消息標(biāo)識,判斷是否已接收過所述第三消息;
[0033]如果否,根據(jù)所述第二指令,向所述目標(biāo)服務(wù)器發(fā)送獲取所述第三消息的第四請求;
[0034]接收所述目標(biāo)服務(wù)器根據(jù)所述第四請求推送的所述第三消息。
[0035]優(yōu)選的,所述向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求包括:
[0036]按照預(yù)設(shè)的時間間隔向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求,其中,所述預(yù)設(shè)的時間間隔為:根據(jù)用戶的使用習(xí)慣確定的時間間隔。
[0037]優(yōu)選的,所述方法還包括:
[0038]檢測自身的基本信息是否發(fā)生變化;
[0039]如果是,向所述目標(biāo)服務(wù)器發(fā)送獲取所述待推送消息的第五請求;
[0040]接收所述目標(biāo)服務(wù)器根據(jù)所述第五請求推送的所述待推送消息。
[0041]為了實現(xiàn)上述目的,本發(fā)明實施例公開了一種消息推送方法,應(yīng)用于服務(wù)器,所述方法包括:
[0042]接收客戶端發(fā)送的針對待推送消息的版本的第一請求;
[0043]根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,并向所述客戶端發(fā)送所述請求結(jié)果;
[0044]接收所述客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求,其中,所述第二請求為:所述客戶端根據(jù)所述請求結(jié)果確認所述服務(wù)器中存在所述待推送消息的新版本時發(fā)送的;
[0045]根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息。
[0046]優(yōu)選的,所述第一請求攜帶所述客戶端存儲的所述待推送消息的第一版本信息;
[0047]所述根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,包括:
[0048]獲得本地存儲的所述待推送消息的第二版本信息;
[0049]根據(jù)所述第一版本信息和所述第二版本信息,判斷本地是否存在所述待推送消息的新版本;
[0050]根據(jù)判斷結(jié)果生成請求結(jié)果。
[0051 ]優(yōu)選的,所述獲得本地存儲的所述待推送消息的第二版本信息,包括:
[0052]根據(jù)所述客戶端的基本信息中的至少一種獲得本地存儲的所述待推送消息的第二版本信息;所述基本信息包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息。
[0053]優(yōu)選的,所述根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息,包括:
[0054]根據(jù)所述客戶端的基本信息中的至少一種以及所述第二請求,獲得所述待推送消息的新版本,并向所述客戶端推送所獲得的新版本的所述待推送消息;所述基本信息包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息。
[0055]為了實現(xiàn)上述目的,本發(fā)明實施例還公開了一種推送消息獲取裝置,應(yīng)用于客戶端,所述裝置包括:第一請求發(fā)送模塊、第一接收模塊、第二請求發(fā)送模塊和第一待推送消息接收模塊;
[0056]所述第一請求發(fā)送模塊,用于向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;
[0057]所述第一接收模塊,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果;
[0058]所述第二請求發(fā)送模塊,用于在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;
[0059]所述第一待推送消息接收模塊,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。
[0060]優(yōu)選的,所述第一接收模塊接收的所述請求結(jié)果中攜帶所述待推送消息的版本信息;
[0061]所述第二請求發(fā)送模塊包括:第一判斷子模塊、判定結(jié)果確定子模塊和第二請求發(fā)送子模塊,
[0062]所述第一判斷子模塊,用于判斷所述請求結(jié)果中攜帶的版本信息是否高于本地存儲的所述待推送消息的版本信息;
[0063]所述判定結(jié)果確定子模塊,用于在所述第一判斷子模塊獲得的判斷結(jié)果為是時,判定所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本;
[0064]所述第二請求發(fā)送子模塊,用于向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求。
[0065]優(yōu)選的,所述裝置還包括:
[0066]第一消息接收模塊,用于接收第三方服務(wù)器推送的第一消息;
[0067]第一判斷模塊,用于根據(jù)所述第一消息攜帶的消息標(biāo)識,判斷是否已接收過所述第一消息;
[0068]第一丟棄模塊,用于在所述第一判斷模塊獲得的判斷結(jié)果為是時,將所述第一消息丟棄;
[0069]第一展示模塊,用于在所述第一判斷模塊獲得的判斷結(jié)果為否時,展示所述第一消息。
[0070]優(yōu)選的,所述裝置還包括:
[0071]第一指令接收模塊,用于接收第三方服務(wù)器發(fā)送的獲取待推送的第二消息的第一指令;
[0072]第三請求發(fā)送模塊,用于根據(jù)所述第一指令,向所述目標(biāo)服務(wù)器發(fā)送獲取所述第二消息的第二請求;
[0073]第二消息接收模塊,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第三請求推送的所述第二消息;
[0074]第二判斷模塊,用于根據(jù)所述第二消息攜帶的消息標(biāo)識,判斷是否已接收過所述第二消息;
[0075]第二丟棄模塊,用于在所述第二判斷模塊獲得的判斷結(jié)果為是時,將所述第二消息丟棄;
[0076]第二展示模塊,用于在所述第二判斷模塊獲得的判斷結(jié)果為否時,展示所述第二消息。
[0077]優(yōu)選的,所述裝置還包括:
[0078]第二指令接收模塊,用于接收第三方服務(wù)器發(fā)送的獲取待推送的第三消息的第二指令,其中,所述第二指令攜帶有所述第三消息的消息標(biāo)識;
[0079]第三判斷模塊,用于根據(jù)所述第三消息的消息標(biāo)識,判斷是否已接收過所述第三消息;
[0080]第四請求發(fā)送模塊,用于在所述第三判斷模塊獲得的判斷結(jié)果為否時,根據(jù)所述第二指令,向所述目標(biāo)服務(wù)器發(fā)送獲取所述第三消息的第四請求;
[0081 ]第三消息接收模塊,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第四請求推送的所述第三消息。
[0082]優(yōu)選的,所述第一請求發(fā)送模塊,具體用于按照預(yù)設(shè)的時間間隔向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求,其中,所述預(yù)設(shè)的時間間隔為:根據(jù)用戶的使用習(xí)慣確定的時間間隔。
[0083]優(yōu)選的,所述裝置還包括:
[0084]基本信息檢測模塊,用于檢測自身的基本信息是否發(fā)生變化;
[0085]第五請求發(fā)送模塊,用于在所述基本信息檢測模塊獲得的檢測結(jié)果為是時,向所述目標(biāo)服務(wù)器發(fā)送獲取所述待推送消息的第五請求;
[0086]第二待推送消息接收模塊,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第五請求推送的所述待推送消息。
[0087]為了實現(xiàn)上述目的,本發(fā)明實施例還公開了一種消息推送裝置,應(yīng)用于服務(wù)器,所述裝置包括:第一請求接收模塊、請求結(jié)果發(fā)送模塊、第二請求接收模塊和推送模塊;
[0088]所述第一請求接收模塊,用于接收客戶端發(fā)送的針對待推送消息的版本的第一請求;
[0089]所述請求結(jié)果發(fā)送模塊,用于根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,并向所述客戶端發(fā)送所述請求結(jié)果;
[0090]所述第二請求接收模塊,用于接收所述客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求,其中,所述第二請求為:所述客戶端根據(jù)所述請求結(jié)果確認所述服務(wù)器中存在所述待推送消息的新版本時發(fā)送的;
[0091 ]所述推送模塊,用于根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息。
[0092]優(yōu)選的,所述第一請求攜帶所述客戶端存儲的所述待推送消息的第一版本信息;
[0093]所述請求結(jié)果發(fā)送模塊包括:第二版本獲取子模塊、判斷子模塊和請求結(jié)果生成子模塊,
[0094]所述第二版本獲取子模塊,用于獲得本地存儲的所述待推送消息的第二版本信息;
[0095]所述判斷子模塊,用于根據(jù)所述第一版本信息和所述第二版本信息,判斷本地是否存在所述待推送消息的新版本;
[0096]所述請求結(jié)果生成子模塊,用于根據(jù)所述判斷子模塊獲得的判斷結(jié)果生成請求結(jié)果O
[0097]優(yōu)選的,所述所述第二版本獲取子模塊,具體用于根據(jù)所述客戶端的基本信息中的至少一種獲得本地存儲的所述待推送消息的第二版本信息;所述基本信息包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息。
[0098]優(yōu)選的,所述推送模塊,具體用于根據(jù)所述客戶端的基本信息中的至少一種以及所述第二請求,獲得所述待推送消息的新版本,并向所述客戶端推送所獲得的新版本的所述待推送消息;所述基本信息包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息。
[0099]本發(fā)明實施例提供的推送消息獲取、消息推送方法及裝置,可以向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果;在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。由于目標(biāo)服務(wù)器并不依賴于自身是否保存有客戶端的registerID數(shù)據(jù),而是在接收到客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求后,便向客戶端推送消息,因此,應(yīng)用本發(fā)明實施例提供獲取推送消息的方案,客戶端成功獲取目標(biāo)服務(wù)器推送的消息的概率高;應(yīng)用本發(fā)明實施例提供的消息推送方案,月艮務(wù)器向客戶端成功推送消息的概率也高。當(dāng)然,實施本發(fā)明的任一產(chǎn)品或方法必不一定需要同時達到以上所述的所有優(yōu)點。
【附圖說明】
[0100]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0101]圖1為本發(fā)明實施例提供的一種推送消息獲取方法的流程圖;
[0102]圖2為本發(fā)明實施例提供的另一種推送消息獲取方法的流程圖;
[0103]圖3為本發(fā)明實施例提供的另一種推送消息獲取方法的流程圖;
[0104]圖4為本發(fā)明實施例提供的另一種推送消息獲取方法的流程圖;
[0105]圖5為本發(fā)明實施例提供的一種推送消息獲取裝置的結(jié)構(gòu)圖;
[0106]圖6為本發(fā)明實施例提供的另一種推送消息獲取裝置的結(jié)構(gòu)圖;
[0107]圖7為本發(fā)明實施例提供的另一種推送消息獲取裝置的結(jié)構(gòu)圖;
[0108]圖8為本發(fā)明實施例提供的另一種推送消息獲取裝置的結(jié)構(gòu)圖;
[0109]圖9為本發(fā)明實施例提供的一種消息推送方法流程圖;
[0110]圖10為本發(fā)明實施例提供的一種消息推送裝置結(jié)構(gòu)圖。
【具體實施方式】
[0111]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0112]本發(fā)明實施例提供了一種推送消息獲取方法及裝置,應(yīng)用于客戶端;相應(yīng)的,本發(fā)明實施例還提供了一種消息推送方法及裝置,應(yīng)用于服務(wù)器。下面分別進行說明。
[0113]首先對應(yīng)用于客戶端的一種推送消息獲取方法及裝置進行說明
[0114]如圖1所示,本發(fā)明實施例提供了一種推送消息獲取方法,應(yīng)用于客戶端,該方法包括:
[0115]S101、向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;
[0116]其中,目標(biāo)服務(wù)器可以僅僅是客戶端開發(fā)商提供的消息版本控制服務(wù)器,也可以為客戶端開發(fā)商提供的具有待推送消息的版本管理功能的其它服務(wù)器。
[0117]待推送消息,可以是客戶端開發(fā)商想要推送給客戶端的廣告、客戶端版本升級信息、時事新聞、新產(chǎn)品發(fā)布等消息。
[0118]待推送消息的版本,可以是待推送消息的時間版本,并由客戶端開發(fā)商配置在目標(biāo)服務(wù)器上。
[0119]第一請求可以僅攜帶客戶端的標(biāo)識,使目標(biāo)服務(wù)器根據(jù)客戶端的標(biāo)識以及目標(biāo)服務(wù)器上存儲的針對該客戶端消息版本控制記錄確認目標(biāo)服務(wù)器上是否存在待推送消息的新版本;
[0120]第一請求也可以攜帶客戶端存儲的待推送消息的第一版本信息,以使目標(biāo)服務(wù)器根據(jù)本地存儲的待推送消息的第二版本信息和第一請求中攜帶的待推送消息的第一版本信息,判斷目標(biāo)服務(wù)器中是否存在待推送消息的新版本。其中,第一版本信息可以是客戶端已經(jīng)接收的待推送消息的最新版本,第二版本信息可以是客戶端開發(fā)商新配置的待推送消息的版本信息。
[0121]具體的,客戶端可以周期性地向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;但是,當(dāng)周期性地向目標(biāo)服務(wù)器發(fā)送第一請求時,如果發(fā)送周期設(shè)置的較長,則達不到客戶端開發(fā)商向客戶端及時推送消息的目的;如果發(fā)送周期設(shè)置的較短,則不可避免的會在用戶的休息時間頻繁地向用戶推送消息,給用戶造成打擾。
[0122]因此,優(yōu)選的,客戶端還可以按照預(yù)設(shè)的時間間隔向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;其中,預(yù)設(shè)的時間間隔可以為:根據(jù)用戶的使用習(xí)慣確定的時間間隔。例如,用戶在上午6至上午8點、中午11點至下午2點、晚上6點至晚上10點使用客戶端的頻率較高,上午8點至上午11點、下午2點至下午5點使用客戶端的頻率較低,晚上10點至次日上午6點幾乎不使用客戶端,則根據(jù)用戶使用該客戶端的頻率,可以將上午6至上午8點、中午11點至下午2點、晚上6點至晚上10點對應(yīng)的上述時間間隔設(shè)置為較小的值,如:10分鐘,可以將上午8點至上午11點、下午2點至下午5點對應(yīng)的上述時間間隔設(shè)置為較大的值,如:I小時,可以將晚上10點至次日上午6點對應(yīng)的上述時間間隔可設(shè)置為更大的值,如:6小時。
[0123]當(dāng)然,較佳的,還可以由使用該客戶端的用戶自定義該預(yù)設(shè)的時間間隔,以進一步提高用戶的體驗效果。
[0124]S102、接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果;
[0125]目標(biāo)服務(wù)器反饋的請求結(jié)果可以只是確認結(jié)果,即確認目標(biāo)服務(wù)器上存在待推送消息的新版本,或者確認目標(biāo)服務(wù)器上不存在待推送消息的新版本;
[0126]目標(biāo)服務(wù)器反饋的請求結(jié)果也可以是目標(biāo)服務(wù)器上存儲的待發(fā)送消息的版本信息。
[0127]S103、在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;
[0128]當(dāng)目標(biāo)服務(wù)器反饋的請求結(jié)果只是確認結(jié)果時,客戶端可以在確認結(jié)果為是時,判定目標(biāo)服務(wù)器中存在待推送消息的新版本;然后向目標(biāo)服務(wù)器發(fā)送獲取新版本的待推送消息的第二請求。
[0129]當(dāng)目標(biāo)服務(wù)器反饋的請求結(jié)果中攜帶待推送消息的版本信息時,客戶端可以通過判斷所述請求結(jié)果中攜帶的版本信息是否高于本地存儲的所述待推送消息的版本信息;在獲得的判斷結(jié)果為是時,判定所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本;然后向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求。
[0130]其中,第二請求中攜帶有客戶端的一些基本信息,基本信息可以包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息中的至少一種,當(dāng)然,基本信息并不僅限于上述幾種。
[0131]此時,目標(biāo)服務(wù)器可以是客戶端開發(fā)商提供的單獨的待推送消息內(nèi)容服務(wù)器,也可以是客戶端開發(fā)商提供的同時具有待推送版本管理功能和待推送消息內(nèi)容管理的服務(wù)器,也即,在實際應(yīng)用中,消息版本控制服務(wù)器和消息內(nèi)容服務(wù)器可以為同一服務(wù)器,也可以為不同服務(wù)器,但均可以將它們統(tǒng)稱為目標(biāo)服務(wù)器。
[0132]S104、接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。
[0133]可以理解的是,待推送消息可以是客戶端接收的消息的總稱,即客戶端接收的待推送消息可以是一條以上。
[0134]由于在本發(fā)明圖1所示的實施例提供的一種推送消息獲取方法中,目標(biāo)服務(wù)器推送消息時,并不依賴于自身是否保存有客戶端的registerID數(shù)據(jù),而是在接收到客戶端發(fā)送的消息推送請求后即向客戶端推送消息。因此客戶端成功獲取目標(biāo)服務(wù)器推送的消息的概率較高。發(fā)明人通過大量實驗證明,應(yīng)用本發(fā)明圖1所示的實施例提供的推送消息獲取方法,客戶端成功獲取推送消息的概率在94 %以上。
[0135]另外,現(xiàn)有技術(shù)中的輪詢檢測方式為:用戶通過客戶端直接向目標(biāo)服務(wù)器發(fā)送獲取新消息的請求,當(dāng)服務(wù)器中存在新消息時,便向客戶端推送相應(yīng)的消息,當(dāng)服務(wù)器中不存在新消息時,則等待客戶端發(fā)送的下一個獲取新消息的請求。由于現(xiàn)有技術(shù)中,需要客戶端頻繁地直接向服務(wù)器發(fā)送獲取新消息的請求,而獲取新消息的請求中通常攜帶有客戶端的一些參數(shù),如客戶端使用的語言、客戶端所在的國家、客戶端所使用的操作系統(tǒng)的版本等,這使得客戶端每次發(fā)送的獲取新消息的請求需要占用較多的網(wǎng)絡(luò)資源。因此,現(xiàn)有技術(shù)中的輪詢檢測方式需要開銷用戶較多的流量,不夠經(jīng)濟實用。
[0136]而本發(fā)明實施例提供的一種推送消息獲取方法中所采用的輪詢檢測方式,客戶端每次只需要將占用網(wǎng)絡(luò)資源較少的,針對目標(biāo)服務(wù)器上的待推送消息的版本的第一請求發(fā)送給目標(biāo)服務(wù)器,并且,僅在目標(biāo)服務(wù)器上存在針對該客戶端的新版本的待推送消息時,才向目標(biāo)服務(wù)器發(fā)送獲取待推送消息的第二請求,以獲取針對該客戶端的待推送消息。因此,更能節(jié)省用戶的流量。
[0137]為了進一步提高客戶端成功獲取推送消息的概率,較佳的,如圖2所示,在圖1所示的實施例的基礎(chǔ)上,本發(fā)明實施例還提供了另一種推送消息獲取方法,該方法還可以包括:
[0138]S201、接收第三方服務(wù)器推送的第一消息;
[ΟΙ39] 具體的,該第三方服務(wù)器可以為GCM(Google Cloud Messaging)服務(wù)器,當(dāng)然,還可以是其他第三方服務(wù)器,本發(fā)明并不對此進行限定,但第三方服務(wù)器上存儲的第一消息也由客戶端開發(fā)商配置。
[0140]S202、根據(jù)所述第一消息攜帶的消息標(biāo)識,判斷是否已接收過所述第二消息,如果是,執(zhí)行S203;否則,執(zhí)行S204;
[0141]在使用目標(biāo)服務(wù)器和第三方服務(wù)器同時向客戶端推送消息時,可能會存在同一消息被兩個服務(wù)器重復(fù)推送的問題,這會給用戶造成打擾,因此,客戶端可以增設(shè)消息合并機制以對重復(fù)推送的消息進行處理。
[0142]具體的,可以使目標(biāo)服務(wù)器推送的每一消息和第三方服務(wù)器推送的每一消息,均攜帶有標(biāo)識該消息的唯一標(biāo)識,該標(biāo)識可以記為pushID。合并機制具體為:當(dāng)客戶端接收到第三方服務(wù)器推送的第一消息時,可以對包括第一消息在內(nèi)的已接收到的消息按pushID進行排重處理,當(dāng)在已接收的消息中找到與第一消息的pushID相同的消息時,即認為客戶端已接收過與第一消息相同的消息。
[0143]S203、將所述第一消息丟棄;
[0144]S204、展示所述第一消息。
[0145]當(dāng)?shù)谝幌⒁呀邮者^時,則將第一消息丟棄,否則將第一消息作為一個新的消息進行處理。
[0146]圖2所示的實施例作為本發(fā)明圖1所示的實施例的補充技術(shù)方案,可以在采用圖1所示的實施例提供的獲取推送消息的方法的同時,使用第三方服務(wù)器向客戶端推送消息,進一步提高了客戶端成功獲取推送消息的概率。發(fā)明人經(jīng)過大量實驗發(fā)現(xiàn),應(yīng)用圖2所示實施例提供的方案獲取推送消息時,客戶端成功獲取推送消息的概率在97%以上。
[0147]優(yōu)選的,在圖2所示的實施例中,客戶端可以將通過第三方提供的第三方服務(wù)器獲取待推送消息作為主要的待推送消息獲取方式,而將通過客戶端開發(fā)商提供的目標(biāo)服務(wù)器獲取待推送消息作為補充的待推送消息獲取方式。這樣,可以適當(dāng)延長步驟SlOl中所述的預(yù)設(shè)的時間間隔,例如使客戶端以第一固定時間間隔(例如6小時)向目標(biāo)服務(wù)器發(fā)送第一請求,降低客戶端詢問目標(biāo)服務(wù)器的頻率,以在提高客戶端成功獲取推送消息的概率的同時,盡可能多地為用戶節(jié)省流量和電量。
[0148]進一步,在保證客戶端具有較高的成功獲取待推送消息的概率的基礎(chǔ)上,為了提高目標(biāo)服務(wù)器推送消息的安全性,如圖3所示,在圖1所示的實施例的基礎(chǔ)上,本發(fā)明實施例還提供了另一種推送消息獲取方法,該方法還可以包括:
[0149]S301、接收第三方服務(wù)器發(fā)送的獲取待推送的第二消息的第一指令;
[0150]與本發(fā)明圖2所示的實施例一樣,第三方服務(wù)器可以為GCM服務(wù)器,還可以為其他第三方提供的服務(wù)器,第三方服務(wù)器上存儲的待推送的第二消息也由客戶端開發(fā)商配置。
[0151]S302、根據(jù)所述第一指令,向所述目標(biāo)服務(wù)器發(fā)送獲取所述第二消息的第三請求;
[0152]可見,在本發(fā)明圖3所示的實施例中,第三方服務(wù)器并不直接向客戶端推送第二消息本身,而是向客戶端推送以使客戶端獲取待推送的第二消息的第一指令,以使客戶端根據(jù)該第一指令去目標(biāo)服務(wù)器上獲取待推送的第二消息。
[0153]這樣,當(dāng)目標(biāo)服務(wù)器為客戶端開發(fā)商提供的服務(wù)器時,客戶端開發(fā)商雖然通過第三方服務(wù)器實現(xiàn)了第二消息的推送,但是并沒有將第二消息的具體內(nèi)容透露給第三方服務(wù)器,從而保證了客戶端開發(fā)商向客戶端推送的消息的安全性。
[0154]同樣的,客戶端可以向目標(biāo)服務(wù)器發(fā)送攜帶客戶端基本信息的第三請求,以獲取目標(biāo)服務(wù)器上存儲的待推送的第二消息。
[0155]S303、接收所述目標(biāo)服務(wù)器根據(jù)所述第三請求推送的所述第二消息;
[0156]S304、根據(jù)所述第二消息攜帶的消息標(biāo)識,判斷是否已接收過所述第二消息,如果是,執(zhí)行S305,否則,執(zhí)行S306;
[0157]與本發(fā)明圖2所示的實施例一樣,本發(fā)明圖3所示的實施例中也可能存在同一消息被重復(fù)接收的問題,這會給用戶造成打擾,因此,同樣的,客戶端可以增設(shè)消息合并機制以對重復(fù)接收的消息進行處理,具體的處理重復(fù)推送的消息的過程與圖2所示的實施例中的步驟S202中一致,此處不再贅述。
[0158]S305、將所述第二消息丟棄;
[0159]S306:展示所述第二消息。
[0160]應(yīng)用本發(fā)明圖3所示的實施例提供的一種推送消息獲取方法,當(dāng)預(yù)設(shè)的時間間隔與圖2所示的實施例中一致時,客戶端成功獲取推送消息的概率與圖2所示的實施例一樣,也在97%以上,但是本發(fā)明圖3所示的實施例進一步取得了獲取的待推送消息安全性高的良好效果。
[0161]優(yōu)選的,在圖3所示的實施例中,客戶端可以將通過客戶端開發(fā)商提供的目標(biāo)服務(wù)器直接獲取待推送消息作為主要的待推送消息獲取方式,而將通過第三方提供的第三方服務(wù)器獲取待推送消息的指令作為補充的待推送消息獲取方式。這樣,同樣可以適當(dāng)延長步驟SlOl中所述的預(yù)設(shè)的時間間隔,例如使客戶端以第二固定時間間隔(例如6小時)向目標(biāo)服務(wù)器發(fā)送第一請求,降低客戶端詢問目標(biāo)服務(wù)器的頻率,以在提高客戶端成功獲取待推送消息的概率、保證待推送消息的安全性的同時,盡可能多地為用戶節(jié)省流量和電量。
[0162]如圖4所示,在圖1的基礎(chǔ)上,本發(fā)明實施例還提供了另一種推送消息獲取方法,該方法可以認為是對本發(fā)明圖3所示的實施例提供的方法的進一步優(yōu)化,該方法還可以包括:
[0163]S401、接接收第三方服務(wù)器發(fā)送的獲取待推送的第三消息的第二指令,其中,所述第二指令攜帶有所述第三消息的消息標(biāo)識;
[0164]具體的,第二指令攜帶的待推送的第三消息的消息標(biāo)識也可以為pushID。
[0165]S402、根據(jù)所述第三消息的消息標(biāo)識,判斷是否已接收過所述第三消息;如果否,執(zhí)行S403 ;
[0166]具體的,客戶端可以在已接收到的消息中查找是否存在與第三消息的標(biāo)識相同的消息,如果是,則說明客戶端已接收過第三消息,否則,未接收過。
[0167]S403、根據(jù)所述第二指令,向所述目標(biāo)服務(wù)器發(fā)送獲取所述第三消息的第四請求;
[0168]同樣的,客戶端可以向目標(biāo)服務(wù)器發(fā)送攜帶客戶端基本信息的第四請求。
[0169]S404、接收所述目標(biāo)服務(wù)器根據(jù)所述第四請求推送的所述第三消息。
[0170]與本發(fā)明是圖3所示的是實施例相比,本發(fā)明是圖4所示的實施例提供的一種推送消息獲取方法,是在收到第三方服務(wù)器發(fā)送的獲取待推送的第三消息的第二指令時,就對是否已接收過第三消息進行判斷,而不是在獲取第三消息后進行,省去了對重復(fù)接收的消息的處理過程,減少了客戶端計算工作量,降低了客戶端的資源消耗。
[0171]另外,在圖1所示的實施例的基礎(chǔ)上,本發(fā)明實施例還提供了另一種推送消息獲取方法,該方法還可以包括:
[0172]步驟一、檢測自身的基本信息是否發(fā)生變化;如果是,執(zhí)行步驟二;
[0173]基本信息可以包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息等等,本申請并不限定上述基本信息所包含的內(nèi)容。
[0174]步驟二、向所述目標(biāo)服務(wù)器發(fā)送獲取所述待推送消息的第五請求;
[0175]步驟三、接收所述目標(biāo)服務(wù)器根據(jù)所述第五請求推送的所述待推送消息。
[0176]提供這一實施例的目的在于從另一方面為客戶端節(jié)省流量和電量。由于當(dāng)客戶端的基本信息發(fā)生變化后,說明客戶端所處的環(huán)境發(fā)生了變化,針對客戶端所處的新環(huán)境,客戶端開發(fā)商想要推送給客戶端的待推送消息的版本極有可能就是新版本。因此,客戶端也沒有必要再向目標(biāo)服務(wù)器發(fā)送第一請求以確認目標(biāo)服務(wù)器上存儲的待推送消息的版本是否為新版本,而是直接向目標(biāo)服務(wù)器發(fā)送獲取待推送消息的第五請求即可,進而為客戶端節(jié)省了流量和電量。例如客戶端所處的地理位置由北京變?yōu)樯虾?,客戶端開發(fā)商想要推送客戶端的消息如果為天氣信息時,客戶端沒有必要在獲取這個消息之前,徒勞地去確認該消息是否是一個新版本的消息。
[0177]本發(fā)明實施例提供的一種推送消息獲取方法,可以向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果;在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。由于目標(biāo)服務(wù)器并不依賴于自身是否保存有客戶端的register ID數(shù)據(jù),而是在接收到客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求后,便向客戶端推送消息,因此,應(yīng)用本發(fā)明實施例提供獲取推送消息的方案,客戶端成功獲取目標(biāo)服務(wù)器推送的消息的概率高。
[0178]相應(yīng)于圖1所示的方法實施例,如圖5所示,本發(fā)明還提供了一種推送消息獲取裝置,該裝置包括:第一請求發(fā)送模塊501、第一接收模塊502、第二請求發(fā)送模塊503和第一待推送消息接收模塊504,
[0179]第一請求發(fā)送模塊501,用于向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;
[0180]其中,目標(biāo)服務(wù)器可以僅僅是客戶端開發(fā)商提供的消息版本控制服務(wù)器,也可以為客戶端開發(fā)商提供的具有待推送消息的版本管理功能的其它服務(wù)器。
[0181]待推送消息,可以是客戶端開發(fā)商想要推送給客戶端的廣告、客戶端版本升級信息、時事新聞、天氣信息、新產(chǎn)品發(fā)布等消息。
[0182]待推送消息的版本,可以是待推送消息的時間版本,并由客戶端開發(fā)商配置在目標(biāo)服務(wù)器上。
[0183]第一請求可以僅攜帶客戶端的標(biāo)識,使目標(biāo)服務(wù)器根據(jù)客戶端的標(biāo)識以及目標(biāo)服務(wù)器上存儲的針對該客戶端消息版本控制記錄確認目標(biāo)服務(wù)器上是否存在待推送消息的新版本;
[0184]第一請求也可以攜帶客戶端存儲的待推送消息的第一版本信息,以使目標(biāo)服務(wù)器根據(jù)本地存儲的待推送消息的第二版本信息和第一請求中攜帶的待推送消息的第一版本信息,判斷目標(biāo)服務(wù)器中是否存在待推送消息的新版本。其中,第一版本信息可以是客戶端已經(jīng)接收的待推送消息的最新版本,第二版本信息可以是客戶端開發(fā)商新配置的待推送消息的版本信息。
[0185]優(yōu)選的,第一請求發(fā)送模塊501,可以按照預(yù)設(shè)的時間間隔向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;其中,所述預(yù)設(shè)的時間間隔為:根據(jù)用戶的使用習(xí)慣確定的時間間隔。具體的,預(yù)設(shè)的時間間隔與圖1所示的方法實施例中所述的預(yù)設(shè)的時間間隔一致,此處不再贅述。當(dāng)然,較佳的,還可以由使用該客戶端的用戶自定義該預(yù)設(shè)的時間間隔,以進一步提高用戶的體驗效果。
[0186]第一接收模塊502,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果;
[0187]目標(biāo)服務(wù)器反饋的請求結(jié)果可以只是確認結(jié)果,即確認目標(biāo)服務(wù)器上存在待推送消息的新版本,或者確認目標(biāo)服務(wù)器上不存在待推送消息的新版本;
[0188]目標(biāo)服務(wù)器反饋的請求結(jié)果也可以是目標(biāo)服務(wù)器上存儲的待發(fā)送消息的版本信息。
[0189]第二請求發(fā)送模塊503,用于在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;
[0190]目標(biāo)服務(wù)器可以是客戶端開發(fā)商提供的單獨的待推送消息內(nèi)容服務(wù)器,也可以是客戶端開發(fā)商提供的同時具有待推送版本管理功能和待推送消息內(nèi)容管理的服務(wù)器,也即,在實際應(yīng)用中,消息版本控制服務(wù)器和消息內(nèi)容服務(wù)器可以為同一服務(wù)器,也可以為不同服務(wù)器,但均可以將它們統(tǒng)稱為目標(biāo)服務(wù)器。
[0191]第二請求發(fā)送模塊503包括:第一判斷子模塊、判定結(jié)果確定子模塊和第二請求發(fā)送子模塊,
[0192]第一判斷子模塊,用于在攜帶待推送消息的版本信息時,判斷所述請求結(jié)果中攜帶的版本信息是否高于本地存儲的所述待推送消息的版本信息;或者,用于判斷第一接收模塊502接收的請求結(jié)果是否為是;
[0193]判定結(jié)果確定子模塊,用于在所述第一判斷子模塊獲得的判斷結(jié)果為是時,判定所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本;
[0194]第二請求發(fā)送子模塊,用于向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;
[0195]第二請求中攜帶有客戶端的一些基本信息,基本信息可以包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息中的至少一種,當(dāng)然,基本信息并不僅限于上述幾種。
[0196]第一待推送消息接收模塊504,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。
[0197]可以理解的是,待推送消息可以是客戶端接收的消息的總稱,即客戶端接收的待推送消息可以是一條以上。
[0198]由于在本發(fā)明圖5所示的實施例提供的一種推送消息獲取裝置,目標(biāo)服務(wù)器推送消息時,并不依賴于自身是否保存有客戶端發(fā)送的該客戶端的registerID數(shù)據(jù),而是在接收到客戶端發(fā)送的消息推送請求后即向客戶端推送消息。因此客戶端成功獲取目標(biāo)服務(wù)器推送的消息的概率較高。實驗證明,應(yīng)用本發(fā)明圖5所示的實施例提供的推送消息獲取裝置,客戶端成功獲取推送消息的概率在94%以上。
[0199]另外,由于現(xiàn)有技術(shù)中的輪詢檢測方式,需要客戶端頻繁地直接向服務(wù)器發(fā)送獲取新消息的請求,而獲取新消息的請求中通常攜帶有客戶端的一些參數(shù),如客戶端使用的語言、客戶端所在的國家、客戶端所使用的操作系統(tǒng)的版本等,這使得客戶端每次發(fā)送的獲取新消息的請求需要占用較多的網(wǎng)絡(luò)資源。因此,現(xiàn)有技術(shù)中的輪詢檢測方式需要開銷用戶較多的流量,不夠經(jīng)濟實用。關(guān)于現(xiàn)有技術(shù)中的輪詢檢測的具體方式與圖1所示的方法實施例中一致,此處不再贅述。
[0200]而本發(fā)明實施例提供的一種推送消息獲取裝置中所采用的輪詢檢測方式,客戶端每次只需要將占用網(wǎng)絡(luò)資源較少的,針對目標(biāo)服務(wù)器上的待推送消息的版本的第一請求發(fā)送給目標(biāo)服務(wù)器,并且,僅在目標(biāo)服務(wù)器上存在針對該客戶端的新版本的待推送消息時,才向目標(biāo)服務(wù)器發(fā)送獲取待推送消息的第二請求,以獲取針對該客戶端的待推送消息。因此,更能節(jié)省用戶的流量。
[0201]為了進一步提高客戶端成功獲取推送消息的概率,較佳的,如圖6所示,在圖5所示的實施例的基礎(chǔ)上,本發(fā)明實施例還提供了另一種推送消息獲取裝置,該裝置還可以包括:第一消息接收模塊601、第一判斷模塊602、第一丟棄模塊603和第一展示模塊604;
[0202]第一消息接收模塊601,用于接收第三方服務(wù)器推送的第一消息;
[0203]具體的,該第三方服務(wù)器可以為GCM(Google Cloud Messaging)服務(wù)器,當(dāng)然,還可以是其他第三方服務(wù)器,本發(fā)明并不對此進行限定,但第三方服務(wù)器上存儲的第一消息也由客戶端開發(fā)商配置。
[0204]第一判斷模塊602,用于根據(jù)所述第一消息攜帶的消息標(biāo)識,判斷是否已接收過所述第一消息;
[0205]在使用目標(biāo)服務(wù)器和第三方服務(wù)器同時向客戶端推送消息時,可能會存在同一消息被兩個服務(wù)器重復(fù)推送的問題,這會給用戶造成打擾,因此,客戶端可以增設(shè)消息合并機制以對重復(fù)推送的消息進行處理。
[0206]消息合并機制的具體處理過程與圖2所示的方法實施例中描述的一致,此處不再贅述。
[0207]第一丟棄模塊603,用于在所述第一判斷模塊602獲得的判斷結(jié)果為是時,將所述弟一消息丟棄;
[0208]第一展示模塊604,用于在所述第一判斷模塊602獲得的判斷結(jié)果為否時,展示所述第一消息。
[0209]圖6所示的實施例作為本發(fā)明圖5所示的實施例的補充技術(shù)方案,可以在采用圖5所示的實施例提供的獲取推送消息的裝置的同時,使用第三方服務(wù)器向客戶端推送消息,進一步提高了客戶端成功獲取推送消息的概率。發(fā)明人經(jīng)過大量實驗發(fā)現(xiàn),應(yīng)用圖6所示實施例提供的裝置獲取推送消息時,客戶端成功獲取推送消息的概率在97%以上。
[0210]優(yōu)選的,在圖2所示的實施例中,客戶端可以將通過第三方提供的第三方服務(wù)器獲取待推送消息作為主要的待推送消息獲取方式,而將通過客戶端開發(fā)商提供的目標(biāo)服務(wù)器獲取待推送消息作為補充的待推送消息獲取方式。這樣,可以適當(dāng)延長第一請求發(fā)送模塊501中的預(yù)設(shè)的時間間隔,例如使客戶端以第一固定時間間隔(例如6小時)向目標(biāo)服務(wù)器發(fā)送第一請求,降低客戶端詢問目標(biāo)服務(wù)器的頻率,以在提高客戶端成功獲取推送消息的概率的同時,盡可能多地為用戶節(jié)省流量和電量。
[0211]進一步,在保證客戶端具有較高的成功獲取待推送消息的概率的基礎(chǔ)上,為了提高目標(biāo)服務(wù)器推送消息的安全性,如圖7所示,在圖1所示的實施例的基礎(chǔ)上,本發(fā)明實施例還提供了另一種推送消息獲取裝置,該裝置還可以包括:第一指令接收模塊701、第三請求發(fā)送模塊702、第二消息接收模塊703、第二判斷模塊704、第二丟棄模塊705和第二展示模塊706;
[0212]第一指令接收模塊701,用于接收第三方服務(wù)器發(fā)送的獲取待推送的第二消息的第一指令;
[0213]第三方服務(wù)器的定義及其中保存的待推送消息的來源與圖6所示的裝置實施例中相同,此處不作重復(fù)敘述。
[0214]第三請求發(fā)送模塊702,用于根據(jù)所述第一指令,向所述目標(biāo)服務(wù)器發(fā)送獲取所述第二消息的第三請求;
[0215]可見,在本發(fā)明圖7所示的實施例中,第三方服務(wù)器并不直接向客戶端推送第二消息本身,而是向客戶端推送以使客戶端獲取待推送的第二消息的第一指令,以使客戶端根據(jù)該第一指令去目標(biāo)服務(wù)器上獲取待推送的第二消息。
[0216]這樣,當(dāng)目標(biāo)服務(wù)器為客戶端開發(fā)商提供的服務(wù)器時,客戶端開發(fā)商雖然通過第三方服務(wù)器實現(xiàn)了第二消息的推送,但是并沒有將第二消息的具體內(nèi)容透露給第三方服務(wù)器,從而保證了客戶端開發(fā)商向客戶端推送的消息的安全性。
[0217]同樣的,第三請求發(fā)送模塊702可以向目標(biāo)服務(wù)器發(fā)送攜帶客戶端基本信息的第三請求,以獲取目標(biāo)服務(wù)器上存儲的待推送的第二消息。
[0218]第二消息接收模塊703,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第三請求推送的所述第二消息;
[0219]第二判斷模塊704,用于根據(jù)所述第二消息攜帶的消息標(biāo)識,判斷是否已接收過所述第二消息;
[0220]與本發(fā)明圖6所示的實施例一樣,本發(fā)明圖7所示的實施例中也可能存在同一消息被重復(fù)接收的問題,這會給用戶造成打擾,因此,同樣的,客戶端可以增設(shè)消息合并機制以對重復(fù)接收的消息進行處理,具體的處理重復(fù)推送的消息的過程與圖6所示的實施例中一致,此處不再贅述。
[0221 ]第二丟棄模塊705,用于在所述第二判斷模塊704獲得的判斷結(jié)果為是時,將所述弟一■消息丟棄;
[0222]第二展示模塊706,用于在所述第二判斷模塊704獲得的判斷結(jié)果為否時,展示所述第二消息。
[0223]應(yīng)用本發(fā)明圖7所示的實施例提供的一種推送消息獲取裝置,當(dāng)預(yù)設(shè)的時間間隔與圖6所示的實施例中一致時,客戶端成功獲取推送消息的概率也在97%以上,但是本發(fā)明圖7所示的實施例進一步取得了獲取的待推送消息安全性高的良好效果。
[0224]優(yōu)選的,在圖7所示的實施例中,客戶端可以將通過客戶端開發(fā)商提供的目標(biāo)服務(wù)器直接獲取待推送消息作為主要的待推送消息獲取方式,而將通過第三方提供的第三方服務(wù)器獲取待推送消息的指令作為補充的待推送消息獲取方式。這樣,同樣可以適當(dāng)延長第一請求發(fā)送模塊501中所述的預(yù)設(shè)的時間間隔,降低客戶端詢問目標(biāo)服務(wù)器的頻率,以在提高客戶端成功獲取待推送消息的概率、保證待推送消息的安全性的同時,盡可能多地為用戶節(jié)省流量和電量。
[0225]如圖8所示,在圖6的基礎(chǔ)上,本發(fā)明實施例還提供了另一種推送消息獲取裝置,該裝置可以認為是對本發(fā)明圖7所示的實施例提供的裝置的進一步優(yōu)化,該裝置還可以包括:第二指令接收模塊801、第三判斷模塊802、第四請求發(fā)送模塊803和第三消息接收模塊804,
[0226]第二指令接收模塊801,用于接收第三方服務(wù)器發(fā)送的獲取待推送的第三消息的第二指令,其中,所述第二指令攜帶有所述第三消息的消息標(biāo)識;
[0227]具體的,第二指令攜帶的待推送的第三消息的消息標(biāo)識也可以為pushID。
[0228]第三判斷模塊802,用于根據(jù)所述第三消息的消息標(biāo)識,判斷是否已接收過所述第三消息;
[0229]具體的,處理重復(fù)接收的消息的方法與圖7所示的實施例中相同,此處不再贅述。
[0230]第四請求發(fā)送模塊803,用于在所述第三判斷模塊802獲得的判斷結(jié)果為否時,根據(jù)所述第二指令,向所述目標(biāo)服務(wù)器發(fā)送獲取所述第三消息的第四請求;
[0231]同樣的,客戶端可以向目標(biāo)服務(wù)器發(fā)送攜帶客戶端基本信息的第四請求。
[0232]第三消息接收模塊804,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第四請求推送的所述第三消息。
[0233]與本發(fā)明是圖7所示的是實施例相比,本發(fā)明是圖4所示的實施例提供的一種推送消息獲取裝置,是在收到第三方服務(wù)器發(fā)送的獲取待推送的第三消息的第二指令時,就對是否已接收過第三消息進行判斷,而不是在獲取第三消息后進行,省去了對重復(fù)接收的消息的處理過程,減少了客戶端計算工作量,降低了客戶端的資源消耗。
[0234]另外,在圖1所示的實施例的基礎(chǔ)上,本發(fā)明實施例還提供了另一種推送消息獲取裝置,該裝置還可以包括:基本信息檢測模塊、第五請求發(fā)送模塊和第二待推送消息接收模塊;
[0235]基本信息檢測模塊,用于檢測自身的基本信息是否發(fā)生變化;
[0236]其中,基本信息可以包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息等等,本申請并不限定上述基本信息所包含的內(nèi)容。
[0237]第五請求發(fā)送模塊,用于在所述基本信息檢測模塊獲得的檢測結(jié)果為是時,向所述目標(biāo)服務(wù)器發(fā)送獲取所述待推送消息的第五請求;
[0238]第二待推送消息接收模塊,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第五請求推送的所述待推送消息。
[0239]提供這一實施例的目的在于從另一方面為客戶端節(jié)省流量和電量。由于當(dāng)客戶端的基本信息發(fā)生變化后,說明客戶端所處的環(huán)境發(fā)生了變化,針對客戶端所處的新環(huán)境,客戶端開發(fā)商想要推送給客戶端的待推送消息的版本極有可能就是新版本。因此,客戶端也沒有必要再向目標(biāo)服務(wù)器發(fā)送第一請求以確認目標(biāo)服務(wù)器上存儲的待推送消息的版本是否為新版本,而是直接向目標(biāo)服務(wù)器發(fā)送獲取待推送消息的第五請求即可,進而為客戶端節(jié)省了流量和電量。
[0240]本發(fā)明實施例提供的一種推送消息獲取裝置,可以向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求;接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果;在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。由于目標(biāo)服務(wù)器并不依賴于自身是否保存有客戶端的register ID數(shù)據(jù),而是在接收到客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求后,便向客戶端推送消息,因此,應(yīng)用本發(fā)明實施例提供獲取推送消息的方案,客戶端成功獲取目標(biāo)服務(wù)器推送的消息的概率高。
[0241 ]下面對應(yīng)用于服務(wù)器的一種消息推送方法及裝置進行說明。
[0242]如圖9所示,本發(fā)明實施例提供了一種消息推送方法,應(yīng)用于服務(wù)器,該方法可以包括:
[0243]S901、接收客戶端發(fā)送的針對待推送消息的版本的第一請求;
[0244]第一請求可以僅攜帶客戶端的標(biāo)識;第一請求還可以攜帶客戶端存儲的待推送消息的第一版本信息;其中,第一版本信息可以是客戶端已經(jīng)接收的待推送消息的最新版本。
[0245]S902、根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,并向所述客戶端發(fā)送所述請求結(jié)果;
[0246]在第一請求僅攜帶客戶端的標(biāo)識的情況下,服務(wù)器上可以維護一個針對每一客戶端的待推送消息版本控制記錄,并根據(jù)客戶端的標(biāo)識以及待推送消息版本控制記錄確認服務(wù)器上是否存在待推送消息的新版本,進而生成請求結(jié)果;
[0247]在第一請求攜帶客戶端存儲的待推送消息的第一版本信息的情況下,服務(wù)器可以通過下述步驟生成請求結(jié)果:
[0248]步驟一、獲得本地存儲的所述待推送消息的第二版本信息;
[0249]第二版本信息可以是客戶端開發(fā)商新配置的待推送消息的版本信息。
[0250]具體的,服務(wù)器可以根據(jù)所述客戶端的基本信息中的至少一種獲得本地存儲的所述待推送消息的第二版本信息,也就是根據(jù)客戶端的基本信息找到服務(wù)地本地存儲的針對該客戶端的待推送消息的版本;其中,所述基本信息包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本?目息O
[0251]步驟二、根據(jù)所述第一版本信息和所述第二版本信息,判斷本地是否存在所述待推送消息的新版本;
[0252]具體的,當(dāng)?shù)诙姹拘畔⒅械陌姹靖哂诘谝话姹拘畔⒅械陌姹緯r,判斷本地是否存在所述待推送消息的新版本。
[0253]步驟三、根據(jù)判斷結(jié)果生成請求結(jié)果。
[0254]請求結(jié)果可以只是確認結(jié)果,即確認目標(biāo)服務(wù)器上存在待推送消息的新版本,或者確認目標(biāo)服務(wù)器上不存在待推送消息的新版本;
[0255]請求結(jié)果也可以是目標(biāo)服務(wù)器上存儲的待發(fā)送消息的版本信息。
[0256]S903、接收所述客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求,其中,所述第二請求為:所述客戶端根據(jù)所述請求結(jié)果確認所述服務(wù)器中存在所述待推送消息的新版本時發(fā)送的;
[0257]第二請求可以攜帶客戶端的基本信息。
[0258]S904、根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息。
[0259]根據(jù)所述客戶端的基本信息中的至少一種以及所述第二請求,獲得所述待推送消息的新版本,并向所述客戶端推送所獲得的新版本的所述待推送消息;待推送消息可以由客戶端開發(fā)商配置在該服務(wù)器上,并由該服務(wù)器推送給客戶端。
[0260]需要說明的是,進行待推送消息版本控制的服務(wù)器和待推送消息推送的服務(wù)器可以是同一服務(wù)器,也可以是不同服務(wù)器。
[0261]本發(fā)明實施例提供的一種消息推送方法,可以接收客戶端發(fā)送的針對待推送消息的版本的第一請求;根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,并向所述客戶端發(fā)送所述請求結(jié)果;接收所述客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求,其中,所述第二請求為:所述客戶端根據(jù)所述請求結(jié)果確認所述服務(wù)器中存在所述待推送消息的新版本時發(fā)送的;根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息。由于服務(wù)器并不依賴于自身是否保存有客戶端的registerID數(shù)據(jù),而是在接收到客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求后,便向客戶端推送消息,因此,應(yīng)用本發(fā)明實施例提供的消息推送方案,服務(wù)器向客戶端成功推送消息的概率高。
[0262]相應(yīng)于圖9所示的方法實施例,如圖10所示本發(fā)明實施例還提供了一種消息推送裝置,該裝置可以包括:第一請求接收模塊1001、請求結(jié)果發(fā)送模塊1002、第二請求接收模塊1003和推送模塊1004;
[0263]第一請求接收模塊1001,用于接收客戶端發(fā)送的針對待推送消息的版本的第一請求;
[0264]第一請求可以僅攜帶客戶端的標(biāo)識;第一請求還可以攜帶客戶端存儲的待推送消息的第一版本信息;其中,第一版本信息可以是客戶端已經(jīng)接收的待推送消息的最新版本。
[0265]請求結(jié)果發(fā)送模塊1002,用于根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,并向所述客戶端發(fā)送所述請求結(jié)果;
[0266]在第一請求僅攜帶客戶端的標(biāo)識的情況下,服務(wù)器上可以維護一個針對每一客戶端的待推送消息版本控制記錄,請求結(jié)果發(fā)送模塊1002可以根據(jù)客戶端的標(biāo)識以及待推送消息版本控制記錄,確認服務(wù)器上是否存在待推送消息的新版本,進而生成請求結(jié)果;
[0267]或者,請求結(jié)果發(fā)送模塊1002可以包括:第二版本獲取子模塊、判斷子模塊和請求結(jié)果生成子模塊,
[0268]第二版本獲取子模塊,用于在第一請求攜帶客戶端存儲的待推送消息的第一版本信息的情況下,獲得本地存儲的所述待推送消息的第二版本信息;
[0269]第二版本信息可以是客戶端開發(fā)商新配置的待推送消息的版本信息。
[0270]具體的,第二版本獲取子模塊可以用于根據(jù)所述客戶端的基本信息中的至少一種獲得本地存儲的所述待推送消息的第二版本信息,也就是根據(jù)客戶端的基本信息找到服務(wù)地本地存儲的針對該客戶端的待推送消息的版本;其中,基本信息包括:所述客戶端使用的語言信息、所述客戶端所處地理位置、所述客戶端所在終端的操作系統(tǒng)的版本信息和所述客戶端的版本信息。
[0271]所述判斷子模塊,用于根據(jù)所述第一版本信息和所述第二版本信息,判斷本地是否存在所述待推送消息的新版本;
[0272]具體的,當(dāng)?shù)诙姹拘畔⒅械陌姹靖哂诘谝话姹拘畔⒅械陌姹緯r,判斷本地是否存在所述待推送消息的新版本。
[0273]所述請求結(jié)果生成子模塊,用于根據(jù)所述判斷子模塊獲得的判斷結(jié)果生成請求結(jié)果O
[0274]請求結(jié)果可以只是確認結(jié)果,即確認目標(biāo)服務(wù)器上存在待推送消息的新版本,或者確認目標(biāo)服務(wù)器上不存在待推送消息的新版本;
[0275]請求結(jié)果也可以是目標(biāo)服務(wù)器上存儲的待發(fā)送消息的版本信息。
[0276]第二請求接收模塊1003,用于接收所述客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求,其中,所述第二請求為:所述客戶端根據(jù)所述請求結(jié)果確認所述服務(wù)器中存在所述待推送消息的新版本時發(fā)送的;
[0277]第二請求可以攜帶客戶端的基本信息。
[0278]推送模塊1004,用于根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息。
[0279]具體的,推送模塊1004可以用于根據(jù)所述客戶端的基本信息中的至少一種以及所述第二請求,獲得所述待推送消息的新版本,并向所述客戶端推送所獲得的新版本的所述待推送消息;其中,待推送消息可以由客戶端開發(fā)商配置在該服務(wù)器上,并由該服務(wù)器推送給客戶端。
[0280]本發(fā)明實施例提供的一種消息推送裝置,可以接收客戶端發(fā)送的針對待推送消息的版本的第一請求;根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,并向所述客戶端發(fā)送所述請求結(jié)果;接收所述客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求,其中,所述第二請求為:所述客戶端根據(jù)所述請求結(jié)果確認所述服務(wù)器中存在所述待推送消息的新版本時發(fā)送的;根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息。由于服務(wù)器并不依賴于自身是否保存有客戶端的registerID數(shù)據(jù),而是在接收到客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求后,便向客戶端推送消息,因此,應(yīng)用本發(fā)明實施例提供的消息推送方案,服務(wù)器向客戶端成功推送消息的概率高。
[0281]對于裝置實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
[0282]需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0283]本說明書中的各個實施例均采用相關(guān)的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于裝置實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
[0284]以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。
【主權(quán)項】
1.一種推送消息獲取方法,其特征在于,應(yīng)用于客戶端,所述方法包括: 向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求; 接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果; 在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求; 接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。2.根據(jù)權(quán)利要求1所述的方法,其特征在于, 所述請求結(jié)果中攜帶所述待推送消息的版本信息; 所述在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求包括: 判斷所述請求結(jié)果中攜帶的版本信息是否高于本地存儲的所述待推送消息的版本信息; 若為是,判定所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本; 向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 接收第三方服務(wù)器推送的第一消息; 根據(jù)所述第一消息攜帶的消息標(biāo)識,判斷是否已接收過所述第一消息; 如果是,將所述第一消息丟棄; 否則,展示所述第一消息。4.一種消息推送方法,其特征在于,應(yīng)用于服務(wù)器,所述方法包括: 接收客戶端發(fā)送的針對待推送消息的版本的第一請求; 根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,并向所述客戶端發(fā)送所述請求結(jié)果; 接收所述客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求,其中,所述第二請求為:所述客戶端根據(jù)所述請求結(jié)果確認所述服務(wù)器中存在所述待推送消息的新版本時發(fā)送的; 根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息。5.根據(jù)權(quán)利要求4所述的方法,其特征在于, 所述第一請求攜帶所述客戶端存儲的所述待推送消息的第一版本信息; 所述根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,包括: 獲得本地存儲的所述待推送消息的第二版本信息; 根據(jù)所述第一版本信息和所述第二版本信息,判斷本地是否存在所述待推送消息的新版本; 根據(jù)判斷結(jié)果生成請求結(jié)果。6.—種推送消息獲取裝置,其特征在于,應(yīng)用于客戶端,所述裝置包括:第一請求發(fā)送模塊、第一接收模塊、第二請求發(fā)送模塊和第一待推送消息接收模塊; 所述第一請求發(fā)送模塊,用于向目標(biāo)服務(wù)器發(fā)送針對待推送消息的版本的第一請求; 所述第一接收模塊,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第一請求反饋的請求結(jié)果; 所述第二請求發(fā)送模塊,用于在根據(jù)所述請求結(jié)果確認所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本時,向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求;所述第一待推送消息接收模塊,用于接收所述目標(biāo)服務(wù)器根據(jù)所述第二請求推送的新版本的所述待推送消息。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述請求結(jié)果中攜帶所述待推送消息的版本信息; 所述第二請求發(fā)送模塊包括:第一判斷子模塊、判定結(jié)果確定子模塊和第二請求發(fā)送子模塊, 所述第一判斷子模塊,用于判斷所述請求結(jié)果中攜帶的版本信息是否高于本地存儲的所述待推送消息的版本信息; 所述判定結(jié)果確定子模塊,用于在所述第一判斷子模塊獲得的判斷結(jié)果為是時,判定所述目標(biāo)服務(wù)器中存在所述待推送消息的新版本; 所述第二請求發(fā)送子模塊,用于向所述目標(biāo)服務(wù)器發(fā)送獲取新版本的所述待推送消息的第二請求。8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 第一消息接收模塊,用于接收第三方服務(wù)器推送的第一消息; 第一判斷模塊,用于根據(jù)所述第一消息攜帶的消息標(biāo)識,判斷是否已接收過所述第一消息; 第一丟棄模塊,用于在所述第一判斷模塊獲得的判斷結(jié)果為是時,將所述第一消息丟棄; 第一展示模塊,用于在所述第一判斷模塊獲得的判斷結(jié)果為否時,展示所述第一消息。9.一種消息推送裝置,其特征在于,應(yīng)用于服務(wù)器,所述裝置包括:第一請求接收模塊、請求結(jié)果發(fā)送模塊、第二請求接收模塊和推送模塊; 所述第一請求接收模塊,用于接收客戶端發(fā)送的針對待推送消息的版本的第一請求; 所述請求結(jié)果發(fā)送模塊,用于根據(jù)所述第一請求獲得所述待推送消息的版本的信息,生成請求結(jié)果,并向所述客戶端發(fā)送所述請求結(jié)果; 所述第二請求接收模塊,用于接收所述客戶端發(fā)送的獲取新版本的所述待推送消息的第二請求,其中,所述第二請求為:所述客戶端根據(jù)所述請求結(jié)果確認所述服務(wù)器中存在所述待推送消息的新版本時發(fā)送的; 所述推送模塊,用于根據(jù)所述第二請求向所述客戶端推送新版本的所述待推送消息。10.根據(jù)權(quán)利要求9所述的裝置,其特征在于, 所述第一請求攜帶所述客戶端存儲的所述待推送消息的第一版本信息; 所述請求結(jié)果發(fā)送模塊包括:第二版本獲取子模塊、判斷子模塊和請求結(jié)果生成子模塊, 所述第二版本獲取子模塊,用于獲得本地存儲的所述待推送消息的第二版本信息; 所述判斷子模塊,用于根據(jù)所述第一版本信息和所述第二版本信息,判斷本地是否存在所述待推送消息的新版本; 所述請求結(jié)果生成子模塊,用于根據(jù)所述判斷子模塊獲得的判斷結(jié)果生成請求結(jié)果。
【文檔編號】H04L29/08GK105915612SQ201610245239
【公開日】2016年8月31日
【申請日】2016年4月19日
【發(fā)明人】周楊, 張科峰
【申請人】北京金山安全軟件有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1