推送直播节目的方法和装置与流程

文档序号:11157646阅读:335来源:国知局
推送直播节目的方法和装置与制造工艺

本申请涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及一种推送直播节目的方法和装置。



背景技术:

随着互联网社区类产品的快速发展,用户需求呈爆发式增长,其中,视频直播业务作为用户实时交流的一种有效方式,以其丰富多彩的直播种类和实时快捷的交流特点,受到用户的欢迎。如何智能的为大量用户在千万个直播中选取其感兴趣的直播,是目前需要解决的一大问题。

目前,业界通用的流媒体直播解决方案包括:用户在进入某个线上直播节目时计入人气值,在直播节目中向主播的送礼行为也计入人气值,直播节目按照人气值由高到低排序,从首页进入的新用户可以直接看到直播人气排行榜。如果首页无用户喜欢的直播节目,用户可以下拉翻页以请求相对人气较弱的直播节目,依次类推,直至直播节目全部浏览完毕。

然而,目前的流媒体直播解决方案,人气越高的直播节目越靠在首页前端,那么大部分用户会流入到前端展示的几个直播节目内,造成恶性循环。另外,由于直播节目的人气可以通过小号僵尸粉丝或送礼等行为进行加成,易被别有用心的主播通过刷量行为占据排名榜单前几位,从而造成不良影响,还可能导致直播平台的多样性较差,内容同质化严重,产品竞争力弱。



技术实现要素:

本申请的目的在于提出一种改进的一种推送直播节目的方法和装置,来解决以上背景技术部分提到的技术问题。

第一方面,本申请提供了一种推送直播节目的方法,所述方法包括:根据直播端与用户端的距离由近及远排序距所述用户端预定距离内的当前直播节目信息,得到地理排序数据;根据用户画像与当前直播节目的标签的匹配度由大至小排序当前直播节目信息,得到标签排序数据;基于所述地理排序数据和所述标签排序数据,向用户端推送直播节目。

在一些实施例中,所述基于所述地理排序数据和所述标签排序数据,向用户端推送直播节目包括:基于所述地理排序数据和所述标签排序数据,确定待选直播节目信息列表;遍历所述待选直播节目信息列表,并在访问每一条待选直播节目信息时,遍历记录历史推送的直播节目的唯一标识号和推送时间的哈希表,并在访问所述哈希表中的每一条记录时,执行对预定时长内已推送直播节目的过滤步骤,得到预选直播节目信息列表;基于所述预选直播节目信息列表,得到向用户端推送的直播节目信息列表;基于向用户端推送的直播节目信息列表,向用户端推送直播节目。

在一些实施例中,所述过滤步骤包括:查询当前记录中是否存在当前待选直播节目信息中包括的唯一标识号,若是,则判断当前时间距所述当前记录中的推送时间的时长是否小于所述预定时长,若是,则从待选直播节目信息列表中删除所述当前待选直播节目信息。

在一些实施例中,所述方法还包括:在向用户端推送直播节目时,将推送的直播节目的唯一标识号和推送时间添加至所述哈希表中。

在一些实施例中,所述基于所述预选直播节目信息列表,得到向用户端推送的直播节目信息列表包括:对于所述预选直播节目信息列表中的地理排序数据和标签排序数据,分别以其关键字为键,以其中各直播节目信息中包括的唯一标识号为值,构建地理排序数据的键值数据库和标签排序数据的键值数据库;查询所述地理排序数据的键值数据库的键对应的权重和所述地理排序数据的键值数据库的值对应的排序得分,计算地理键值数据库中各直播节目的推送得分;查询所述标签排序数据的键值数据库的键对应的权重和所述标签排序数据的键值数据库的值对应的排序得分,计算标签键值数据库中各直播节目的推送得分;根据推送得分从大到小对所述地理键值数据库中各直播节目的推送得分和所述标签键值数据库中各直播节目的推送得分进行排序,得到排序结果;基于所述排序结果,得到向用户推送的直播节目列表。

在一些实施例中,所述查询所述地理排序数据的键值数据库的键对应的权重和所述地理排序数据的键值数据库的值对应的排序得分,计算地理键值数据库中各直播节目的推送得分包括:在预设的关键字-权重数据库中,查询所述地理排序数据的键值数据库的键对应的权重,得到地理关键字权重,并在预设的排序号-得分数据库中,查询所述地理排序数据的键值数据库的值在所述地理排序数据的键值数据库中的排序对应的得分,得到地理排序得分;将各地理排序得分分别乘以所述地理关键字权重,得到所述地理键值数据库中各直播节目的推送得分;以及所述查询所述标签排序数据的键值数据库的键对应的权重和所述标签排序数据的键值数据库的值对应的排序得分,计算标签键值数据库中各直播节目的推送得分包括:在所述关键字-权重数据库中,查询所述标签排序数据的键值数据库的键对应的权重,得到标签关键字权重,并在所述排序号-得分数据库查询所述标签排序数据的键值数据库的值在所述标签排序数据的键值数据库中的排序对应的得分,得到标签排序得分;将各标签排序得分分别乘以所述标签关键字权重,得到所述标签键值数据库中各直播节目的推送得分。

