推送消息接收方法、消息推送方法、客戶(hù)端及服務(wù)器的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種推送消息接收方法、消息推送方法、客戶(hù)端及服務(wù)器。
【背景技術(shù)】
[0002]推送消息,應(yīng)用非常廣泛。推送通知的特點(diǎn)就是,當(dāng)你的應(yīng)用程序沒(méi)有打開(kāi)或者已經(jīng)退出,手機(jī)依然可以收到這些推送消息。但是這個(gè)通知,卻沒(méi)有私密性,如果手機(jī)丟了,拾到的人就可以輕易地看到這些推送通知。因?yàn)檫@些消息在程序退出時(shí)依然可以在推送欄收到。另外,如果用戶(hù)更換了,例如,這個(gè)手機(jī)借給另外一個(gè)人使用,登錄的用戶(hù)改變了,但新登錄的用戶(hù)在登錄前一段時(shí)間內(nèi),還可以看到前一個(gè)登錄用戶(hù)的推送消息,直到新用戶(hù)登錄成功,后臺(tái)知道該終端對(duì)應(yīng)的用戶(hù)已經(jīng)改變,才會(huì)停止消息推送。而舊的用戶(hù)退出,新用戶(hù)登錄成功這段時(shí)間,新用戶(hù)可以正??吹角耙挥脩?hù)的推送通知。這使得推送消息沒(méi)有隱私性。
[0003]而且對(duì)于數(shù)據(jù)量較大的推送消息,則推送消息占用流量較大。為此,甚至有一些公司對(duì)推送消息的長(zhǎng)度進(jìn)行了限制,如蘋(píng)果APNS不會(huì)接受超過(guò)256個(gè)字節(jié)的推送消息,進(jìn)而也限制了推送消息的應(yīng)用。
[0004]在實(shí)現(xiàn)本發(fā)明過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在以下問(wèn)題:
[0005]數(shù)據(jù)量較大的推送消息占用流量較大;推送消息沒(méi)有進(jìn)行用戶(hù)驗(yàn)證、加密或者其他處理,沒(méi)有私密性,如果手機(jī)丟失了,其他人就可以輕易地看到這些推送消息;當(dāng)用戶(hù)切換時(shí),可能存在隱私泄露問(wèn)題,例如,A用戶(hù)使用了手機(jī)的某一個(gè)App,然后退出,然后B用戶(hù)又打開(kāi)該APP,然后登錄上去,在A退出和B用戶(hù)登錄成功之前,這個(gè)手機(jī)依然可以收到針對(duì)A的推送消息,此時(shí),這些消息都被B讀到了。因而,消息推送,在客觀的實(shí)現(xiàn)中,往往不能用于發(fā)送隱私消息,這限制了消息推送的應(yīng)用范圍,而且推送消息長(zhǎng)度受限。
【發(fā)明內(nèi)容】
[0006]鑒于上述問(wèn)題,提出了本發(fā)明以便提供一種克服上述問(wèn)題或者至少部分地解決或者減緩上述問(wèn)題的推送消息接收方法、消息推送方法、客戶(hù)端及服務(wù)器。
[0007]一方面,提供了一種推送消息接收方法,所述方法包括:
[0008]接收服務(wù)器發(fā)送的提示信息,所述提示信息中攜帶有待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)名、所述待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù);
[0009]判斷所述待推送消息對(duì)應(yīng)的應(yīng)用程序當(dāng)前的登錄用戶(hù)名與所述提示信息中攜帶的用戶(hù)名是否一致;
[0010]若一致,根據(jù)所述提示信息中攜帶的待推送消息適用的模板類(lèi)型和所述待推送消息的關(guān)鍵數(shù)據(jù)生成推送消息,若不一致,則忽略所述提示信息;
[0011 ] 顯示生成的所述推送消息。
[0012]其中,所述方法還包括:
[0013]下載各個(gè)應(yīng)用程序的推送消息對(duì)應(yīng)的消息模板,所述消息模板用于規(guī)定推送消息的格式。
[0014]其中,所述根據(jù)所述提示信息中攜帶的待推送消息適用的模板類(lèi)型和所述待推送消息的關(guān)鍵數(shù)據(jù)生成推送消息,具體包括:
[0015]根據(jù)所述提示信息中攜帶的待推送消息適用的模板類(lèi)型選擇消息模板;
[0016]如果本地找不到對(duì)應(yīng)的消息模版,則從所述服務(wù)器端下載對(duì)應(yīng)的消息模版;
[0017]當(dāng)所述消息模板中包括指定類(lèi)型的模板信息時(shí),從所述待推送消息的關(guān)鍵數(shù)據(jù)中,提取符合所述指定類(lèi)型的指定數(shù)據(jù);
[0018]按照所述模板信息在所述消息模板中的位置,將所述指定數(shù)據(jù)添加,生成一條完整的消息,在相應(yīng)應(yīng)用程序的消息列表界面中顯示該消息。
[0019]其中,當(dāng)所述待推送消息對(duì)應(yīng)的應(yīng)用程序處于關(guān)閉狀態(tài)時(shí),所述方法還包括:
[0020]提示用戶(hù)進(jìn)行所述待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)登錄,當(dāng)用戶(hù)登錄成功后,判斷所述待推送消息對(duì)應(yīng)的應(yīng)用程序當(dāng)前的登錄用戶(hù)名與所述提示信息中攜帶的用戶(hù)名是否一致。
[0021]其中,所述提示信息中攜帶的待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)名、所述待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù)為加密數(shù)據(jù)。
[0022]其中,所述方法還包括:解密出所述提示信息中攜帶的用戶(hù)名,當(dāng)所述待推送消息對(duì)應(yīng)的應(yīng)用程序當(dāng)前的登錄用戶(hù)名與所述提示信息中攜帶的用戶(hù)名一致時(shí),對(duì)所述提示信息中待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù)進(jìn)行數(shù)據(jù)解密。
[0023]另一方面,提供了一種消息推送方法,所述方法包括:
[0024]根據(jù)待推送消息生成所述待推送消息的提示信息,所示提示信息用于客戶(hù)端生成推送消息,所述提示信息中攜帶有所述待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)名、所述待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù);
[0025]發(fā)送所述提示信息到客戶(hù)端。
[0026]其中,所述方法還包括:
[0027]創(chuàng)建各個(gè)應(yīng)用程序的推送消息對(duì)應(yīng)的消息模板,所述消息模板用于規(guī)定推送消息的格式;
[0028]判斷待推送消息是否為預(yù)設(shè)私密消息和/或所述待推送消息是否大于預(yù)設(shè)字節(jié),若是則根據(jù)所述待推送消息生成所述待推送消息的提示信息,否則,直接進(jìn)行消息推送。
[0029]其中,所述方法還包括:
[0030]對(duì)所述提示信息中攜帶的所述待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)名、所述待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù)進(jìn)行數(shù)據(jù)加密。
[0031]又一方面,提供了一種客戶(hù)端,所述客戶(hù)端包括:
[0032]接收模塊,用于接收服務(wù)器發(fā)送的提示信息,所述提示信息中攜帶有待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)名、所述待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù);
[0033]用戶(hù)名判斷模塊,用于判斷所述待推送消息對(duì)應(yīng)的應(yīng)用程序當(dāng)前的登錄用戶(hù)名與所述提示信息中攜帶的用戶(hù)名是否一致;
[0034]推送消息生成模塊,用于當(dāng)所述待推送消息對(duì)應(yīng)的應(yīng)用程序當(dāng)前的登錄用戶(hù)名與所述提示信息中攜帶的用戶(hù)名一致時(shí),根據(jù)所述提示信息中攜帶的待推送消息適用的模板類(lèi)型和所述待推送消息的關(guān)鍵數(shù)據(jù)生成推送消息,當(dāng)所述待推送消息對(duì)應(yīng)的應(yīng)用程序當(dāng)前的登錄用戶(hù)名與所述提示信息中攜帶的用戶(hù)名不一致時(shí),則忽略所述提示信息;
[0035]顯示模塊,用于顯示所述推送消息生成模塊生成的推送消息。
[0036]其中,所述客戶(hù)端還包括:
[0037]模板下載模塊,用于下載各個(gè)應(yīng)用程序的推送消息對(duì)應(yīng)的消息模板,所述消息模板用于規(guī)定推送消息的格式。
[0038]其中,所述推送消息生成模塊包括:
[0039]選擇單元,用于根據(jù)所述提示信息中攜帶的待推送消息適用的模板類(lèi)型選擇消息模板;
[0040]下載單元,用于當(dāng)本地找不到對(duì)應(yīng)的消息模版時(shí),從所述服務(wù)器端下載對(duì)應(yīng)的消息模版;
[0041]提取單元,用于當(dāng)所述消息模板中包括指定類(lèi)型的模板信息時(shí),從所述待推送消息的關(guān)鍵數(shù)據(jù)中,提取符合所述指定類(lèi)型的指定數(shù)據(jù);
[0042]數(shù)據(jù)添加單元,用于按照所述模板信息在所述消息模板中的位置,將所述指定數(shù)據(jù)添加,生成一條完整的消息,在相應(yīng)應(yīng)用程序的消息列表界面中顯示該消息。
[0043]其中,所述客戶(hù)端還包括:
[0044]提示模塊,用于當(dāng)所述待推送消息對(duì)應(yīng)的應(yīng)用程序處于關(guān)閉狀態(tài)時(shí),提示用戶(hù)進(jìn)行所述待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)登錄,當(dāng)用戶(hù)登錄成功后,轉(zhuǎn)到所述用戶(hù)名判斷模塊進(jìn)行判斷。
[0045]其中,所述提示信息中攜帶的待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)名、所述待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù)為加密數(shù)據(jù)。
[0046]其中,所述客戶(hù)端還包括:
[0047]數(shù)據(jù)解密模塊,用于解密出所述提示信息中攜帶的用戶(hù)名,當(dāng)所述待推送消息對(duì)應(yīng)的應(yīng)用程序當(dāng)前的登錄用戶(hù)名與所述提示信息中攜帶的用戶(hù)名一致時(shí),對(duì)所述提示信息中待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù)進(jìn)行數(shù)據(jù)解密。
[0048]又一方面,提供了一種服務(wù)器,所述服務(wù)器包括:
[0049]提示信息生成模塊,用于根據(jù)待推送消息生成所述待推送消息的提示信息,所示提示信息用于客戶(hù)端生成推送消息,所述提示信息中攜帶有所述待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)名、所述待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)鍵數(shù)據(jù);
[0050]發(fā)送模塊,用于發(fā)送所述提示信息到客戶(hù)端。
[0051 ] 其中,所述服務(wù)器還包括:
[0052]模板創(chuàng)建模塊,用于創(chuàng)建各個(gè)應(yīng)用程序的推送消息對(duì)應(yīng)的消息模板,所述消息模板用于規(guī)定推送消息的格式;
[0053]消息判斷模塊,用于判斷待推送消息是否為預(yù)設(shè)私密消息和/或所述待推送消息是否大于預(yù)設(shè)字節(jié),若是則轉(zhuǎn)到所述提示信息生成模塊,否則,直接進(jìn)行消息推送。
[0054]其中,所述服務(wù)器還包括:
[0055]數(shù)據(jù)加密模塊,用于對(duì)所述提示信息中攜帶的所述待推送消息對(duì)應(yīng)的應(yīng)用程序的用戶(hù)名、所述待推送消息適用的模板類(lèi)型以及所述待推送消息的關(guān)