发明内容
本发明所要解决的技术问题是提供一种网络直播的开播消息推送方法,增强开播消息的推送效果。
本发明还提供了一种网络直播的开播消息推送装置,用以保证上述方法在实际中的实现及应用。
一种网络直播的开播消息推送方法,包括:
在当前的推送时段内,当检测到观众端所关注的目标直播间开启直播状态时,确定所述目标直播间所属的推送队列,所述推送队列为所述观众端在所述推送时段内对应的优先推送队列或所述观众端在所述推送时段内对应的非优先推送队列;所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间为预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定的;
若所述目标直播间所属的推送队列为所述优先推送队列,则获取当前已向所述观众端推送的开播消息的数量,若当前已向所述观众端推送的开播消息的数量未大于预先设置的推送阈值,则向所述观众端推送所述目标直播间的开播消息;
若所述目标直播间所属的推送队列为所述非优先推送队列,则获取第一推送数量、第二推送数量以及所述优先推送队列包含的直播间的数量;依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件,若满足,则向所述观众端推送所述目标直播间的开播消息;其中,所述第一推送数量为当前已向所述观众端推送的与所述优先推送队列对应的开播消息的数量;所述第二推送数量为当前已向所述观众端推送的与所述非优先推送队列对应的开播消息的数量。
上述的方法,可选的,预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间的过程,包括:
获取所述观众端所关注的各个直播间的推荐度以及开播预测结果;
在所述观众端所关注的各个直播间中确定备选直播间,其中,所述备选直播间为其开播预测结果表征为所述推送时段内开启直播状态的直播间;
按各个所述备选直播间的推荐度由大至小的顺序,选取预设数目的备选直播间,其中,所述预设数目小于等于所述推送阈值;
将已选取的备选直播间确定为优先推送队列中的直播间,将所述观众端所关注的所有直播间中除所述已选取的备选直播间以外的各个直播间确定为非优先推送队列中的直播间。
上述的方法,可选的,获取所述观众端所关注的各个直播间的推荐度的过程,包括:
获取所述观众端与其所关注的每一所述直播间对应的互动数据;所述互动数据包括观看时长数据、送礼记录数据、观看次数以及发言次数;
对于所述观众端所关注的每个直播间,依据该直播间的观看时长、送礼记录数据、观看次数以及发言次数获得该直播间的推荐度。
上述的方法,可选的,获取所述观众端所关注的各个直播间的开播预测结果的过程,包括:
确定所述推送时段对应的日期信息;
获取所述观众端所关注的各个直播间的与所述日期信息对应的历史播放数据;
依据所述日期信息以及各个所述历史播放数据,得到所述观众端所关注的每一直播间的开播预测分数;
对于所述观众端所关注的每个直播间,依据该直播间的开播预测分数得到该直播间的开播预测结果。
上述的方法,可选的,所述依据所述日期信息以及各个所述历史播放数据,得到所述观众端所关注的每一直播间的开播预测分数,包括:
对于每个所述直播间,依据所述日期信息,判断所述推送时段是否处于节日,若是,则依据所述直播间的历史播放数据得到所述直播间的连续指数、星期指数、节日指数以及历史开播指数,依据所述连续指数、所述星期指数以及历史开播指数,得到所述直播间的开播预测分数;若否,则依据所述直播间的历史播放数据得到所述直播间的连续指数、星期指数以及历史开播指数;依据所述连续指数、所述星期指数以及所述历史开播指数得到所述直播间的开播预测分数。
上述的方法,可选的,所述依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件,包括:
判断所述优先推送队列包含的直播间的数量与所述第二推送数量之和是否小于等于所述推送数量阈值与所述第一推送数量之和;
若所述优先推送队列包含的直播间的数量与所述第二推送数量之和小于等于所述推送数量阈值与所述第一推送数量之和,则确定所述目标直播间满足所述推送条件。
上述的方法,可选的,所述确定所述目标直播间所属的推送队列,包括:
获取所述目标直播间的标识信息;
依据所述标识信息遍历与所述观众端对应的队列配置文件,获得与所述标识信息对应的队列标识;
依据所述队列标识确定所述目标直播间所属的推送队列。
一种网络直播的开播消息推送装置,包括:
确定单元,用于在当前的推送时段内,当检测到观众端所关注的目标直播间开启直播状态时,确定所述目标直播间所属的推送队列,所述推送队列为所述观众端在所述推送时段内对应的优先推送队列或所述观众端在所述推送时段内对应的非优先推送队列;所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间为预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定的;
第一推送单元,用于当所述目标直播间所属的推送队列为所述优先推送队列时,获取当前已向所述观众端推送的开播消息的数量,若当前已向所述观众端推送的开播消息的数量未大于预先设置的推送阈值,则向所述观众端推送所述目标直播间的开播消息;
第二推送单元,用于当所述目标直播间所属的推送队列为所述非优先推送队列时,获取第一推送数量、第二推送数量以及所述优先推送队列包含的直播间的数量;依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件,若满足,则向所述观众端推送所述目标直播间的开播消息;其中,所述第一推送数量为当前已向所述观众端推送的与所述优先推送队列对应的开播消息的数量;所述第二推送数量为当前已向所述观众端推送的与所述非优先推送队列对应的开播消息的数量。
一种存储介质,所述存储介质包括存储指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如上述的网络直播的开播消息推送方法。
一种电子设备,包括存储器,以及一个或者一个以上的指令,其中一个或一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行如上述的网络直播的开播消息推送方法。
与现有技术相比,本发明包括以下优点:
本发明提供了一种网络直播的开播消息推送方法和装置,该方法包括:在当前的推送时段内,当检测到观众端所关注的目标直播间开启直播状态时,确定所述目标直播间所属的推送队列,所述推送队列为所述观众端在所述推送时段内对应的优先推送队列或所述观众端在所述推送时段内对应的非优先推送队列;所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间为预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定的;若所述目标直播间所属的推送队列为所述优先推送队列,则获取当前已向所述观众端推送的开播消息的数量,若当前已向所述观众端推送的开播消息的数量未大于预先设置的推送阈值,则向所述观众端推送所述目标直播间的开播消息;若所述目标直播间所属的推送队列为所述非优先推送队列,则获取第一推送数量、第二推送数量以及所述优先推送队列包含的直播间的数量;依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件,若满足,则向所述观众端推送所述目标直播间的开播消息;其中,所述第一推送数量为当前已向所述观众端推送的与所述优先推送队列对应的开播消息的数量;所述第二推送数量为当前已向所述观众端推送的与所述非优先推送队列对应的开播消息的数量。增强开播消息的推送效果。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种网络直播的开播消息推送方法,该方法可以应用在多种***平台,其执行主体可以为服务器的处理器,所述服务器可以为计算机终端或各种移动设备,所述方法的方法流程图如图1所示,具体包括:
S101:在当前的推送时段内,当检测到观众端所关注的目标直播间开启直播状态时,确定所述目标直播间所属的推送队列,所述推送队列为所述观众端在所述推送时段内对应的优先推送队列或所述观众端在所述推送时段内对应的非优先推送队列;所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间为预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定的。
本发明实施例提供的方法中,一个推送时段可以为一天、一个星期或者一个月等,优选的,一个推送时段为一天。
其中,该观众端关注的直播间可以为一个或多个,将检测到该观众端所关注的任一直播间开启直播状态时,将当前开启直播状态的直播间确定为目标直播间。
本发明实施例提供的方法中,可以预先获取观众端所关注的各个直播间的历史播放数据,依据每个直播间的历史播放数据确定该直播间的推荐度以及开播预测结果,该直播间的推荐度表征该观众端对该直播间的喜好程度,直播间的开播预测结果为该直播间当前推送时段内是否会开启直播状态的预测结果。
具体的,预先将观众端所关注的各个直播间划分为优先推送队列以及非优先推送队列,其中,优先推送队列中的每个直播间的开播预测结果均表征其所属的直播间在当前推送时段内开启直播状态。
该目标直播间可以属于优先推送队列,也可以属于非优先推送队列。
S102:若所述目标直播间所属的推送队列为所述优先推送队列,则获取当前已向所述观众端推送的开播消息的数量,若当前已向所述观众端推送的开播消息的数量未大于预先设置的推送阈值,则向所述观众端推送所述目标直播间的开播消息。
本发明实施例提供的方法中,在目标直播间属于优先推送队列的情况下,获取在当前推送时段内已向该观众端推送的开播消息的数量,并确定与该观众端对应的推送阈值,将已向观众端推送的开播消息的数量与推送阈值进行比对,若已向观众端推送的开播消息的数量未大于推送阈值,则向观众端推送直播间的开播消息,若该数量大于推送阈值,则结束当前推送流程。
S103:若所述目标直播间所属的推送队列为所述非优先推送队列,则获取第一推送数量、第二推送数量以及所述优先推送队列包含的直播间的数量;依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件,若满足,则向所述观众端推送所述目标直播间的开播消息;其中,所述第一推送数量为当前已向所述观众端推送的与所述优先推送队列对应的开播消息的数量;所述第二推送数量为当前已向所述观众端推送的与所述非优先推送队列对应的开播消息的数量。
本发明实施例提供的方法中,向观众端推送优先推送队列中的直播间的开播消息时,更新第一推送数量,即,每发送一个优先推送队列中的直播间的开播消息,第一推送数量加1。
相似的,向观众端推送非优先推送队列的直播间的开播消息时,更新第二推送数量,更新第二推送数量,在每发送一个非优先推送队列中的直播间的开播消息的情况下,第二推送数量加1。
在目标直播间满足该推送条件的情况下,生成目标直播间对应的开播消息,将该开播消息推送至观众端,以提示用户进入该目标直播间观看直播。
应用本发明实施例提供的方法,能够合理为观众端所关注的各个直播间分配消息推送份额,增强直播间的开播消息的推送效果,使得用户能够接收其感兴趣的直播间的消息,进而能够让用户观看到其感兴趣的直播内容。
本发明实施例提供的方法,基于上述的实施过程,具体的,预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间的过程,如图2所示,具体包括:
S201:获取所述观众端所关注的各个直播间的推荐度以及开播预测结果。
具体的,在当前推送时段的前一推送时段,预先获取观众端所述关注的各个直播间的推荐度以及开播预测结果,每一直播间均对应一个推荐度以及一个开播预测结果。
S202:在所述观众端所关注的各个直播间中确定备选直播间,其中,所述备选直播间为其开播预测结果表征为所述推送时段内开启直播状态的直播间。
其中,可以依次解析每一直播间的开播预测结果,进而确定每一开播预测结果是否表征其所属的直播间在该推送时段内开启直播状态,若是,将该直播间确定为备选直播间。
S203:按各个所述备选直播间的推荐度由大至小的顺序,选取预设数目的备选直播间,其中,所述预设数目小于等于所述推送阈值。
具体的,可以依据各个备选直播间的推荐度大小为各个备选直播间进行排序,并按各个备选直播间的推荐度大至小的选取预设数目的备选直播间,该预设数目的取值范围可以为0至推送阈值之间的正整数,具体可由技术人员依据实际需求进行设定。
S204:将已选取的备选直播间确定为优先推送队列中的直播间,将所述观众端所关注的所有直播间中除所述已选取的备选直播间以外的各个直播间确定为非优先推送队列中的直播间。
本发明实施例提供的方法中,通过各个直播间的推荐度以及开播预测结果,将观众端所述关注的各个直播间划分为优先推送队列以及非优先推送队列,能够增强开播消息的推送效果。
本发明实施例提供的方法,基于上述的实施过程,具体的,获取所述观众端所关注的各个直播间的推荐度的过程,包括:
获取所述观众端与其所关注的每一所述直播间对应的互动数据;所述互动数据包括观看时长数据、送礼记录数据、观看次数以及发言次数;
对于每一所述直播间,依据所述直播间的观看时长、送礼记录数据、观看次数以及发言次数获得所述直播间的推荐度。
其中,观看时长数据可以为观众端每天观看直播间的平均时长,该观看次数为该观众端进入该直播间的次数。
本发明实施例提供的方法中,每个直播间的推荐度的计算方式如下:
Qi=R1×K1+R2×K2+R3×K3+R4×K4
其中,Qi为直播间i的推荐度,R1为观看时长数据,K1为R1的权重值,R2为送礼记录数据,K2为R2的权重值,R3为观看次数,K3为R3的权重值,R4为发言次数,K4为R4的权重值。
应用本发明实施例提供的方法,通过观众端与直播间的互动数据,生成直播间的推荐度,能够准确的描述观众端对应的用户对各个直播间的感兴趣程度。
本发明实施例提供的方法,基于上述的实施过程,具体的,获取所述观众端所关注的各个直播间的开播预测结果的过程,如图3所示,具体包括:
S301:确定所述推送时段对应的日期信息。
本发明实施例提供的方法中,该日期信息包含年-月-日信息、星期信息以及节假日信息等,例如,该推送时段对应的日期信息可以为“2019年09月13日、星期五、中秋节”。
S302:获取所述观众端所关注的各个直播间的与所述日期信息对应的历史播放数据。
本发明实施例提供的方法中,可以获取该日期信息以前的预设推送周期内每一推送时段的播放数据,每个直播间的历史播放数据可以为该直播间过去若干天的播放数据集合。
S303:依据所述日期信息以及各个所述历史播放数据,得到所述观众端所关注的每一直播间的开播预测分数。得到所述观众端所关注的每一直播间的开播预测分数的一种方式是:对于每个所述直播间,依据所述日期信息,判断所述推送时段是否处于节日,若是,则依据所述直播间的历史播放数据得到所述直播间的连续指数、星期指数、节日指数以及历史开播指数,依据所述连续指数、所述星期指数以及历史开播指数,得到所述直播间的开播预测分数;若否,则依据所述直播间的历史播放数据得到所述直播间的连续指数、星期指数以及历史开播指数;依据所述连续指数、所述星期指数以及所述历史开播指数得到所述直播间的开播预测分数。
该连续指数可以为连续开播指数或连续关播指数,将当前推送时段的前一推送时段确定为第一历史推送时段,将第一历史推送时段的前一推送时段确定为第二历史推送时段;对于每个直播间,若该直播间在第二历史推送时段开启直播状态,则可以获取该直播间的连续开播指数,若该直播间在第二推送时段未开启直播状态,则可以获取该直播间的连续关播指数。
获取直播间的连续关播指数的一种方式可以为:确定该直播间与第二历史推送时段对应的连续关播的推送时段数目,即,连续关播的天数,并选取多组未开播的连续天数,确定各组未开播连续天数小于等于直播间与第二历史推送时段对应的连续关播天数的占比e1,其中,连续关播指数c1=100×e1。
例如,直播间与第二历史推送时段对应的连续关播天数为5天,选取的每组的连续关播天数分别为3天、4天、5天、8天、10天,则各组连续关播天数中的三组,小于等于直播间第二历史推送时段对应的连续关播天数,故有e1=3/5。
获取直播间的连续开播指数的一种方式可以为:确定该直播间与第二历史推送时段对应的连续开播的推送时段数目,即,连续开播的天数,确定历史播放数据中各组未关播的连续天数,确定各组连续开播的天数大于直播间与第二历史推送时段对应的连续关播天数的占比e2,连续开播指数c2=100×e2。
例如,直播间与第二历史推送时段对应的连续开播天数为8天,各组连续开播分数为6天、7天、8天、9天、10天、11天、12天,则e2=3/7。
获取直播间的星期指数的一种方式可以为:确定该推送时段的星期信息,获取历史播放数据中与该星期信息对应的开播状况数据,确定在该星期信息对应的开播状况数据中表征开播的开播状况数据的占比e3,星期指数w=100×e3。
例如,该推送时段的星期信息为星期五,在过去的12个星期中,直播间在各星期的星期五开播的次数为5次,即,历史播放数据中存在12个与星期二对应的开播状况数据,表征“开启直播状态”的开播状况数据的数量为5,故有e3=5/12。
在该推送时段的日期信息表征该推送时段处于节日的情况下,获取直播间的节日指数的一种方式可以为:确认该节日的节日类型,在直播间的历史播放数据中确定该节日类型对应的播放数据,依据该节日类型对应的开播状况数据得到该直播间的节日指数,具体的,可以确定直播间在该节日类型对应的开播状况数据标志开播的开播状况数据的占比e4,节日指数h=100×e4,该节日类型可以春节、劳动节、端午节、中秋节、国庆节等等。
例如,若该推送时段对应的节日为中秋节,则获取过去一段时间该直播间在各个节日的开播状况数据,也可以仅获取过去一段时间,该直播间在中秋节的开播状况数据,若在过去的5个中秋节中,直播间在过去的各个中秋节的开播次数为2次,即,历史播放数据中存在5个与该节日类型对应的开播状况数据,表征“开启直播状态”的开播状况数据的数量为2,故有e4=2/5。
获取直播间的历史开播指数的一种方式可以为:获取历史播放数据中每天的开播状况数据,确定所有开播状况数据的数量以及各个开播状况数据中表征为“开启直播状态”的开播状况数据的数量,确定各个开播状况数据中表征为“开启直播状态”的开播状况数据的占比e5,历史开播指数a=100×e5。
在本发明实施例提供的方法中,判断该推送时段是否处于节日,若是,则获取预先设置的第一连续指数权重Wc1、第一星期指数权重Ww1、节日指数权重Wh以及第一历史开播指数权重Wa1;若否,则获取预先设置的第二连续指数权重Wc2、第二星期指数权重Ww2、以及第二历史开播指数权重Wa2;其中,第一总权重W1=Wc1+Ww1+Wh+Wa1,第二总权重W2=Wc2+Ww2+Wa2,可选的,W1=100、Wc1=20、Ww1=20、Wh=20、Wa=10;W2=80、
Wc2=20、Ww2=20、Wa2=10。
若该推送时段处于节日,则计算直播间的开播预测分数的一种方式可以为:
Q=c×Wc1/W+w×Ww1/W+h×Wh1/W+a×Wa1/W
可得,Q=0.5c+0.2w+0.2h×+0.1a,连续指数c可以为连续关播指数或连续开播指数,Q为开播预测分数。
若该推送时段未处于节日,则计算直播间的开播预测分数的一种方式可以为:
Q=c×Wc2/W+w×Ww2/W+a×Wa2/W
可得,Q=0.625c+0.25w++0.125a,Q为开播预测分数。
若该推送时段处于节点,则计算直播间的开播预测分数的另一种可选的方式为:
将连续指数c、星期指数w、节日指数h以及历史开播指数a进行归一化处理,得到归一化连续指数分值Rc、归一化星期指数Rw、归一化节日指数分值Rh、归一化历史开播指数分值Ra。
则,Q=Rc×Wc1+Rw×Ww1/W+Rh×Wh1+Ra×Wa1,Q为开播预测分数。
若该推送时段处于节点,则计算直播间的开播预测分数的另一种可选的方式为:
将连续指数c、星期指数w以及历史开播指数a进行归一化处理,得到归一化连续指数分值Rc、归一化星期指数Rw、归一化历史开播指数分值Ra。
则,Q=Rc×Wc2+Rw×Ww2+Ra×Wa2,Q为开播预测分数。
需要说明的是,本发明实施例提供的归一化公式为:
其中,X为当前待归一化的指数,Xmin为各个待归一化的指数中分值最小的指数,Xmax为各个待归一化的指数中分值最大的指数,F(0,1)为当前待归一化的指数对应的归一化分值。
S304:对于所述观众端所关注的每个直播间,依据该直播间的开播预测分数得到该直播间的开播预测结果。
本发明实施例提供的方法中,获取到每个直播间的开播预测分数后,分别将该开播预测分数与预先设置的开播分数阈值进行比较,以确定得到每个直播间的开播预测结果。
具体的,对于每个直播间,判断该直播间的开播预测分数是否大于开播分数阈值,若开播预测分数大于开播分数阈值,则确定该直播间的开播预测结果表征该直播间在该推送时段将开启直播状态,若开播预测分数未大于开播分数阈值,则确定该直播间的开播预测结果表征该直播间在该推送时段将不开启直播状态。
应用本发明实施例提供的方法,能够提高主播间的开播预测结果的准确率。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件的一种可选的方式为:
判断所述优先推送队列包含的直播间的数量与所述第二推送数量之和是否小于等于所述推送数量阈值与所述第一推送数量之和;
若所述优先推送队列包含的直播间的数量与所述第二推送数量之和小于等于所述推送数量阈值与所述第一推送数量之和,则确定所述目标直播间满足所述推送条件。
另一种可选的方式为:
设第一推送数量为c_used,第二推送数量为o_used,优先推送队列包含的直播间的数量为Pc,推送数量阈值为Z,其中,c_used为整数、o_used、Pc以及Z均为整数。
判断o_used是否小于等于(Z-Pc+c_used),若是,则确定所述目标直播间满足推送条件,若否,则确定所述目标直播间不满足推送条件。
即,若该目标直播间所属的推送队列为非优先推送队列的情况下,具体的,若o_used≤(Z-Pc+c_used),则可以向观众端推送目标直播间的开播消息。
例如,假设推送数量阈值为10,第一推送数量为3,第二推送数量为5,优先推送队列中包含的直播间的数量为5个,则可得(Z-Pc+c_used)=8,大于第二推送数量,因此,可确定该目标直播间满足推送条件,生成与该目标直播间对应的开播通知消息,并将该开播通知消息推送至该观众端。
本发明实施例提供的方法中,基于上述的实施过程,可选的,所述确定所述目标直播间所属的推送队列,包括:
获取所述目标直播间的标识信息;
依据所述标识信息遍历与所述观众端对应的队列配置文件,获得与所述标识信息对应的队列标识;
依据所述队列标识确定所述目标直播间所属的推送队列。
本发明实施例提供的方法中,该标识信息可以为该目标直播间对应的主播ID或目标直播间的房间号等等。
其中,该队列配置文件中预先记录有观众端关注的每个直播间的标识信息和该标识信息所属的推送队列的队列标识之间的关系,依据该队列标识可以确定目标直播间所属的推送队列,例如,若该队列标识为二进制数0,则可以确定该目标直播间所属的推送队列为优先推送队列,若该队列标识为二进制数1,则可以确定该目标直播间所属的推送队列为非优先推送队列。
应用本发明实施例提供的方法,能够快速的确定出目标直播间所属的推送队列,缩短了开播消息的推送时间,提高了开播消息推送效率。
在本发明实施例提供方法,可以应用在各个网络直播领域,为了清楚阐述本发明提供的网络直播的开播消息推送方法的实施原理,下面进行举例说明:
参见图4,为本发明提供的一实施场景示例图,本发明实施例提供的实施场景包括了服务器401、主播端402以及观众端403。
实施时,图4所示的主播端402以及观众端403可以是诸如手机、平板电脑、个人计算机等电子设备。服务器401可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。服务器401与主播端402通过网络建立通信连接,服务器401与观众端通过网络建立通信连接。
本发明实施例涉及的网络为提供通信链路的介质,该网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
在当前推送时段内,网络主播可以通过其对应的主播端相服务器发送开播请求,使得该主播对应的直播间进入开播状态,将该直播间确定为目标直播间,服务器检测到网络主播对应的直播间开启直播状态时,确定关注该直播间的各个观众端。
对于每个关注该直播间的观众端,服务器确定该目标直播间所属的推送队列,该推送队列为该观众端的优先推送队列或非优先推送队列;需要说明的是,该目标直播间在不同的观众端中所属的推送队列可以相同或不同,每个观众端的优先推送队列包含的直播间以及非优先推送队列包含的直播间是依据该观众端所关注的各个直播间的推荐度以及开播预测结果确定的。
对于每个关注该直播间的观众端,若目标直播间所属的推送队列为该观众端的优先推送队列,则获取当前已向该观众端推送的开播消息的数量,若当前已向该观众端推送的开播消息的数量未大于预先设置的推送阈值,则向该观众端推送所述目标直播间的开播消息;若目标直播间所属的推送队列为该观众端的非优先推送队列,则获取第一推送数量、第二推送数量以及优先推送队列包含的直播间的数量;依据第一推送数量、第二推送数量、优先推送队列包含的直播间的数量以及预先设置的推送阈值判断目标直播间是否满足向该观众端推送开播消息的推送条件,若满足,则向该观众端推送目标直播间的开播消息。
应该理解,图4中示出的服务器、主播端以及观众端的数量仅是示意性的,可以根据实际需要具有多个服务器、多个主播端以及多个观众端。
与图1所述的方法相对应,本发明实施例还提供了一种网络直播的开播消息推送装置,用于对图1中方法的具体实现,本发明实施例提供的网络直播的开播消息推送装置可以应用于服务器中,其结构示意图如图5所示,具体包括:
确定单元501,用于在当前的推送时段内,当检测到观众端所关注的目标直播间开启直播状态时,确定所述目标直播间所属的推送队列,所述推送队列为所述观众端在所述推送时段内对应的优先推送队列或所述观众端在所述推送时段内对应的非优先推送队列;所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间为预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定的;
第一推送单元502,用于当所述目标直播间所属的推送队列为所述优先推送队列时,获取当前已向所述观众端推送的开播消息的数量,若当前已向所述观众端推送的开播消息的数量未大于预先设置的推送阈值,则向所述观众端推送所述目标直播间的开播消息;
第二推送单元503,用于当所述目标直播间所属的推送队列为所述非优先推送队列时,获取第一推送数量、第二推送数量以及所述优先推送队列包含的直播间的数量;依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件,若满足,则向所述观众端推送所述目标直播间的开播消息;其中,所述第一推送数量为当前已向所述观众端推送的与所述优先推送队列对应的开播消息的数量;所述第二推送数量为当前已向所述观众端推送的与所述非优先推送队列对应的开播消息的数量。
本发明提供了一种网络直播的开播消息推送装置,在当前的推送时段内,当检测到观众端所关注的目标直播间开启直播状态时,确定所述目标直播间所属的推送队列,所述推送队列为所述观众端在所述推送时段内对应的优先推送队列或所述观众端在所述推送时段内对应的非优先推送队列;所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间为预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定的;若所述目标直播间所属的推送队列为所述优先推送队列,则获取当前已向所述观众端推送的开播消息的数量,若当前已向所述观众端推送的开播消息的数量未大于预先设置的推送阈值,则向所述观众端推送所述目标直播间的开播消息;若所述目标直播间所属的推送队列为所述非优先推送队列,则获取第一推送数量、第二推送数量以及所述优先推送队列包含的直播间的数量;依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件,若满足,则向所述观众端推送所述目标直播间的开播消息;其中,所述第一推送数量为当前已向所述观众端推送的与所述优先推送队列对应的开播消息的数量;所述第二推送数量为当前已向所述观众端推送的与所述非优先推送队列对应的开播消息的数量。增强开播消息的推送效果。
在本发明提供的一实施例中,基于上述的方案,可选的,还包括:
获取单元,用于获取所述观众端所关注的各个直播间的推荐度以及开播预测结果;
第一确定单元,用于在所述观众端所关注的各个直播间中确定备选直播间,其中,所述备选直播间为其开播预测结果表征为所述推送时段内开启直播状态的直播间;
选取单元,用于按各个所述备选直播间的推荐度由大至小的顺序,选取预设数目的备选直播间,其中,所述预设数目小于等于所述推送阈值;
第二确定单元,用于将已选取的备选直播间确定为优先推送队列中的直播间,将所述观众端所关注的所有直播间中除所述已选取的备选直播间以外的各个直播间确定为非优先推送队列中的直播间。
在本发明提供的一实施例中,基于上述的方案,可选的,获取所述观众端所关注的各个直播间的推荐度的获取单元,被配置为:
获取所述观众端与其所关注的每一所述直播间对应的互动数据;所述互动数据包括观看时长数据、送礼记录数据、观看次数以及发言次数;
对于所述观众端所关注的每个直播间,依据该直播间的观看时长、送礼记录数据、观看次数以及发言次数获得该直播间的推荐度。
在本发明提供的一实施例中,基于上述的方案,可选的,获取所述观众端所关注的各个直播间的开播预测结果的所述获取单元,包括:
第一确定子单元,用于确定所述推送时段对应的日期信息;
获取子单元,用于获取所述观众端所关注的各个直播间的与所述日期信息对应的历史播放数据;
生成子单元,用于依据所述日期信息以及各个所述历史播放数据,得到所述观众端所关注的每一直播间的开播预测分数;
预测子单元,用于对于所述观众端所关注的每个直播间,依据该直播间的开播预测分数得到该直播间的开播预测结果。
在本发明提供的一实施例中,基于上述的方案,可选的,所述生成子单元,被配置为:
对于每个所述直播间,依据所述日期信息,判断所述推送时段是否处于节日,若是,则依据所述直播间的历史播放数据得到所述直播间的连续指数、星期指数、节日指数以及历史开播指数,依据所述连续指数、所述星期指数以及历史开播指数,得到所述直播间的开播预测分数;若否,则依据所述直播间的历史播放数据得到所述直播间的连续指数、星期指数以及历史开播指数;依据所述连续指数、所述星期指数以及所述历史开播指数得到所述直播间的开播预测分数。
在本发明提供的一实施例中,基于上述的方案,可选的,第二推送单元503,包括:
判断子单元,判断所述优先推送队列包含的直播间的数量与所述第二推送数量之和是否小于等于所述推送数量阈值与所述第一推送数量之和;
第二确定子单元,用于当所述优先推送队列包含的直播间的数量与所述第二推送数量之和小于等于所述推送数量阈值与所述第一推送数量之和时,确定所述目标直播间满足所述推送条件。
在本发明提供的一实施例中,基于上述的方案,可选的,所述确定单元501,包括:
获取子单元,用于获取所述目标直播间的标识信息;
查询子单元,用于依据所述标识信息遍历与所述观众端对应的队列配置文件,获得与所述标识信息对应的队列标识;
第三确定子单元,用于依据所述队列标识确定所述目标直播间所属的推送队列。
上述本发明实施例公开的网络直播的开播消息推送装置中的各个单元和模块具体的原理和执行过程,与上述本发明实施例公开的网络直播的开播消息推送方法相同,可参见上述本发明实施例提供的网络直播的开播消息推送方法中相应的部分,这里不再进行赘述。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述网络直播的开播消息推送方法。
本发明实施例还提供了一种电子设备,其结构示意图如图6所示,具体包括存储器601,以及一个或者一个以上的指令602,其中一个或者一个以上指令602存储于存储器601中,且经配置以由一个或者一个以上处理器603执行所述一个或者一个以上指令602进行以下操作:
在当前的推送时段内,当检测到观众端所关注的目标直播间开启直播状态时,确定所述目标直播间所属的推送队列,所述推送队列为所述观众端在所述推送时段内对应的优先推送队列或所述观众端在所述推送时段内对应的非优先推送队列;所述优先推送队列包含的各个直播间以及所述非优先推送队列包含的各个直播间为预先依据所述观众端所关注的各个直播间的推荐度以及开播预测结果确定的;
若所述目标直播间所属的推送队列为所述优先推送队列,则获取当前已向所述观众端推送的开播消息的数量,若当前已向所述观众端推送的开播消息的数量未大于预先设置的推送阈值,则向所述观众端推送所述目标直播间的开播消息;
若所述目标直播间所属的推送队列为所述非优先推送队列,则获取第一推送数量、第二推送数量以及所述优先推送队列包含的直播间的数量;依据所述第一推送数量、所述第二推送数量、所述优先推送队列包含的直播间的数量以及预先设置的推送阈值判断所述目标直播间是否满足预先设置的推送条件,若满足,则向所述观众端推送所述目标直播间的开播消息;其中,所述第一推送数量为当前已向所述观众端推送的与所述优先推送队列对应的开播消息的数量;所述第二推送数量为当前已向所述观众端推送的与所述非优先推送队列对应的开播消息的数量。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种网络直播的开播消息推送方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。