在一些实施例中,所述预设的关键字-权重数据库中的权重基于以下规则进行调整:响应于用户对向用户端推送的直播节目的点击,增加被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重,减少未被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重。

在一些实施例中,所述基于所述地理排序数据和所述标签排序数据,向用户端推送直播节目包括:基于所述地理排序数据、所述标签排序数据和预设的推送规则,向用户端推送直播节目。

第二方面,本申请提供了一种推送直播节目的装置,所述装置包括:地理数据获取单元,用于根据直播端与用户端的距离由近及远排序距所述用户端预定距离内的当前直播节目信息,得到地理排序数据;标签数据获取单元,用于根据用户画像与当前直播节目的标签的匹配度由大至小排序当前直播节目信息,得到标签排序数据;直播节目推送单元,用于基于所述地理排序数据和所述标签排序数据,向用户端推送直播节目。

在一些实施例中,所述直播节目推送单元包括:待选节目确定单元,用于基于所述地理排序数据和所述标签排序数据,确定待选直播节目信息列表;预选节目确定单元,用于遍历所述待选直播节目信息列表,并在访问每一条待选直播节目信息时,遍历记录历史推送的直播节目的唯一标识号和推送时间的哈希表,并在访问所述哈希表中的每一条记录时,经由过滤单元执行对预定时长内已推送直播节目的过滤步骤,得到预选直播节目信息列表;推送信息确定单元,用于基于所述预选直播节目信息列表,得到向用户端推送的直播节目信息列表;推送节目确定单元,用于基于向用户端推送的直播节目信息列表,向用户端推送直播节目。

在一些实施例中,所述过滤单元包括:标识号查询单元,用于查询当前记录中是否存在当前待选直播节目信息中包括的唯一标识号;时长判定单元,用于若当前记录中存在当前待选直播节目信息中包括的唯一标识号,则判断当前时间距所述当前记录中的推送时间的时长是否小于所述预定时长;删除信息判定单元,用于若当前时间距所述当前记录中的推送时间的时长小于所述预定时长,则从待选直播节目信息列表中删除所述当前待选直播节目信息。

在一些实施例中,所述装置还包括:哈希表记录添加单元,用于在向用户端推送直播节目时,将推送的直播节目的唯一标识号和推送时间添加至所述哈希表中。

在一些实施例中,所述推送信息确定单元包括:数据库构建单元,用于对于所述预选直播节目信息列表中的地理排序数据和标签排序数据,分别以其关键字为键,以其中各直播节目信息中包括的唯一标识号为值,构建地理排序数据的键值数据库和标签排序数据的键值数据库;地理推送得分计算单元,用于查询所述地理排序数据的键值数据库的键对应的权重和所述地理排序数据的键值数据库的值对应的排序得分,计算地理键值数据库中各直播节目的推送得分;标签推送得分计算单元,用于查询所述标签排序数据的键值数据库的键对应的权重和所述标签排序数据的键值数据库的值对应的排序得分,计算标签键值数据库中各直播节目的推送得分;推送得分排序单元,用于根据推送得分从大到小对所述地理键值数据库中各直播节目的推送得分和所述标签键值数据库中各直播节目的推送得分进行排序,得到排序结果;节目列表确定单元,用于基于所述排序结果,得到向用户推送的直播节目列表。

在一些实施例中,所述地理推送得分计算单元进一步用于:在预设的关键字-权重数据库中,查询所述地理排序数据的键值数据库的键对应的权重,得到地理关键字权重,并在预设的排序号-得分数据库中,查询所述地理排序数据的键值数据库的值在所述地理排序数据的键值数据库中的排序对应的得分,得到地理排序得分;将各地理排序得分分别乘以所述地理关键字权重,得到所述地理键值数据库中各直播节目的推送得分;以及所述标签推送得分计算单元进一步用于:在所述关键字-权重数据库中,查询所述标签排序数据的键值数据库的键对应的权重,得到标签关键字权重,并在所述排序号-得分数据库查询所述标签排序数据的键值数据库的值在所述标签排序数据的键值数据库中的排序对应的得分,得到标签排序得分;将各标签排序得分分别乘以所述标签关键字权重,得到所述标签键值数据库中各直播节目的推送得分。

