发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种在移动端直播间展示活跃用户图像的方法及***,不但能满足主播在移动端的直播间内查看活跃用户的需求,而且能提高用户发言或赠送礼物的意愿,提升直播间内活跃度,直播质量佳。
为达到以上目的,本发明提供一种在移动端直播间展示活跃用户图像的方法,该方法包括以下步骤:
A、当主播登录直播平台开启直播间进行直播时,前台服务器获取并记录该直播间的房间ID;
B、前台服务器判断主播/用户登录直播间时是否是移动端,若是,为该主播/用户的移动端开启活跃用户图像展示功能,转入步骤C;否则,结束操作;
C、直播平台根据前台服务器记录的直播间的房间ID,查询该直播间内各用户发送弹幕的总数;并查找出发送弹幕总数排名靠前的N位用户,N为正整数;
直播平台根据前台服务器记录的直播间的房间ID,查询该直播间内各用户赠送礼物的总数;并查找出赠送礼物总数排名靠前的M位用户,M为正整数;
D、直播平台从发送弹幕总数排名靠前的N位用户和赠送礼物总数排名靠前的M位用户中,按照预设的展示活跃用户生成规则,生成P位展示活跃用户,P为正整数且P<M+N;并将生成的P位展示活跃用户的用户信息发送至前台服务器;
E、前台服务器根据收到的P位展示活跃用户的用户信息,获取P位展示活跃用户对应的图像,并将对应的图像在当前直播间中以缩小显示的方式进行展示。
在上述技术方案的基础上,所述预设的展示活跃用户生成规则为:从赠送礼物总数排名靠前的M位用户中按照总数由高至低的顺利挑选出K位用户,K为正整数且K≤M;从发送弹幕总数排名靠前的N位用户中按照总数由高至低的顺利挑选出J位用户,J为正整数且J=P-K;将挑选出的赠送礼物总数排名靠前的K位用户和发送弹幕总数排名靠前的J位用户作为生成的P位展示活跃用户,且将赠送礼物总数排名靠前的K位用户排在发送弹幕总数排名靠前的J位用户之前。
在上述技术方案的基础上,步骤E之后还包括展示活跃用户的状态检查操作:前台服务器判断当前直播间展示的活跃用户中是否有已退出直播间的活跃用户,若是,在当前直播间中取消对该活跃用户图像的展示;若否,继续展示当前P位展示活跃用户对应的图像。
在上述技术方案的基础上,步骤E之后还包括对展示的活跃用户进行定期更新替换的操作:每当经过指定更新时间后,重复步骤C~D,重新生成最新的P位展示活跃用户;将最新的P位展示活跃用户与之前的P位展示活跃用户进行比对,将其中需要更新替换的活跃用户进行替换。
在上述技术方案的基础上,定期更新替换的操作中,所述将其中需要更新替换的活跃用户进行替换的具体流程包括:对其中需要更新替换的赠送礼物总数高的活跃用户进行替换,替换时按照间隔指定替换时间替换一位展示活跃用户的方式进行替换;对其中需要更新替换的发送弹幕总数高的活跃用户进行替换,替换时按照间隔指定替换时间替换一位展示活跃用户的方式进行替换。
本发明同时还提供一种在移动端直播间展示活跃用户图像的***,该***包括直播平台和与直播平台通信的前台服务器。所述前台服务器包括房间ID记录模块、移动端判断模块和活跃用户图像展示模块;所述直播平台包括用户筛选模块和展示活跃用户生成模块;
所述房间ID记录模块用于:当主播登录直播平台开启直播间进行直播时,获取并记录该直播间的房间ID;
所述移动端判断模块用于:判断主播/用户登录直播间时是否是移动端,若是,为该主播/用户的移动端开启活跃用户图像展示功能;否则,结束操作;
所述用户筛选模块用于:根据前台服务器记录的直播间的房间ID,查询该直播间内各用户发送弹幕的总数;并查找出发送弹幕总数排名靠前的N位用户,N为正整数;根据前台服务器记录的直播间的房间ID,查询该直播间内各用户赠送礼物的总数;并查找出赠送礼物总数排名靠前的M位用户,M为正整数;
所述展示活跃用户生成模块用于:从发送弹幕总数排名靠前的N位用户和赠送礼物总数排名靠前的M位用户中,按照预设的展示活跃用户生成规则,生成P位展示活跃用户,P为正整数且P<M+N;并将生成的P位展示活跃用户的用户信息发送至前台服务器;
所述活跃用户图像展示模块用于:根据收到的P位展示活跃用户的用户信息,获取P位展示活跃用户对应的图像,并将对应的图像在当前直播间中以缩小显示的方式进行展示。
在上述技术方案的基础上,所述预设的展示活跃用户生成规则为:从赠送礼物总数排名靠前的M位用户中按照总数由高至低的顺利挑选出K位用户,K为正整数且K≤M;从发送弹幕总数排名靠前的N位用户中按照总数由高至低的顺利挑选出J位用户,J为正整数且J=P-K;将挑选出的赠送礼物总数排名靠前的K位用户和发送弹幕总数排名靠前的J位用户作为生成的P位展示活跃用户,且将赠送礼物总数排名靠前的K位用户排在发送弹幕总数排名靠前的J位用户之前。
在上述技术方案的基础上,所述前台服务器还包括展示活跃用户状态检查模块,该展示活跃用户状态检查模块用于:判断当前直播间展示的活跃用户中是否有已退出直播间的活跃用户,若是,在当前直播间中取消对该活跃用户图像的展示;若否,继续展示当前P位展示活跃用户对应的图像。
在上述技术方案的基础上,所述直播平台还包括定期更新替换模块,该定期更新替换模块用于:每当经过指定更新时间后,通过依次调用用户筛选模块和展示活跃用户生成模块,重新生成最新的P位展示活跃用户;将最新的P位展示活跃用户与之前的P位展示活跃用户进行比对,将其中需要更新替换的活跃用户进行替换。
在上述技术方案的基础上,所述定期更新替换模块将需要更新替换的活跃用户进行替换的具体流程包括:对其中需要更新替换的赠送礼物总数高的活跃用户进行替换,替换时按照间隔指定替换时间替换一位展示活跃用户的方式进行替换;对其中需要更新替换的发送弹幕总数高的活跃用户进行替换,替换时按照间隔指定替换时间替换一位展示活跃用户的方式进行替换。
本发明的有益效果在于:
(1)本发明中,当判定主播/用户登录直播间时是移动端时,会为该主播/用户的移动端开启活跃用户图像展示功能。开启活跃用户图像展示功能后,直播平台会按照弹幕数量和赠送礼物数量的标准从直播间的用户中筛选出发送弹幕总数排名靠前的N位用户和赠送礼物总数排名靠前的M位用户,并按照预设的展示活跃用户生成规则从这些用户中生成P位展示活跃用户;前台服务器则会将生成P位展示活跃用户对应的图像在当前直播间中以缩小显示的方式进行展示。
与现有技术相比,本发明能在移动的直播间内实现对活跃用户图像的展示,通过该图像的展示能达到告知主播当前房间内活跃用户的目的,同时也达到了鼓励用户多发言,多赠送礼物的目的。对主播来说,不但能满足主播在移动端的直播间内查看活跃用户的需求,而且能提高用户发言或赠送礼物的意愿,提升直播间内活跃度,直播质量佳;对用户而言,可以更加有效地提高自己在当前房间的曝光率,参与度高,用户体验佳。
(2)本发明中,对预设的展示活跃用户生成规则进行了特殊设计,利用该规则生成展示活跃用户时,能有效保证所生成的展示活跃用户中既包括有赠送礼物总数高的用户又包括有发送弹幕总数高的用户,使得所展示的活跃用户具有合理性和全面性。并且,考虑到赠送礼物的用户多为充值付费用户,为了有效保证付费用户的利益,在展示的活跃用户的排位上将赠送礼物总数高的用户排在发送弹幕总数高的用户之前,能进一步鼓励用户多赠送礼物。
(3)本发明中,设计有展示活跃用户状态检查操作,该操作能保证当前展示的活跃用户都是在直播间中尚未退出的,从而确保了当前直播间中展示的活跃用户图像的有效性,有效提高了活跃用户图像展示功能的实现质量,可靠性强。
(4)本发明中,还设计有对展示的活跃用户进行定期更新替换的操作,该操作能有效保证直播间内活跃用户显示的实时性,及时对展示的活跃用户进行刷新,从而达到鼓励用户进行多发言或多送礼物的目的。
(5)本发明中,在对需要更新替换的活跃用户进行替换时,采用了一种定时逐一替换的方式。该替换方式避免了因一次替换的显示用户图像过多而使得活跃用户图像突然变动较大的情况,能为主播和用户制造一个适当的视觉缓冲。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述。
参见图1所示,本发明实施例提供一种在移动端直播间展示活跃用户图像的方法,该方法包括以下步骤:
步骤S1、当主播登录直播平台开启直播间进行直播时,前台服务器(本实施例中,前台服务器用WebReceptionServer表示)获取并记录该直播间的房间ID(本实施例中,房间ID用RoomID表示),转入步骤S2。
步骤S2、前台服务器判断主播/用户登录直播间时是否是移动端,若是,为该主播/用户的移动端开启活跃用户图像展示功能,转入步骤S3;否则,结束操作。
实际操作中,步骤S2可包括以下流程:前台服务器根据主播/用户登录直播间时同步传递的当前硬件的参数(如HardwareMack),来判断主播/用户登录的硬件环境,若登录的硬件环境为移动端,则为该主播/用户所在的移动端开启活跃用户图像展示功能;若登录的硬件环境为非移动端,则结束操作。
步骤S3、直播平台根据前台服务器记录的直播间的房间ID,查询该直播间内各用户发送弹幕的总数;并查找出发送弹幕总数排名靠前的N位用户,N为正整数,转入步骤S4。
可以理解的是,本实施例中将用户发送的弹幕数量作为评判用户活跃度的标准之一,是将发送弹幕总数排名靠前的N位用户作为待展示的活跃用户的候选用户。其中,以弹幕数量为标准选出的候选用户人数,即N的具体数值,可根据具体需求由开发人员或后台人员进行自行设置和调整。而本实施例中,将N设置为5位,即将查找出的发送弹幕总数排名靠前的前5位用户作为待展示的活跃用户的候选用户。实际操作中,步骤S3具体可包括以下流程:
S301、直播平台根据前台服务器记录的直播间的房间ID,通过调用弹幕服务器对外提供的预设好的弹幕汇总方法函数(本实施例中,弹幕汇总方法函数用Summary表示),查询该直播间内各用户发送弹幕的总数。
S302、将查询到的各用户发送弹幕的总数按照升序排序。
S303、在排序中查找出发送弹幕总数排名靠前的N位用户(如前5位用户),并获取对应的用户ID(本实施例中,用户ID用User ID表示)。
步骤S4、直播平台根据前台服务器记录的直播间的房间ID,查询该直播间内各用户赠送礼物的总数;并查找出赠送礼物总数排名靠前的M位用户,M为正整数,转入步骤S5。
同样可以理解的是,本实施例中将用户赠送礼物数量作为评判用户活跃度的标准之一,是将赠送礼物总数排名靠前的M位用户作为待展示的活跃用户的候选用户。其中,以赠送礼物数量为标准选出的候选用户人数,即M的具体数值,可根据具体需求由开发人员或后台人员进行自行设置和调整。而本实施例中,同样将M设置为5位,即将查找出的赠送礼物总数排名靠前的前5位用户作为待展示的活跃用户的候选用户。实际操作中,步骤S4具体可包括以下流程:
S401、直播平台根据前台服务器记录的直播间的房间ID,通过调用礼物服务器对外提供的预设好的用户消费记录方法函数(本实施例中,用户消费记录方法函数用GiftSummary表示),查询该直播间内各用户赠送礼物的总数。
S402、将查询到的各用户赠送礼物的总数按照升序排序。
S403、在排序中查找出赠送礼物总数排名靠前的M位用户(如前5位用户),并获取对应的用户ID(本实施例中,用户ID用User ID表示)。
另外,需要强调是,实际操作时步骤S3和步骤S4可同时执行或根据实际情况进行先后顺序的调整,本实施例仅为一具体实例,并不是对其先后顺序的限制。
步骤S5、直播平台从查找出的发送弹幕总数排名靠前的N位用户和赠送礼物总数排名靠前的M位用户中,按照预设的展示活跃用户生成规则,生成P位展示活跃用户,P为正整数且P<M+N;并将生成的P位展示活跃用户的用户信息(如ShowExhibitionUser)发送给前台服务器,转入步骤S6。
可以理解的是,实际操作中,预设的展示活跃用户生成规则可根据实际情况和具体需求,由开发人员或后台人员进行自行设置和调整。而本实施例中,采用的预设的展示活跃用户生成规则如下:
(1)从赠送礼物总数排名靠前的M位用户中按照总数由高至低的顺利挑选出K位用户,K为正整数且K≤M;
(2)从发送弹幕总数排名靠前的N位用户中按照总数由高至低的顺利挑选出J位用户,J为正整数且J=P-K;
(3)将挑选出的赠送礼物总数排名靠前的K位用户和发送弹幕总数排名靠前的J位用户作为生成的P位展示活跃用户,且将赠送礼物总数排名靠前的K位用户排在发送弹幕总数排名靠前的J位用户之前。
例如,当需要生成5位展示活跃用户时(即P=5),可按照前3名为赠送礼物总数排名靠前的3位用户(即K=3),后2名为发送弹幕总数排名靠前的2位用户(即J=2)。按照上述预设的展示活跃用户生成规则来生成展示活跃用户时,能有效保证所生成的展示活跃用户中既包括有赠送礼物总数高的用户又包括有发送弹幕总数高的用户,使得所展示的活跃用户具有合理性和全面性。并且,考虑到赠送礼物的用户多为充值付费用户,为了有效保证付费用户的利益,在展示的活跃用户的排位上将赠送礼物总数高的用户排在发送弹幕总数高的用户之前,能进一步鼓励用户多赠送礼物。
步骤S6、前台服务器根据收到的P位展示活跃用户的用户信息,获取P位展示活跃用户对应的图像,并将对应的图像在当前直播间中以缩小显示的方式进行展示。
实际操作中,步骤S6具体可包括以下流程:
S601、前台服务器根据收到的P位展示活跃用户的用户信息,获取P位展示活跃用户对应的用户ID(UserID);
S602、前台服务器根据获取到的用户ID(UserID),通过访问直播平台的用户服务器(WebUserServer)中的用户基础参数接口(BasicsInter),获取每个用户ID对应的图像信息;
S603、前台服务器根据获取到的图像信息将对应的图像在当前直播间中展示。举例来说,展示操作可通过以下代码实现:(Show.WebReceptionServer.Exhibition.IconValue(UserID))。
进一步的,为了确保当前直播间中展示的活跃用户图像是有效的,即确保当前展示的P位活跃用户都是在直播间中尚未退出的,从而使得活跃用户展示功能能准确、有效地执行。本实施例中,在步骤S6之后还包括展示活跃用户状态检查操作:前台服务器判断当前直播间展示的活跃用户中是否有已退出直播间的活跃用户,若是,在当前直播间中取消对该活跃用户图像的展示;若否,继续展示当前P位展示活跃用户对应的图像。本实施例中,前台服务器判断当前直播间展示的活跃用户中是否有已退出直播间的活跃用户时,具体包括以下流程:前台服务器将当前直播间的房间ID(RoomID)以及当前直播间展示的所有活跃用户的用户ID(UserID)发送至弹幕服务器;弹幕服务器根据该房间ID(RoomID)、用户ID(UserID)查询该直播间中是否有与弹幕服务器断开链接的用户,并将查询到的断开链接的用户ID返回给前台服务器;前台服务器根据弹幕服务器返回的用户ID确定当前直播间展示的活跃用户中是否有退出直播间的活跃用户。
再进一步地,为了保证直播间内活跃用户展示的实时性,及时对展示的活跃用户进行刷新,从而达到鼓励用户进行多发言或多送礼物的目的。本实施例中,在步骤S6之后还包括对展示的活跃用户进行定期更新替换的操作:每当经过指定更新时间后,重复步骤S3~S5,重新生成最新的P位展示活跃用户;将最新的P位展示活跃用户与之前的P位展示活跃用户进行比对,将其中需要更新替换的活跃用户进行替换。可以理解的是,所述指定更新时间可根据实际情况和具体需求,由开发人员或后台人员进行自行设置和调整。本实施例中,优为15分钟,即每当经过15分钟后,重新汇总统计用户礼物数量和弹幕数量,重新生成最新的展示活跃用户。
更进一步地,在进行替换操作时,为了避免因一次替换的展示用户图像过多,而使得活跃用户图像突然变动较大,对于主播和用户没有一个适当的视觉缓冲。本实施例中,将需要更新替换的活跃用户进行替换时,采用了一种定时逐一替换的方式:首先,对其中需要更新替换的赠送礼物总数高的活跃用户进行替换,替换时按照间隔指定替换时间替换一位展示活跃用户的方式进行替换;然后,对其中需要更新替换的发送弹幕总数高的活跃用户进行替换,替换时按照间隔指定替换时间替换一位展示活跃用户的方式进行替换。可以理解的是,所述指定替换时间可根据实际情况和具体需求,由开发人员或后台人员进行自行设置和调整。本实施例中,优为30s,即按照间隔30s替换一位展示活跃用户的方式进行替换。
参见图2所示,本发明实施例提供一种在移动端直播间展示活跃用户图像的***,该***包括直播平台和与直播平台通信的前台服务器。所述前台服务器包括房间ID记录模块、移动端判断模块和活跃用户图像展示模块;所述直播平台包括用户筛选模块和展示活跃用户生成模块。
其中,房间ID记录模块用于:当主播登录直播平台开启直播间进行直播时,获取并记录该直播间的房间ID。
移动端判断模块用于:判断主播/用户登录直播间时是否是移动端,若是,为该主播/用户的移动端开启活跃用户图像展示功能;否则,结束操作。
用户筛选模块用于:根据前台服务器记录的直播间的房间ID,查询该直播间内各用户发送弹幕的总数;并查找出发送弹幕总数排名靠前的N位用户,N为正整数;根据前台服务器记录的直播间的房间ID,查询该直播间内各用户赠送礼物的总数;并查找出赠送礼物总数排名靠前的M位用户,M为正整数。
展示活跃用户生成模块用于:从发送弹幕总数排名靠前的N位用户和赠送礼物总数排名靠前的M位用户中,按照预设的展示活跃用户生成规则,生成P位展示活跃用户,P为正整数且P<M+N;并将生成的P位展示活跃用户的用户信息发送至前台服务器。
活跃用户图像展示模块用于:根据收到的P位展示活跃用户的用户信息,获取P位展示活跃用户对应的图像,并将对应的图像在当前直播间中以缩小显示的方式进行展示。
进一步地,参见图2所示,为了确保当前直播间中展示的活跃用户图像是有效的,所述前台服务器还包括展示活跃用户状态检查模块。该展示活跃用户状态检查模块用于:判断当前直播间展示的活跃用户中是否有已退出直播间的活跃用户,若是,在当前直播间中取消对该活跃用户图像的展示;若否,继续展示当前P位展示活跃用户对应的图像。
更进一步地,参见图2所示,为了保证直播间内活跃用户展示的实时性,及时对展示的活跃用户进行刷新,所述直播平台还包括定期更新替换模块。该定期更新替换模块用于:每当经过指定更新时间后,通过依次调用用户筛选模块和展示活跃用户生成模块,重新生成最新的P位展示活跃用户;将最新的P位展示活跃用户与之前的P位展示活跃用户进行比对,将其中需要更新替换的活跃用户进行替换。具体来说,所述定期更新替换模块将需要更新替换的活跃用户进行替换的具体流程包括:对其中需要更新替换的赠送礼物总数高的活跃用户进行替换,替换时按照间隔指定替换时间替换一位展示活跃用户的方式进行替换;对其中需要更新替换的发送弹幕总数高的活跃用户进行替换,替换时按照间隔指定替换时间替换一位展示活跃用户的方式进行替换。
需要说明的是:上述实施例提供的***在进行操作时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将***的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。