一種消息發送方法和設備的制造方法
【技術領域】
[0001] 本申請涉及互聯網技術領域,尤其是涉及了一種消息發送方法和設備。
【背景技術】
[0002] 現有技術中,當需要將待推送內容(如:營銷內容或者產品信息等)通知給用戶 時,業務服務器會通過一個特定消息發送通道向用戶設備發送攜帶了待推送內容的消息。 但是,業務服務器通過一個特定消息發送通道向用戶設備發送消息時,無法保證該消息一 定會發送到用戶設備上,從而導致可能無法將待推送內容通知給用戶,繼而直接影響到業 務的發展和推廣。
[0003] 為了將待推送內容通知給用戶,需要保證將攜帶了待推送內容的消息發送到用戶 設備上。基于此,現有技術中,業務服務器需要同時通過多個消息發送通道向用戶設備發送 攜帶了待推送內容的消息,從而保證可以將待推送內容通知給用戶。但是,業務服務器同時 通過多個消息發送通道向用戶設備發送消息時,會造成系統資源和網絡資源的浪費,而且 用戶設備收到多個攜帶有相同待推送內容的消息時,還會使用戶有被騷擾感,影響用戶使 用感受。
【發明內容】
[0004] 本申請實施例提供一種消息發送方法和設備,以將待推送內容通知給用戶,并避 免造成系統資源和網絡資源的浪費,并提高用戶的使用感受。
[0005] 為達到上述目的,本申請實施例提供一種消息發送方法,所述方法包括:
[0006] 推送服務器獲得待推送內容;
[0007] 針對多個消息發送通道,所述推送服務器獲得每個消息發送通道在指定時間內的 登錄概率,并確定登錄概率最高的消息發送通道;
[0008] 所述推送服務器利用所述登錄概率最高的消息發送通道發送攜帶了所述待推送 內容的消息。
[0009] 所述推送服務器獲得待推送內容,具體包括:
[0010] 在需要向用戶發送待推送內容時,所述推送服務器接收來自業務服務器的攜帶了 所述待推送內容的消息,并從所述消息中獲得所述待推送內容。
[0011] 所述推送服務器利用所述登錄概率最高的消息發送通道發送攜帶了所述待推送 內容的消息,之前還包括:
[0012] 所述推送服務器判斷最高的登錄概率是否大于預設數值;如果是,則所述推送服 務器執行利用所述登錄概率最高的消息發送通道發送攜帶了所述待推送內容的消息的過 程;如果否,則所述推送服務器確定特定消息發送通道,并利用所述特定消息發送通道發送 攜帶了所述待推送內容的消息。
[0013] 所述推送服務器獲得每個消息發送通道在指定時間內的登錄概率之前,所述方法 還包括:
[0014] 在需要向用戶發送待推送內容時,所述推送服務器獲得所述用戶在多個消息發送 通道分別對應的用戶標識;
[0015] 針對每個消息發送通道,所述推送服務器利用所述用戶在消息發送通道對應的用 戶標識查詢所述用戶在所述消息發送通道下是否處于登錄狀態;
[0016] 如果所述用戶在所有消息發送通道下均為未處于登錄狀態,則所述推送服務器執 行獲得每個消息發送通道在指定時間內的登錄概率,并利用登錄概率最高的消息發送通道 發送攜帶了所述待推送內容的消息的過程。
[0017] 所述推送服務器利用所述用戶在消息發送通道對應的用戶標識查詢所述用戶在 所述消息發送通道下是否處于登錄狀態之后,所述方法還包括:
[0018] 如果所述用戶只在一個消息發送通道下處于登錄狀態,則所述推送服務器通過該 一個消息發送通道發送攜帶了所述待推送內容的消息;
[0019] 如果所述用戶在多個消息發送通道下處于登錄狀態,則所述推送服務器利用預設 選擇策略從所述多個消息發送通道中選擇一個消息發送通道,并利用該選擇的一個消息發 送通道發送攜帶了所述待推送內容的消息。
[0020] 所述推送服務器獲得所述用戶在多個消息發送通道分別對應的用戶標識的過程, 具體包括:
[0021] 所述推送服務器接收來自業務服務器的攜帶了用戶信息的消息;
[0022] 當所述用戶信息為用戶在多個消息發送通道分別對應的用戶標識時,所述推送服 務器從來自所述業務服務器的消息中獲得所述用戶在多個消息發送通道分別對應的用戶 標識;或者,當所述用戶信息為用戶名時,所述推送服務器通過所述用戶名查詢本地維護的 用戶標識表項,以獲得所述用戶在多個消息發送通道分別對應的用戶標識;其中,所述用戶 標識表項用于記錄用戶名與用戶在多個消息發送通道分別對應的用戶標識之間的對應關 系。
[0023] 針對每個消息發送通道,所述推送服務器利用所述用戶在消息發送通道對應的用 戶標識查詢所述用戶在所述消息發送通道下是否處于登錄狀態的過程,具體包括:
[0024] 所述推送服務器向消息發送通道對應的應用服務器發送攜帶了用戶在所述消息 發送通道對應的用戶標識的請求消息,由所述應用服務器利用所述用戶標識查詢所述用戶 在所述消息發送通道下是否處于登錄狀態;
[0025] 所述推送服務器接收來自所述應用服務器的攜帶了所述用戶在所述消息發送通 道下處于登錄狀態或者未處于登錄狀態的響應消息;
[0026] 所述推送服務器通過所述響應消息中攜帶的信息確定所述用戶在所述消息發送 通道下處于登錄狀態或者在所述消息發送通道下未處于登錄狀態。
[0027] 所述推送服務器通過消息發送通道發送攜帶了所述待推送內容的消息的過程,具 體包括:
[0028] 所述推送服務器生成各應用服務器分別對應的消息模板,并將各應用服務器分別 對應的消息模板分別發送給所述各應用服務器;
[0029] 在通過消息發送通道發送攜帶所述待推送內容的消息時,所述推送服務器將所述 待推送內容發送給所述消息發送通道對應的應用服務器,由所述應用服務器利用消息模板 和所述待推送內容生成消息,并發送所述消息。
[0030] 本申請實施例提供一種推送服務器,所述推送服務器具體包括:
[0031] 獲得模塊,用于獲得待推送內容;
[0032] 確定模塊,用于針對多個消息發送通道,獲得每個消息發送通道在指定時間內的 登錄概率,并確定登錄概率最高的消息發送通道;
[0033] 發送模塊,用于利用所述登錄概率最高的消息發送通道發送攜帶了所述待推送內 容的消息。
[0034] 所述獲得模塊,具體用于在需要向用戶發送待推送內容時,接收來自業務服務器 的攜帶了待推送內容的消息,并從所述消息中獲得所述待推送內容。
[0035] 所述發送模塊,進一步用于判斷最高的登錄概率是否大于預設數值;
[0036] 如果是,則執行利用所述登錄概率最高的消息發送通道發送攜帶了所述待推送內 容的消息的過程;如果否,則確定特定消息發送通道,并利用所述特定消息發送通道發送攜 帶了所述待推送內容的消息。
[0037] 所述獲得模塊,還用于在需要向用戶發送待推送內容時,獲得所述用戶在多個消 息發送通道分別對應的用戶標識;
[0038] 所述確定模塊,還用于針對每個消息發送通道,利用所述用戶在消息發送通道對 應的用戶標識查詢用戶在所述消息發送通道下是否處于登錄狀態;
[0039] 所述發送模塊,進一步用于如果所述用戶在所有消息發送通道下均為未處于登錄 狀態,則執行獲得每個消息發送通道在指定時間內的登錄概率,利用登錄概率最高的消息 發送通道發送攜帶了所述待推送內容的消息的過程。
[0040] 所述發送模塊,還用于如果所述用戶只在一個消息發送通道下處于登錄狀態,則 通過該一個消息發送通道發送攜帶了所述待推送內容的消息;
[0041] 如果所述用戶在多個消息發送通道下處于登錄狀態,則利用預設選擇策略從所述 多個消息發送通道中選擇一個消息發送通道,并利用該選擇的一個消息發送通道發送攜帶 了所述待推送內容的消息。
[0042] 所述獲得模塊,具體用于接收來自業務服務器的攜帶了用戶信息的消息;
[0043] 當所述用戶信息為用戶在多個消息發送通道分別對應的用戶標識時,從來自所述 業務服務器的消息中獲得所述用戶在多個消息發送通道分別對應的用戶標識;或者,當所 述用戶信息為用戶名時,通過所述用戶名查詢所述推送服務器本地維護的用戶標識表項, 以獲得所述用戶在多個消息發送通道分別對應的用戶標識;其中,所述用戶標識表項用于 記錄用戶名與用戶在多個消息發送通道分別對應的用戶標識之間的對應關系。
[0044] 所述確定模塊,具體用于向消