在一些实施例中,所述地理推送得分计算单元和所述标签推送得分计算单元中的预设的关键字-权重数据库中的权重基于以下规则进行调整:响应于用户对向用户端推送的直播节目的点击,增加被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重,减少未被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重。

在一些实施例中,所述直播节目推送单元进一步用于:基于所述地理排序数据、所述标签排序数据和预设的推送规则,向用户端推送直播节目。

本申请提供的推送直播节目的方法和装置,首先根据直播端与用户端的距离由近及远排序距用户端预定距离内的当前直播节目信息,得到地理排序数据;并根据用户画像与当前直播节目的标签的匹配度由大至小排序当前直播节目信息,得到标签排序数据;最后基于地理排序数据和标签排序数据,向用户端推送直播节目,从而扩展了向用户推送直播节目时参考的数据的维度,提高了推送的针对性和精准性,并提升了向用户推送的直播节目的多样性,避免了现有技术中根据直播节目的人气推送直播节目存在的主播通过刷量行为占据排名榜单的漏洞,同时提升了直播平台上的直播节目的多样性,避免了直播内容的同质化,提升了直播节目产品的竞争力。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本申请可以应用于其中的示例性系统架构图;

图2是根据本申请的推送直播节目的方法的一个实施例的示意性流程图;

图3是根据本申请实施例的基于地理排序数据和标签排序数据向用户端推送直播节目的方法的一个实施例的示意性流程图;

图4是根据本申请实施例的基于预选直播节目信息列表得到向用户端推送的直播节目信息列表的方法的一个实施例的示意性流程图;

图5是根据本申请的推送直播节目的方法的一个实施例的示例性应用场景;

图6是根据本申请的推送直播节目的装置的一个实施例的示例性结构图;

图7是根据本申请实施例的直播节目推送单元的一个实施例的示例性结构图;

图8是根据本申请实施例的推送信息确定单元的一个实施例的示例性结构图;

图9是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出了可以应用本申请的推送直播节目的方法或推送直播节目的装置的实施例的示例性系统架构100。

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105、106。网络104用以在终端设备101、102、103和服务器105、106之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户110可以使用终端设备101、102、103通过网络104与服务器105、106交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如视频播放类应用、搜索引擎类应用、购物类应用、即时通信工具、邮箱客户端、社交平台软件等。

终端设备101、102、103可以是具有显示屏并且支持弹幕交互功能的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。

服务器105、106可以是提供各种服务的服务器,例如对终端设备101、102、103提供支持的后台服务器。后台服务器可以对终端提交的数据进行分析等处理,并将处理结果(例如向用户端推送的直播节目)反馈给终端设备。

需要说明的是,本申请中实施例所提供的推送直播节目的方法一般由服务器105、106执行,相应地,推送直播节目的装置一般设置于服务器105、106中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

继续参考图2,示出了根据本申请的推送直播节目的方法的一个实施例的流程200。该推送直播节目的方法,包括以下步骤:

步骤201,根据直播端与用户端的距离由近及远排序距用户端预定距离内的当前直播节目信息,得到地理排序数据。

在本实施例中,考虑到社交行为的地域性特征,可以先获取用户端的地理位置,之后可以选取直播端的地理位置距所述用户端的地理位置在预定距离内的当前直播节目,之后可以根据所述直播端与用户端的距离由近及远对选取的当前直播节目进行排序,最后将排序结果作为地理排序数据,以备后续推送直播节目时调用。

在这里,通过获取地理排序数据,可以将用户端的地理位置参数作为推送直播节目时的参考维度,从而提高向用户推送直播节目的针对性和精准度。

步骤202,根据用户画像与当前直播节目的标签的匹配度由大至小排序当前直播节目信息,得到标签排序数据。

在本实施例中,为了根据用户点击直播节目的历史数据确定用户感兴趣的直播节目,可以首先根据用户历史访问的直播节目的标签,记录用户画像,例如若用户访问了标签为AA的直播节目,则为用户记录AA这一画像,之后获取当前直播节目的标签,之后获取用户画像与当前直播节目的标签的匹配度,最后根据匹配度由大至小对当前直播节目进行排序,得到标签排序数据。

在这里,通过获取标签排序数据,可以将用户点击直播节目的历史数据作为推送直播节目时的参考维度,从而提高向用户推送直播节目的针对性和精准度。

步骤203,基于地理排序数据和标签排序数据,向用户端推送直播节目。

