本技術(shù)涉及互聯(lián)網(wǎng),尤其涉及消息推送,特別地涉及一種基于觸達策略的消息推送方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、隨著互聯(lián)網(wǎng)軟件的快速發(fā)展,極大方便了人們的日常生活,例如招聘軟件、外賣軟件、購物軟件、打車軟件等功能軟件,這些軟件基本都有向用戶發(fā)送通知消息的需求,為了讓用戶能夠查看到通知消息,除了功能軟件本身,也可以選擇其它渠道來推送消息,例如短信、郵件、公眾號等推送渠道。并且,針對同一推送渠道,不同渠道技術(shù)供應(yīng)商可以提供不同消息推送通道供使用,因此可選擇的消息推送通道逐漸多樣化。
2、相關(guān)技術(shù)中,通常是同一業(yè)務(wù)系統(tǒng)對接同一推送渠道,該業(yè)務(wù)系統(tǒng)所下發(fā)的所有待推送任務(wù)均由該同一推送渠道處理,因此各個推送渠道無法集中統(tǒng)一對接,各個推送渠道之間存在分散管理,無法為待推送任務(wù)靈活選取推送渠道以及消息推送通道,針對各種推送渠道缺乏靈活的控制和管理手段,導(dǎo)致推送功能的靈活性較差。
技術(shù)實現(xiàn)思路
1、有鑒于此,本技術(shù)實施例提供一種基于觸達策略的消息推送方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品,能夠整合各個消息推送通道,為待推送任務(wù)合理分配消息推送通道,實現(xiàn)對推送功能的靈活控制,滿足復(fù)雜業(yè)務(wù)場景下的推送任務(wù)需求。
2、第一方面,本技術(shù)實施例提供一種基于觸達策略的消息推送方法,應(yīng)用于推送平臺,推送平臺用于對接各個消息推送通道,消息推送通道用于指示推送渠道和渠道技術(shù)供應(yīng)商,該方法包括:在接收到各個待推送任務(wù)的情況下,獲取為每個待推送任務(wù)配置的推送配置參數(shù),其中,推送配置參數(shù)包含為待推送任務(wù)選取的觸達策略,觸達策略包括觸達率最優(yōu)策略、推送成本最優(yōu)策略、推送速度最優(yōu)策略中的任意一項;對于每個待推送任務(wù),獲取與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息,并基于推送評估信息確定待推送任務(wù)在各個消息推送通道下的各個推送指標(biāo)值,其中,推送指標(biāo)值為觸達率、推送成本、推送時延中的任意一項;獲取與推送配置參數(shù)中觸達策略關(guān)聯(lián)的預(yù)設(shè)推送條件,并將推送指標(biāo)值滿足預(yù)設(shè)推送條件的消息推送通道作為目標(biāo)推送通道;利用目標(biāo)推送通道對待推送任務(wù)指示的至少一條消息進行推送。
3、在第一方面的一些可實現(xiàn)方式中,獲取與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息,包括:獲取待推送任務(wù)關(guān)聯(lián)的業(yè)務(wù)類型信息,其中,業(yè)務(wù)類型信息用于指示待推送任務(wù)的推送業(yè)務(wù)場景;基于業(yè)務(wù)類型信息,獲取在推送業(yè)務(wù)場景下與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息。
4、在第一方面的一些可實現(xiàn)方式中,觸達策略為觸達率最優(yōu)策略,推送指標(biāo)值為在推送業(yè)務(wù)場景下的觸達率,基于推送評估信息確定待推送任務(wù)在各個消息推送通道下的各個推送指標(biāo)值,包括:將業(yè)務(wù)類型信息作為查詢字段,查詢各個消息推送通道在推送業(yè)務(wù)場景下的消息到達量和消息發(fā)送量,得到推送評估信息;基于每個消息推送通道在推送業(yè)務(wù)場景下的消息到達量和消息發(fā)送量,確定每個消息推送通道在推送業(yè)務(wù)場景下的觸達率。
5、在第一方面的一些可實現(xiàn)方式中,觸達策略為推送成本最優(yōu)策略,推送指標(biāo)值為在推送業(yè)務(wù)場景下的推送成本,基于推送評估信息確定待推送任務(wù)在各個消息推送通道下的各個推送指標(biāo)值,包括:將業(yè)務(wù)類型信息作為查詢字段,查詢各個消息推送通道在推送業(yè)務(wù)場景下的報價表,得到推送評估信息,其中,報價表中包含不同消息推送量區(qū)間對應(yīng)的報價;基于報價表和待推送任務(wù)指示的消息推送量,確定在推送業(yè)務(wù)場景下每個消息推送通道處理待推送任務(wù)的推送成本。
6、在第一方面的一些可實現(xiàn)方式中,推送配置參數(shù)還包含推送支持參數(shù),推送支持參數(shù)用于指示待推送任務(wù)支持的推送渠道和/或渠道技術(shù)供應(yīng)商,基于業(yè)務(wù)類型信息,獲取在推送業(yè)務(wù)場景下與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息,包括:將業(yè)務(wù)類型信息和推送支持參數(shù)組合后作為查詢字段,查詢待推送任務(wù)支持的所有消息推送通道,在推送業(yè)務(wù)場景下與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息;其中,目標(biāo)推送通道為推送指標(biāo)值滿足預(yù)設(shè)推送條件,且被待推送任務(wù)支持的消息推送通道。
7、在第一方面的一些可實現(xiàn)方式中,觸達策略為速度優(yōu)先策略,獲取與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息,并基于推送評估信息確定待推送任務(wù)在各個消息推送通道下的各個推送指標(biāo)值,包括:從redis中獲取各個消息推送通道中待推送消息的消息堆積數(shù)量和消息推送速度,得到推送評估信息,其中,消息推送通道中的消息堆積數(shù)量基于預(yù)設(shè)周期定時查詢;基于每個消息推送通道中待推送消息的消息堆積數(shù)量和消息推送速度,確定每個消息推送通道在當(dāng)前周期的推送時延;其中,待推送任務(wù)對應(yīng)的目標(biāo)推送通道,基于各個消息推送通道在不同周期變化的推送時延動態(tài)調(diào)整。
8、在第一方面的一些可實現(xiàn)方式中,推送配置參數(shù)還包含通道優(yōu)先級,每條消息推送通道包含多個與通道優(yōu)先級關(guān)聯(lián)的消息隊列分區(qū),為不同消息隊列分區(qū)分配的推送資源指標(biāo)不同,推送資源指標(biāo)為線程資源或者單次消費消息量額度,利用目標(biāo)推送通道對待推送任務(wù)指示的至少一條消息進行推送,包括:在通過解析推送配置參數(shù)得到通道優(yōu)先級的情況下,將待推送任務(wù)分配至目標(biāo)推送通道中與通道優(yōu)先級關(guān)聯(lián)的消息隊列分區(qū)中;基于消息隊列分區(qū)對應(yīng)的線程資源或者單次消費消息量額度,對消息隊列分區(qū)中的至少一條消息進行推送,其中,消息推送速度與推送資源指標(biāo)值呈正相關(guān)。
9、在第一方面的一些可實現(xiàn)方式中,推送資源指標(biāo)為單次消費消息量額度,基于消息隊列分區(qū)對應(yīng)的消息推送速度,對消息隊列分區(qū)中的至少一條消息進行推送,包括:在目標(biāo)推送通道的第一消息隊列分區(qū)為空的情況下,確定目標(biāo)推送通道中除第一消息隊列分區(qū)以外的消息隊列分區(qū)為第二消息隊列分區(qū);按照多個第二消息隊列分區(qū)關(guān)聯(lián)的通道優(yōu)先級的比例,將第一消息隊列的單次消費消息量額度分配至多個第二消息隊列分區(qū);基于重新分配后的第二消息隊列分區(qū)對應(yīng)的單次消費消息量額度,對至少一條消息進行推送。
10、在第一方面的一些可實現(xiàn)方式中,利用目標(biāo)推送通道對待推送任務(wù)指示的至少一條消息進行推送,包括:在目標(biāo)推送通道數(shù)量大于1的情況下,按照各個目標(biāo)推送通道的推送指標(biāo)值的比例,將至少一條消息分配至各個目標(biāo)推送通道進行推送。
11、第二方面,本技術(shù)實施例提供一種基于觸達策略的消息推送裝置,該裝置包括:獲取模塊,用于在接收到各個待推送任務(wù)的情況下,獲取為每個待推送任務(wù)配置的推送配置參數(shù),其中,推送配置參數(shù)包含為待推送任務(wù)選取的觸達策略,觸達策略包括觸達率最優(yōu)策略、推送成本最優(yōu)策略、推送速度最優(yōu)策略中的任意一項;確定模塊,用于對于每個待推送任務(wù),獲取與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息,并基于推送評估信息確定待推送任務(wù)在各個消息推送通道下的各個推送指標(biāo)值,其中,推送指標(biāo)值為觸達率、推送成本、推送時延中的任意一項;通道分配模塊,用于獲取與推送配置參數(shù)中觸達策略關(guān)聯(lián)的預(yù)設(shè)推送條件,并將推送指標(biāo)值滿足預(yù)設(shè)推送條件的消息推送通道作為目標(biāo)推送通道;消息推送模塊,用于利用目標(biāo)推送通道對待推送任務(wù)指示的至少一條消息進行推送。
12、在第二方面的一些可實現(xiàn)方式中,獲取模塊包括:獲取子單元,用于獲取待推送任務(wù)關(guān)聯(lián)的業(yè)務(wù)類型信息,其中,業(yè)務(wù)類型信息用于指示待推送任務(wù)的推送業(yè)務(wù)場景;獲取子單元,還用于基于業(yè)務(wù)類型信息,獲取在推送業(yè)務(wù)場景下與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息。
13、在第二方面的一些可實現(xiàn)方式中,觸達策略為觸達率最優(yōu)策略,推送指標(biāo)值為在推送業(yè)務(wù)場景下的觸達率,確定模塊具體用于:將業(yè)務(wù)類型信息作為查詢字段,查詢各個消息推送通道在推送業(yè)務(wù)場景下的消息到達量和消息發(fā)送量,得到推送評估信息;基于每個消息推送通道在推送業(yè)務(wù)場景下的消息到達量和消息發(fā)送量,確定每個消息推送通道在推送業(yè)務(wù)場景下的觸達率。
14、在第二方面的一些可實現(xiàn)方式中,觸達策略為推送成本最優(yōu)策略,推送指標(biāo)值為在推送業(yè)務(wù)場景下的推送成本,確定模塊具體用于:將業(yè)務(wù)類型信息作為查詢字段,查詢各個消息推送通道在推送業(yè)務(wù)場景下的報價表,得到推送評估信息,其中,報價表中包含不同消息推送量區(qū)間對應(yīng)的報價;基于報價表和待推送任務(wù)指示的消息推送量,確定在推送業(yè)務(wù)場景下每個消息推送通道處理待推送任務(wù)的推送成本。
15、在第二方面的一些可實現(xiàn)方式中,推送配置參數(shù)還包含推送支持參數(shù),推送支持參數(shù)用于指示待推送任務(wù)支持的推送渠道和/或渠道技術(shù)供應(yīng)商,獲取子單元具體用于:將業(yè)務(wù)類型信息和推送支持參數(shù)組合后作為查詢字段,查詢待推送任務(wù)支持的所有消息推送通道,在推送業(yè)務(wù)場景下與推送配置參數(shù)中觸達策略關(guān)聯(lián)的推送評估信息;其中,目標(biāo)推送通道為推送指標(biāo)值滿足預(yù)設(shè)推送條件,且被待推送任務(wù)支持的消息推送通道。
16、在第二方面的一些可實現(xiàn)方式中,觸達策略為速度優(yōu)先策略,確定模塊具體用于:從redis中獲取各個消息推送通道中待推送消息的消息堆積數(shù)量和消息推送速度,得到推送評估信息,其中,消息推送通道中的消息堆積數(shù)量基于預(yù)設(shè)周期定時查詢;基于每個消息推送通道中待推送消息的消息堆積數(shù)量和消息推送速度,確定每個消息推送通道在當(dāng)前周期的推送時延;其中,待推送任務(wù)對應(yīng)的目標(biāo)推送通道,基于各個消息推送通道在不同周期變化的推送時延動態(tài)調(diào)整。
17、在第二方面的一些可實現(xiàn)方式中,推送配置參數(shù)還包含通道優(yōu)先級,每條消息推送通道包含多個與通道優(yōu)先級關(guān)聯(lián)的消息隊列分區(qū),為不同消息隊列分區(qū)分配的推送資源指標(biāo)不同,推送資源指標(biāo)為線程資源或者單次消費消息量額度,消息推送模塊包括:隊列分配單元,用于在通過解析推送配置參數(shù)得到通道優(yōu)先級的情況下,將待推送任務(wù)分配至目標(biāo)推送通道中與通道優(yōu)先級關(guān)聯(lián)的消息隊列分區(qū)中;消息推送單元,用于基于消息隊列分區(qū)對應(yīng)的線程資源或者單次消費消息量額度,對消息隊列分區(qū)中的至少一條消息進行推送,其中,消息推送速度與推送資源指標(biāo)值呈正相關(guān)。
18、在第二方面的一些可實現(xiàn)方式中,推送資源指標(biāo)為單次消費消息量額度,消息推送單元具體用于:在目標(biāo)推送通道的第一消息隊列分區(qū)為空的情況下,確定目標(biāo)推送通道中除第一消息隊列分區(qū)以外的消息隊列分區(qū)為第二消息隊列分區(qū);按照多個第二消息隊列分區(qū)關(guān)聯(lián)的通道優(yōu)先級的比例,將第一消息隊列的單次消費消息量額度分配至多個第二消息隊列分區(qū);基于重新分配后的第二消息隊列分區(qū)對應(yīng)的單次消費消息量額度,對至少一條消息進行推送。
19、在第二方面的一些可實現(xiàn)方式中,消息推送模塊具體用于:在目標(biāo)推送通道數(shù)量大于1的情況下,按照各個目標(biāo)推送通道的推送指標(biāo)值的比例,將至少一條消息分配至各個目標(biāo)推送通道進行推送。
20、第三方面,本技術(shù)實施例提供一種電子設(shè)備,包括:處理器以及存儲有計算機程序指令的存儲器;處理器執(zhí)行計算機程序指令時實現(xiàn)如第一方面的基于觸達策略的消息推送方法的步驟。
21、第四方面,本技術(shù)實施例提供一種計算機可讀存儲介質(zhì),計算機可讀存儲介質(zhì)上存儲有計算機程序指令,計算機程序指令被處理器執(zhí)行時實現(xiàn)如第一方面的基于觸達策略的消息推送方法的步驟。
22、第五方面,本技術(shù)實施例提供了一種計算機程序產(chǎn)品,所述計算機程序產(chǎn)品被存儲在非易失的存儲介質(zhì)中,所述計算機程序產(chǎn)品被處理器執(zhí)行時實現(xiàn)如第一方面的基于觸達策略的消息推送方法的步驟。
23、第六方面,本技術(shù)實施例提供了一種芯片,該芯片包括處理器和通信接口,通信接口和處理器耦合,處理器用于運行程序或指令,實現(xiàn)如第一方面的基于觸達策略的消息推送方法的步驟。
24、本技術(shù)提供一種基于觸達策略的消息推送方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品,消息推送通道用于指示推送渠道和渠道技術(shù)供應(yīng)商,推送平臺可以集中統(tǒng)一對接不同渠道技術(shù)供應(yīng)商提供的各個消息推送通道?;诖?,在接收到各個待推送任務(wù)的情況下,通過解析業(yè)務(wù)人員為每個待推送任務(wù)配置的推送配置參數(shù),可以得到每個待推送任務(wù)對應(yīng)的觸達策略,進而獲取與該觸達策略關(guān)聯(lián)的推送評估信息,并基于推送評估信息確定待推送任務(wù)在各個消息推送通道下的各個推送指標(biāo)值。如此,業(yè)務(wù)人員僅指定具體觸達策略即可,推送平臺就能基于該觸達策略所在評估維度,確定各個消息推送通道的推送指標(biāo)值,進而從集中管理的各個消息推送通道中,篩選出推送指標(biāo)值滿足預(yù)設(shè)推送條件的消息推送通道作為目標(biāo)推送通道,相比于直接為待推送任務(wù)指定消息推送通道的推送方案,通過對各個消息推送通道的精準(zhǔn)有效評估,能夠為待推送任務(wù)合理分配消息推送通道,實現(xiàn)對推送功能的靈活控制,滿足復(fù)雜業(yè)務(wù)場景下的推送任務(wù)需求。