在本实施例中,可以将上述步骤201中得到的地理排序数据和上述步骤202中得到的标签排序数据作为向用户端推送直播节目的参考维度,并在这两个参考维度的基础上,向用户端推送直播节目。

在这里,通过将地理排序数据和标签排序数据作为向用户端推送直播节目的参考维度,可以提高向用户端推送直播节目的针对性和推送直播节目的精准度。

在本实施例的一些可选实现方式中(图中未示出),上述基于地理排序数据和标签排序数据,向用户端推送直播节目可以包括:基于地理排序数据、标签排序数据和预设的推送规则,向用户端推送直播节目。

在本实现方式中,在地理排序数据和标签排序数据之外引入其它预设的推送规则,可以在向用户推送直播节目时引入更多的参考维度,从而进一步提高向用户推送直播节目的针对性和精准度。

应当理解,本申请上述实施例中的步骤201和步骤202,可以并行执行,也可以先后分步执行;在先后分步执行时,可以先执行步骤201中的操作,之后执行步骤202中的操作,也可以先执行步骤202中的操作,之后执行步骤201的操作,本申请对此不做限定。进一步地,在对预设的关键字-权重数据库中的权重进行调整时,对被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重增加预定数值,和对未被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重减少预设数值,两个操作步骤可以同时执行,也可以先后分步执行,本申请对此不做限定。

本申请上述实施例提供的推送直播节目的方法,首先根据直播端与用户端的距离由近及远排序距用户端预定距离内的当前直播节目信息,得到地理排序数据;并根据用户画像与当前直播节目的标签的匹配度由大至小排序当前直播节目信息,得到标签排序数据;之后基于地理排序数据和标签排序数据,向用户端推送直播节目,扩展了向用户推送直播节目时参考的数据的维度,从而提高了向用户推送直播节目的针对性和精准性,并提升了向用户推送的直播节目的多样性,避免了现有技术中根据直播节目的人气推送直播节目存在的主播通过刷量行为占据排名榜单的漏洞,同时提升了直播平台上的直播节目的多样性,避免直播内容的同质化,提升直播节目产品的竞争力。

以下结合图3,说明图2示出的实施例中的基于地理排序数据和标签排序数据向用户端推送直播节目的方法。

进一步参考图3,图3示出了根据本申请实施例的基于地理排序数据和标签排序数据向用户端推送直播节目的方法的一个实施例的示意性流程图。

如图3所示,基于地理排序数据和标签排序数据向用户端推送直播节目的方法300可以包括:

在步骤301中,基于地理排序数据和标签排序数据,确定待选直播节目信息列表;

在步骤302中,遍历待选直播节目信息列表,并在访问每一条待选直播节目信息时,遍历记录历史推送的直播节目的唯一标识号和推送时间的哈希表,并在访问哈希表中的每一条记录时,执行对预定时长内已推送直播节目的过滤步骤,得到预选直播节目信息列表;

在步骤303中,基于预选直播节目信息列表,得到向用户端推送的直播节目信息列表;

在步骤304中,基于向用户端推送的直播节目信息列表,向用户端推送直播节目。

在本实施例中,当基于地理排序数据和标签排序数据,确定待选直播节目信息列表时,可以从地理排序数据中选择预定数量的直播节目信息、从标签排序数据中选择预设数量的直播节目信息,从而得到待选直播节目信息列表。这里的预定数量为预先设定的从地理排序数据中获取直播节目的数量,预设数量为预先设定的从标签排序数据中获取直播节目的数量,预定数量和预设数量的数值可以相同,也可以不同。

这里的哈希表,其中的每一条记录包括了历史推送的直播节目的唯一标识号和推送时间。通过遍历哈希表中的每一条记录是否包括当前直播节目的唯一标识号,在记录中包括当前直播节目的唯一标识号时判定记录中的推送时间距当前时间的时长是否大于预定时间,并在记录中的推送时间距当前时间的时长大于预定时间时,删除当前待选直播节目信息,可以实现对待选直播节目信息列表中距当前时间小于预定时长的已推送过的直播节目信息进行过滤,从而避免在预定时长内重复推送直播节目。

本申请上述实施例的基于地理排序数据和标签排序数据向用户端推送直播节目的方法,通过对预定时长内已推送直播节目的过滤,提高了向用户推送直播节目的针对性和精准度,并且避免了在预定时长内向用户重复推送直播节目。

在本实施例的一些可选实现方式中(图中未示出),过滤步骤可以包括:查询当前记录中是否存在当前待选直播节目信息中包括的唯一标识号,若是,则判断当前时间距当前记录中的推送时间的时长是否小于预定时长,若是,则从待选直播节目信息列表中删除当前待选直播节目信息。

在本实现方式中,若哈希表的记录中存在当前待选直播节目信息中包括的唯一标识号,也即表明当前待选直播节目信息曾被推送给用户端,此时需要了解上一次推送时间距当前时间的时长,若时长大于预定时长,则可以再次推送,若时长小于预定时长,则可以删除该当前待选直播节目信息,从而避免重复推送。

在本实施例的一些可选实现方式中(图中未示出),推送直播节目的方法还可以包括:在向用户端推送直播节目时,将推送的直播节目的唯一标识号和推送时间添加至上述的哈希表中,从而可以及时更新已推送的直播节目的历史记录。

以下结合图4,说明图3示出的实施例中基于预选直播节目信息列表得到向用户端推送的直播节目信息列表的方法。

进一步参考图4,图4示出了根据本申请实施例的基于预选直播节目信息列表得到向用户端推送的直播节目信息列表的方法的一个实施例的示意性流程图。

如图4所示,该基于预选直播节目信息列表得到向用户端推送的直播节目信息列表的方法400可以包括:

在步骤401中,对于预选直播节目信息列表中的地理排序数据和标签排序数据,分别以其关键字为键,以其中各直播节目信息中包括的唯一标识号为值,构建地理排序数据的键值数据库和标签排序数据的键值数据库;

在步骤402中,查询地理排序数据的键值数据库的键对应的权重和地理排序数据的键值数据库的值对应的排序得分,计算地理键值数据库中各直播节目的推送得分;

在步骤403中,查询标签排序数据的键值数据库的键对应的权重和标签排序数据的键值数据库的值对应的排序得分,计算标签键值数据库中各直播节目的推送得分;

在步骤404中,根据推送得分从大到小对地理键值数据库中各直播节目的推送得分和标签键值数据库中各直播节目的推送得分进行排序,得到排序结果;

在步骤405中,基于排序结果,得到向用户推送的直播节目列表。

在本实施例中,通过对预选直播节目信息列表中的地理排序数据和标签排序数据分别构建键值数据库,之后查询键的权重和值的排序得分,之后根据键的权重和值的排序得分确定预选直播节目信息列表中每一个预选直播节目信息的推送得分,之后基于推送得分排序预选直播节目信息,最后基于排序后的预选直播节目信息,得到向用户推送的直播节目列表,实现了对预选直播节目信息列表中的地理排序数据的推送得分和标签排序数据的推送得分的归一化处理,使得两者的推送得分标准化,从而便于实现对推送得分的比较和排序。

在本实施例的一些可选实现方式中(图中未示出),上述查询地理排序数据的键值数据库的键对应的权重和地理排序数据的键值数据库的值对应的排序得分,计算地理键值数据库中各直播节目的推送得分可以包括:在预设的关键字-权重数据库中,查询地理排序数据的键值数据库的键对应的权重,得到地理关键字权重,并在预设的排序号-得分数据库中,查询地理排序数据的键值数据库的值在地理排序数据的键值数据库中的排序对应的得分,得到地理排序得分;将各地理排序得分分别乘以地理关键字权重,得到地理键值数据库中各直播节目的推送得分;以及上述查询标签排序数据的键值数据库的键对应的权重和标签排序数据的键值数据库的值对应的排序得分,计算标签键值数据库中各直播节目的推送得分可以包括:在关键字-权重数据库中,查询标签排序数据的键值数据库的键对应的权重,得到标签关键字权重,并在排序号-得分数据库查询标签排序数据的键值数据库的值在标签排序数据的键值数据库中的排序对应的得分,得到标签排序得分;将各标签排序得分分别乘以标签关键字权重,得到标签键值数据库中各直播节目的推送得分。

在本实现方式中,通过预设的关键字-权重数据库和预设的排序号-得分数据库,可以查询出地理排序数据的键值数据库的键对应的权重和地理排序数据的键值数据库的值对应的排序得分,以及查询出标签排序数据的键值数据库的键对应的权重和标签排序数据的键值数据库的值对应的排序得分,之后通过获取权重与排序得分的乘积,实现了将预选直播节目信息列表中的地理排序数据的推送得分和标签排序数据的推送得分的归一化处理,使得两者的推送得分标准化,以便实现对推送得分的比较和排序。

在本实施例的一些可选实现方式中(图中未示出),为了体现用户对推送的直播节目的点击操作对预设的关键字-权重数据库的影响,上述的预设的关键字-权重数据库中的权重可以基于以下规则进行调整:响应于用户对向用户端推送的直播节目的点击,将被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重增加预定数值,将未被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重减少预设数值。这里的预定数值和预设数值可以根据用户对推送的直播节目的历史点击数据确定。通过根据用户对推送的直播节目的点击操作对关键字的权重进行调整,进一步提高了向用户推送直播节目的针对性和精准度。

应当理解,本申请上述实施例中的推送直播节目的方法,仅为对本申请的示例性描述,并不代表对本申请的限定。例如,可以根据需要将其中包括的多个步骤合并为一个步骤,也可以根据需要将其中包括的单个步骤拆分为多个子步骤。服务器端可以为单个服务器、多个服务器或服务器集群等。

以下结合图5,描述根据本申请的推送直播节目的方法的一个实施例的示例性应用场景。

如图5所示,本申请的推送直播节目的方法可以通过流媒体直播推送系统500来实现,流媒体直播推送系统500可以包括:推送子系统510、子系统调用器520、推送排行榜过滤器530、推送排行榜合并器540、点击效果统计器550等几大部分。

该流媒体直播推送系统500,可以通过以下阶段来实现推送直播节目的方法:

一、推送子系统510阶段(注:此阶段为流媒体直播系统后台预操作阶段,用户角度并无任何感知):

应当理解,上述图2中得到地理排序数据的过程,可以在本应用场景中采用地理位置推送子系统实现;上述图2中得到标签排序数据的过程,可以在本应用场景中采用标签推送子系统实现。

以下为推送子系统510阶段实现的步骤:

在步骤一中:在地理位置推送子系统为每一个观众记录其地理位置,如果有主播开播记录其主播的地理位置;

在步骤二中:在步骤一之后,如果某一个用户进行首页直播间拉取,则计算用户端和主播端的距离关系,以用户端为中心画一个以预定长度为半径的圆;

在步骤三中:在步骤二之后,系统里边位于圆里的所有主播,以距离远近排序形成内部的优先级队列(例如距离近的主播优先级更高),为上层系统调用提供物料;

在步骤四中:在标签推送子系统,在主播每次开播时获取该直播要沉淀的‘圈子’,‘圈子’即标记为此次直播的标签,例如主播可以在AA圈子进行直播,那AA就是这个直播的标签;

在步骤五中:在步骤四获取了每一个直播的标签后,用户每点击一次直播的标签便为用户记录一个‘画像’,例如用户点击‘AA’标签的直播,那么用户就具有了‘AA’这个‘画像’;

在步骤六中:将步骤四的标签与步骤五的画像进行匹配,如果直播流中有其它标签匹配到用户的推送策略中都放入到这个子系统内,为上层系统调用提供物料。

在步骤七中:根据预设的推送规则,将符合预设的推送规则的当前直播节目放入该规则推送子系统内。

二、子系统调用器520阶段(注:此步骤为流媒体直播系统后台预操作阶段,用户角度并无任何感知):

应当理解,上述图2中基于地理排序数据和标签排序数据,向用户端推送直播节目的过程,可以通过该阶段实现地理排序数据和标签排序数据的调用。

以下为子系统调用器520阶段实现的步骤:

在步骤一中:子系统调用器保存一个用户已经在子系统的调用上下文,即下一次查询要查优先级队列的第1到第N个数据,其中N大于等于1。

在步骤二中:上层调用方在子系统调用器注册要查询的子系统。

在步骤三中:子系统调用器并行的对多个子系统进行数据调用,并将返回的数据以子系统键值为数据接口返回上层调用方使用。

三、推送排行榜过滤器530阶段(注:此步骤为流媒体直播系统后台预操作阶段,用户角度并无任何感知):

应当理解,上述图3中基于地理排序数据和标签排序数据向用户端推送直播节目的方法,可以通过该阶段实现对待选直播节目信息列表中已推送的直播节目信息的过滤。

以下为推送排行榜过滤器530阶段实现的步骤:

在步骤一中:对子系统调用器的直播信息以直播唯一标识号(id)为键值进行遍历,在历史直播推送记录的哈希表中查询是否已推送过该直播信息;

在步骤二中:若推送过,则判断上次添加至哈希表中的推送时间距当前时间的时长是否超过预定时长(例如1小时);

在步骤三中:若推送过并且上一次推送时间距当前时间的时长并未超过预定时长,则直接丢弃该直播信息;

在步骤四中:如果未被推送过或者推送时间距当前时间的时长超过预定时长,则将该直播信息保留,并将最新的推送时间添加至哈希记录表中。

四、推送排行榜合并器540阶段(注:此步骤为流媒体直播系统后台预操作阶段,用户角度并无任何感知):

应当理解,上述图4中基于预选直播节目信息列表得到向用户端推送的直播节目信息列表的方法,可以通过该阶段实现。

以下为推送排行榜合并器540阶段实现的步骤:

在步骤一中:将已经过滤过的各个子系统直播id构造成以子系统的键值为索引的数据结构;

在步骤二中:以子系统的键值为索引关键词,查询权重系统中其对应的系统权重;

在步骤三中:将每个子系统的权重乘以对应子系统中直播信息的排序得分,从而进行归一化的数值处理,得到推送得分,基于推送得分对多个子系统中的直播信息进行排序,得到一个完整的推送列表,根据推送列表向用户推送直播节目。

五、点击效果统计器550阶段:

应当理解,上述图4中基于地理排序数据和标签排序数据向用户端推送直播节目的方法,可以通过该阶段实现用户对推送的直播节目的统计以及对预设的关键字-权重数据库的权重的调整。

以下为点击效果统计器550阶段实现的步骤:

在步骤一中:对用户端560返回的所有直播推送页(此时用户实际已获得了完整的推送直播节目列表,但是机器推送给用户的数据不一定就是最好的,所以建立负反馈机制),将用户点击的直播间在权重系统中的子系统权重加成一个权重因子;

在步骤二中:对返回的所有直播推送页,将用户未点击的直播间在权重系统中的子系统权重减少一个权重因子。

应当理解,上述应用场景仅为本申请实施例的一个示例性应用场景,并不代表对本申请的限定。例如,上述地理位置推送子系统的调用和上述标签推送子系统的调用,可以并行进行,也可以先后分步执行。若先后分步执行,可以先执行地理位置推送子系统的调用,也可以先执行标签推送子系统的调用。又例如,上述调整权重系统中的子系统权重因子,对于点击的直播间在权重系统中的子系统权重因子的加成和未点击的直播间在权重系统中的子系统权重因子的减少,可以同步进行,也可以先后分别进行,且先后分别进行的顺序可以为任意顺序,本申请对此不做限定。

上述应用场景中推送直播节目的方法,可以实现子系统在自身维度进行直播间的精准排序;上述的推送榜合并器可以通过归一化操作将多个子系统的评价标准纳入到统一的评价标准体系中,以便进行多个子系统的推送得分的比较;上述点击效果统计器的负反馈,可以对权重系统中的子系统权重的进行动态调配。

进一步参考图6,作为对上述推送直播节目的方法的实现,本申请提供了一种推送直播节目的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,由此,上文针对方法描述的操作和特征同样适用于装置600及其中包含的单元,在此不再赘述。该装置具体可以应用于各种电子设备中。

如图6所示,本实施例的推送直播节目的装置600包括:地理数据获取单元610、标签数据获取单元620和直播节目推送单元630。

其中,地理数据获取单元610,用于根据直播端与用户端的距离由近及远排序距用户端预定距离内的当前直播节目信息,得到地理排序数据。

标签数据获取单元620,用于根据用户画像与当前直播节目的标签的匹配度由大至小排序当前直播节目信息,得到标签排序数据。

直播节目推送单元630,用于基于地理排序数据和标签排序数据,向用户端推送直播节目。

在本实施例的一些可选实现方式中(图中未示出),直播节目推送单元进一步用于:基于地理排序数据、标签排序数据和预设的推送规则,向用户端推送直播节目。

以下结合图7,说明图6中示出的直播节目推送单元。

进一步参考图7,作为对上述基于地理排序数据和标签排序数据向用户端推送直播节目的方法的实现,本申请提供了一种直播节目推送单元的一个实施例,该单元实施例与图3所示的方法实施例相对应,由此,上文针对方法描述的操作和特征同样适用于单元700及其中包含的单元,在此不再赘述。该单元具体可以应用于图6所示的装置中。

图7示出了根据本申请实施例的直播节目推送单元的一个实施例的示例性结构图。

如图7所示,直播节目推送单元700可以包括:

待选节目确定单元710,用于基于地理排序数据和标签排序数据,确定待选直播节目信息列表。

预选节目确定单元720,用于遍历待选直播节目信息列表,并在访问每一条待选直播节目信息时,遍历记录历史推送的直播节目的唯一标识号和推送时间的哈希表,并在访问哈希表中的每一条记录时,经由过滤单元执行对预定时长内已推送直播节目的过滤步骤,得到预选直播节目信息列表。

推送信息确定单元730,用于基于预选直播节目信息列表,得到向用户端推送的直播节目信息列表。

推送节目确定单元740,用于基于向用户端推送的直播节目信息列表,向用户端推送直播节目。

在本实施例的一些可选实现方式中(图中未示出),过滤单元包括:标识号查询单元,用于查询当前记录中是否存在当前待选直播节目信息中包括的唯一标识号;时长判定单元,用于若当前记录中存在当前待选直播节目信息中包括的唯一标识号,则判断当前时间距当前记录中的推送时间的时长是否小于预定时长;删除信息判定单元,用于若当前时间距当前记录中的推送时间的时长小于预定时长,则从待选直播节目信息列表中删除当前待选直播节目信息。

在本实施例的一些可选实现方式中(图中未示出),装置还包括:哈希表记录添加单元,用于在向用户端推送直播节目时,将推送的直播节目的唯一标识号和推送时间添加至哈希表中。

以下结合图8,说明图7中示出的推送信息确定单元。

进一步参考图8,作为对上述基于预选直播节目信息列表得到向用户端推送的直播节目信息列表的方法的实现,本申请提供了一种推送信息确定单元的一个实施例,该单元实施例与图4所示的方法实施例相对应,由此,上文针对方法描述的操作和特征同样适用于单元800及其中包含的单元,在此不再赘述。该单元具体可以应用于图7所示的直播节目推送单元中。

图8示出了根据本申请实施例的推送信息确定单元的一个实施例的示例性结构图。

如图8所示,推送信息确定单元800可以包括:

数据库构建单元810,用于对于预选直播节目信息列表中的地理排序数据和标签排序数据,分别以其关键字为键,以其中各直播节目信息中包括的唯一标识号为值,构建地理排序数据的键值数据库和标签排序数据的键值数据库。

地理推送得分计算单元820,用于查询地理排序数据的键值数据库的键对应的权重和地理排序数据的键值数据库的值对应的排序得分,计算地理键值数据库中各直播节目的推送得分;

标签推送得分计算单元830,用于查询标签排序数据的键值数据库的键对应的权重和标签排序数据的键值数据库的值对应的排序得分,计算标签键值数据库中各直播节目的推送得分;

推送得分排序单元840,用于根据推送得分从大到小对地理键值数据库中各直播节目的推送得分和标签键值数据库中各直播节目的推送得分进行排序,得到排序结果;

节目列表确定单元850,用于基于排序结果,得到向用户推送的直播节目列表。

在本实施例的一些可选实现方式中(图中未示出),地理推送得分计算单元进一步用于:在预设的关键字-权重数据库中,查询地理排序数据的键值数据库的键对应的权重,得到地理关键字权重,并在预设的排序号-得分数据库中,查询地理排序数据的键值数据库的值在地理排序数据的键值数据库中的排序对应的得分,得到地理排序得分;将各地理排序得分分别乘以地理关键字权重,得到地理键值数据库中各直播节目的推送得分;以及标签推送得分计算单元进一步用于:在关键字-权重数据库中,查询标签排序数据的键值数据库的键对应的权重,得到标签关键字权重,并在排序号-得分数据库查询标签排序数据的键值数据库的值在标签排序数据的键值数据库中的排序对应的得分,得到标签排序得分;将各标签排序得分分别乘以标签关键字权重,得到标签键值数据库中各直播节目的推送得分。

在本实施例的一些可选实现方式中(图中未示出),地理推送得分计算单元和标签推送得分计算单元中的预设的关键字-权重数据库中的权重基于以下规则进行调整:响应于用户对向用户端推送的直播节目的点击,增加被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重,减少未被点击的直播节目所属的排序数据的关键字在预设的关键字-权重数据库中的权重。

应当理解,本申请上述实施例中的推送直播节目的装置,仅为对本申请的示例性描述,并不代表对本申请的限定。例如,可以根据需要将其中包括的多个单元合并为一个单元,也可以根据需要将其中包括的单个单元拆分为多个子单元。服务器端可以为单个服务器、多个服务器或服务器集群等。

下面参考图9,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统900的结构示意图。

如图9所示,计算机系统900包括中央处理单元(CPU)901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有系统900操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。

以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口909。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(CPU)901执行时,执行本申请的方法中限定的上述功能。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个单元、程序段、或代码的一部分,所述单元、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括地理数据获取单元、标签数据获取单元和直播节目推送单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,地理数据获取单元还可以被描述为“根据直播端与用户端的距离由近及远排序距用户端预定距离内的当前直播节目信息,得到地理排序数据的单元”。

作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:根据直播端与用户端的距离由近及远排序距用户端预定距离内的当前直播节目信息,得到地理排序数据;根据用户画像与当前直播节目的标签的匹配度由大至小排序当前直播节目信息,得到标签排序数据;基于地理排序数据和标签排序数据,向用户端推送直播节目。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1