一种检测直播间人气值的方法、客户端及计算机设备与流程

文档序号:14718093发布日期:2018-06-16 02:03阅读:485来源:国知局
一种检测直播间人气值的方法、客户端及计算机设备与流程

本发明属于直播技术领域,尤其涉及一种检测直播间人气值的方法、客户端及计算机设备。



背景技术:

随着直播技术的发展,越来越多的用户使用直播平台观看直播或者进行主播。

对于主播来说,为了提升直播间的人气,经常会通过购买刷人气的方法来提高房间同时观看的观众数量,从而获取收益。而刷人气的具体的实现方式则是在一台性能非常好的服务器上,通过破解直播平台的网络协议,同时伪造大量的虚假客户端用户同时登陆到直播间,从而伪造大量观众的方法,来将直播间的人气数据刷的比较高。

那么直播平台就需要对直播间进行检测,判断是否存在刷人气的情况,从而维护直播平台的秩序。



技术实现要素:

针对现有技术存在的问题,本发明实施例提供了一种检测直播间人气值的方法、客户端及计算机设备,用于解决现有技术中直播平台无法判断直播间的人气值是否真实,从而无法维持直播秩序的技术问题。

本发明实施例提供一种检测直播间人气值的方法,应用在直播平台中,所述方法包括:

在所述直播间的直播页面中创建画布及用于绘制图像的画布canvas元素;

根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;

获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;

调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值;

加密所述第一MD5校验值,并将加密后的所述第一MD5校验值发送至服务器,使得所述服务器能根据接收到第一MD5校验值判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值。

上述方案中,所述根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像,包括:

在所述画布中设置文字区域;

获取预设的文字对象、文字背景颜色、文字的大小及字体;

基于所述canvas元素的上下文环境参数、所述文字背景颜色、所述文字的大小及所述文字的字体在所述文字区域中绘制所述文字对象。

上述方案中,所述按照预设的转换规则将所述图像数据转换为编码数据,包括:

从所述图像数据中读取至少一组颜色值;

确定每种颜色对应的最大阶层,根据公式A=(B*C+G)*C+R确定数字信息的数值A;

将所述数字信息的数值A转换为所述编码数据;

其中,所述每种颜色对应的最大阶层相同;所述R为红色,所述G为绿色,所述B为蓝色,所述C为所述每种颜色对应的最大阶层。

上述方案中,所述加密所述第一MD5校验值,包括:

获取第一随机数据;

对所述第一随机数据、所述直播间的房间号及所述直播间的房间标识ID进行拼接;

调用所述消息摘要算法MD5对拼接后的数据进行计算,获取第一私钥数据;

基于所述第一私钥数据,调用生成配对钥匙接口生成第一公钥数据;

基于所述第一公钥数据与所述服务器生成的第二公钥数据生成共享秘钥数据;

利用所述共享秘钥数据对所述第一MD5校验值进行加密。

上述方案中,所述基于所述第一公钥数据与所述服务器生成的第二公钥数据生成共享秘钥数据,包括:

利用非对称加密算法对所述第一公钥数据及所述第二公钥数据进行加密,生成所述共享秘钥数据。

本发明实施例还提供一种检测直播间人气值的客户端,所述客户端包括:

创建单元,用于在所述直播间的直播页面中创建画布及用于绘制图像的画布canvas元素;

绘制单元,用于根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;

转换单元,用于获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;

计算单元,用于调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值;

加密单元,用于加密所述第一MD5校验值;

发送单元,用于将加密所述第一MD5校验值,并将加密后的所述第一MD5校验值发送至服务器,使得所述服务器能根据接收到第一MD5校验值判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值。

上述方案中,所述绘制单元具体用于:

在所述画布中设置文字区域;

接收预设的文字对象及文字背景颜色;

基于所述canvas元素的上下文环境参数、文字的大小及字体在所述文字区域中绘制所述文字对象。

上述方案中,所述转换单元具体用于:从所述图像数据中读取至少一组颜色值;

确定每种颜色对应的最大阶层,根据公式A=(B*C+G)*C+R确定数字信息的数值A;

将数字信息的数值转换为所述编码数据;

其中,所述每种颜色对应的最大阶层相同;所述R为红色,所述G为绿色,所述B为蓝色,所述C为所述每种颜色对应的最大阶层。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:

在所述直播间的直播页面中创建画布及用于绘制图像的画布canvas元素;

根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;

获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;

调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值;

加密所述第一MD5校验值,并将加密后的所述第一MD5校验值发送至服务器,使得所述服务器能根据接收到第一MD5校验值判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值。

本发明实施例还提供一种用于检测直播间人气值的计算机设备,包括:

至少一个处理器;以及

与所述处理器通信连接的至少一个存储器,其中,

所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至5任一所述的方法。

本发明实施例提供了一种检测直播间人气值的方法、客户端及计算机设备,应用在直播平台中,所述方法包括:在所述直播间的直播页面中创建画布及用于绘制图像的canvas元素;根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值;加密所述第一MD5校验值,并将加密后的所述第一MD5校验值发送至服务器,使得所述服务器能根据接收到第一MD5校验值判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值;如此,因每个客户端进入同一个直播间时都会具有唯一的MD5校验值,因此当存在多个相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值,这样就可以检测出伪客户端的存在,确定所述直播间存在刷人气值的情况。

附图说明

图1为本发明实施例一提供的检测直播间人气值的方法流程示意图;

图2为本发明实施例二提供的检测直播间人气值的客户端结构示意图;

图3为本发明实施例三提供的检测直播间人气值的计算机设备结构示意图。

具体实施方式

为了解决现有技术中直播平台无法判断直播间的人气值是否真实,从而无法维持直播秩序的技术问题,本发明提供了一种检测直播间人气值的方法、客户端及计算机设备,应用在直播平台中,所述方法包括:在所述直播间的直播页面中创建画布及用于绘制图像的canvas元素;根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值;加密所述第一MD5校验值,并将加密后的所述第一MD5校验值发送至服务器,使得所述服务器能根据接收到第一MD5校验值判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值。

下面通过附图及具体实施例对本发明的技术方案做进一步的详细说明。

实施例一

本实施例提供一种检测直播间人气值的方法,应用在直播平台中,如图1所示,所述方法包括:

S101,在所述直播间的直播页面中创建画布及用于绘制图像的画布canvas元素;

本步骤中,利用超文本标记语言(HTML5,HyperText Markup Language)创建一个画布及用于绘制图像的canvas元素;所述画布就是绘制的区域。需要说明的是,为了不影响直播效果,所述画布是隐藏在所述直播页面中的。

具体地,利用函数var canvas=document.createElement('dycanvas');创建所述canvas元素。

S102,根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;

本步骤中,利用第一获取函数var ctx=canvas.getContext('2d');获取所述canvas元素的上下文环境参数,本实施例中所述canvas元素的上下文环境参数为2d,即利用2d进行绘图。

具体地,绘制图像时,首先在所述画布中设置文字区域;本实施例中利用设置函数ctx.fillRect(0,0,20,20);设置文字区域,所述文字区域是以(0,0)为坐标,宽20cm高20cm。

然后获取预设的文字对象、文字背景颜色、文字的大小、文字字体;基于所述canvas元素的上下文环境参数、文字背景颜色、所述文字的大小及所述文字的字体在所述文字区域中绘制所述文字对象。

本实施例中利用第二获取函数ctx.font="10px Arial";获取文字的大小、文字字体,可以看出本实施例中的文字大小为10像素,字体为Arial。当然文字大小与文字字体并不局限于以上举例。

最后利用绘制函数ctx.fillText(txt,0,0),基于所述canvas元素的上下文环境参数、文字背景颜色、所述文字的大小及所述文字的字体在所述文字区域中绘制所述文字对象。其中,是从坐标为(0,0)的位置开始绘制的。

这里,所述文字对象是预定义的,比如Var txt=“X”;所述X为文字对象。

所述文字背景颜色也是预先设置的,比如可以通过背景颜色设置函数ctx.fillStyle="rgba(52,33,40,0.7)";进行设置,所述fillStyle用于定义填充的颜色。

S103,获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;

绘制好之后,获取画布的图像数据。这里,可以直接调用转换接口toDataURL来将图像数据转换为编码数据。

也可以按照预设的转换规则将所述图像数据转换为编码数据。具体地,从图像中读取至少一组颜色值,读取各个(R,G,B)颜色值的代码如下:

int color=bitmap.getPixel(x,y);//获取当前点的颜色信息

int r=Color.red(color);//分析出颜色中的R的值

int g=Color.green(color);//分析出颜色中的G的值

int b=Color.blue(color);//分析出颜色中的B的值

用以上代码可以得到每个(R,G,B)颜色值,(x,y)是之前得到的每个(R,G,B)所述像素的宽高坐标,读取到各个(R,G,B)颜色值后,将各个(R,G,B)颜色值存入已经初始化的列表中,并进行之后的转码。如果在获取颜色值的过程中,获取到了R、G、B的颜色值都是255时,则代码该位是占位符,排除掉该值。

当将各个(R,G,B)颜色值都读取到之后,按照预设的转换规则将所述图像数据转换为编码数据。

具体地,确定每种颜色对应的最大阶层,根据公式(1)计算出所述数字信息的数值A:

A=(B*C+G)*C+R (1)

本实施例中,所述每种颜色对应的最大阶层相同,所述C为所述每种颜色对应的最大阶层,RGB颜色通常是由红(R)、绿(G)、蓝(B)三种颜色组成,每种颜色是有255种阶层,也就是说公式(1)中C的值为255。当将每个(R,G,B)颜色值的数字信息的数值确定出之后,将各组数字信息进行拼接形成一完整的数字信息,将所述数字信息存储至列表集合中。

本实施例中,因unicode编码格式的字符串是一个设定了统一并且唯一的二进制编码,因此unicode编码是一段数字。所以本实施例是将颜色值转换为unicode编码实现颜色值到数字信息的转换。

获取到数字信息后,还需要将数字信息转换为字符编码,具体是将unicode编码转换为base64的编码:

unicode编码转换成base64的编码,使用的方法如下:

使用上述代码,返回的数据就是Base64的字符编码数据了。

S104,调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值;

获取到编码数据后,调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值。

这里,因不同的客户端进入直播间后都会生成唯一的MD5校验值,若有大量的伪客户端进入直播间后,会出现大量相同的MD5校验值,这样就能根据MD5校验值检测是否有伪客户端存在。

S105,加密所述第一MD5校验值,并将加密后的所述第一MD5校验值发送至服务器,使得所述服务器能根据接收到第一MD5校验值判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值。

获取到第一MD5校验值后,加密所述第一MD5校验值,具体地,调用函数Randdata=rand();获取第一随机数据;

对所述第一随机数据及所述直播间的房间号及房间标识ID进行拼接;这里,可以按照多种拼接方式进行拼接,比如按照第一随机数据+房间号+房间ID的方式进行拼接。

调用所述消息摘要算法ClientPrivateke=Md5.Create(Randdata+Uid+RoomId)对拼接后的数据进行计算,获取第一私钥数据;其中,所述Randdata为第一随机数据,所述Uid为房间号,所述RoomId为房间ID。

然后基于所述第一私钥数据,调用生成配对钥匙接口ClientPublickey=RSA.CreatePair(ServerPrivatekey);生成第一公钥数据;这样客户端就生成了一对公钥和私钥数据。

同样地,服务器按照上述同样的方法生成第二公钥数据及第二私钥数据,在此不再赘述。

再基于所述第一公钥数据与所述服务器生成的第二公钥数据生成共享秘钥数据;具体地,客户端与服务器会互相交换公钥信息,然后利用非对称加密算法RSA对所述第一公钥数据及所述第二公钥数据进行加密,生成所述共享秘钥数据。

这里,客户端利用函数ShareKey1=RSA.CreateShareKey(ServerPublickey,ClientPrivatekey);生成第一共享秘钥数据ShareKey1。

服务器则利用函数ShareKey2=RSA.CreateShareKey(ClientPublickey,ServerPrivatekey);生成第二共享秘钥数据ShareKey2。

所述第一共享秘钥数据ShareKey1与所述第二共享秘钥数据ShareKey2应该是相同的。

最后基于所述第一共享秘钥数据或第二共享秘钥数据,利用对称加密算法对所述第一MD5校验值进行加密,实现如下:

encryptData=AES.Encrypt(md5Result+TimeStamp,ShareKey);

然后将加密后的所述第一MD5校验值发送至服务器,服务器接收到加密后的所述第一MD5校验值后,利用解密算法对所述第一MD5校验值进行解密,解密过程实现如下:

md5Result+TimeStamp=AES.Decrypt(encryptData,ShareKey1);

这样,服务器就得到了原始的第一MD5校验值。

然后,服务器会对直播间所有的第一MD5校验值进行分析,判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定直播间存在伪客户端,即所述直播间的人气值为虚假人气值。直播平台就可以对该直播间进行相应的处理,维护直播平台秩序。

实施例二

相应实施例一,本实施例还提供一种检测直播间人气值的客户端,如图2所示,所述客户端包括:创建单元21、绘制单元22、转换单元23、计算单元24、加密单元25及发送单元26;其中,

创建单元21用于在所述直播间的直播页面中,利用超文本标记语言(HTML5,HyperText Markup Language)创建一个画布及用于绘制图像的canvas元素;所述画布就是绘制的区域。需要说明的是,为了不影响直播效果,所述画布是隐藏在所述直播页面中的。

具体地,创建单元21利用函数var canvas=document.createElement('dycanvas');创建所述canvas元素。

那么绘制单元22用于根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;

这里,绘制单元22利用第一获取函数var ctx=canvas.getContext('2d');获取所述canvas元素的上下文环境参数,本实施例中所述canvas元素的上下文环境参数为2d,即利用2d进行绘图。

绘制单元22绘制图像时,首先在所述画布中设置文字区域;本实施例中绘制单元22利用设置函数ctx.fillRect(0,0,20,20);设置文字区域,所述文字区域是以(0,0)为坐标,宽20cm高20cm。

然后获取预设的文字对象、文字背景颜色、文字的大小、文字字体;基于所述canvas元素的上下文环境参数、文字背景颜色、所述文字的大小及所述文字的字体在所述文字区域中绘制所述文字对象。

本实施例中利用第二获取函数ctx.font="10px Arial";获取文字的大小、文字字体,可以看出本实施例中的文字大小为10像素,字体为Arial。当然文字大小与文字字体并不局限于以上举例。

最后利用绘制函数ctx.fillText(txt,0,0),基于所述canvas元素的上下文环境参数、文字背景颜色、所述文字的大小及所述文字的字体在所述文字区域中绘制所述文字对象。其中,是从坐标为(0,0)的位置开始绘制的。

这里,所述文字对象是预定义的,比如Var txt=“X”;所述X为文字对象。

所述文字背景颜色也是预先设置的,比如可以通过背景颜色设置函数ctx.fillStyle="rgba(52,33,40,0.7)";进行设置,所述fillStyle用于定义填充的颜色。

当图像绘制好之后,所述转换单元23用于获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;这里,转换单元23可以直接调用转换接口toDataURL来将图像数据转换为编码数据。

转换单元23也可以按照预设的转换规则将所述图像数据转换为编码数据。具体地,从图像中读取至少一组颜色值,读取各个(R,G,B)颜色值的代码如下:

int color=bitmap.getPixel(x,y);//获取当前点的颜色信息

int r=Color.red(color);//分析出颜色中的R的值

int g=Color.green(color);//分析出颜色中的G的值

int b=Color.blue(color);//分析出颜色中的B的值

用以上代码可以得到每个(R,G,B)颜色值,(x,y)是之前得到的每个(R,G,B)所述像素的宽高坐标,读取到各个(R,G,B)颜色值后,将各个(R,G,B)颜色值存入已经初始化的列表中,并进行之后的转码。如果在获取颜色值的过程中,获取到了R、G、B的颜色值都是255时,则代码该位是占位符,排除掉该值。

当将各个(R,G,B)颜色值都读取到之后,按照预设的转换规则将所述图像数据转换为编码数据。

具体地,确定每种颜色对应的最大阶层,根据公式(1)计算出所述数字信息的数值A:

A=(B*C+G)*C+R (1)

本实施例中,所述每种颜色对应的最大阶层相同,所述C为所述每种颜色对应的最大阶层,RGB颜色通常是由红(R)、绿(G)、蓝(B)三种颜色组成,每种颜色是有255种阶层,也就是说公式(1)中C的值为255。当将每个(R,G,B)颜色值的数字信息的数值确定出之后,将各组数字信息进行拼接形成一完整的数字信息,将所述数字信息存储至列表集合中。

本实施例中,因unicode编码格式的字符串是一个设定了统一并且唯一的二进制编码,因此unicode编码是一段数字。所以本实施例是将颜色值转换为unicode编码实现颜色值到数字信息的转换。

获取到数字信息后,还需要将数字信息转换为字符编码,具体是将unicode编码转换为base64的编码:

unicode编码转换成base64的编码,使用的方法如下:

使用上述代码,返回的数据就是Base64的字符编码数据了。

当获取到编码数据后,计算单元24用于调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值。这里,因不同的客户端进入直播间后都会生成唯一的MD5校验值,若有大量的伪客户端进入直播间后,会出现大量相同的MD5校验值,这样就能根据MD5校验值检测是否有伪客户端存在。

获取到第一MD5校验值后,加密单元25用于加密所述第一MD5校验值。

具体地,加密单元25调用函数Randdata=rand();获取第一随机数据;

对所述第一随机数据及所述直播间的房间号及房间标识ID进行拼接;这里,可以按照多种拼接方式进行拼接,比如按照第一随机数据+房间号+房间ID的方式进行拼接。

调用所述消息摘要算法ClientPrivateke=Md5.Create(Randdata+Uid+RoomId)对拼接后的数据进行计算,获取第一私钥数据;其中,所述Randdata为第一随机数据,所述Uid为房间号,所述RoomId为房间ID。

然后基于所述第一私钥数据,调用生成配对钥匙接口ClientPublickey=RSA.CreatePair(ServerPrivatekey);生成第一公钥数据;这样客户端就生成了一对公钥和私钥数据。

同样地,服务器按照上述同样的方法生成第二公钥数据及第二私钥数据,在此不再赘述。

再基于所述第一公钥数据与所述服务器生成的第二公钥数据生成共享秘钥数据;具体地,客户端与服务器会互相交换公钥信息,然后利用非对称加密算法RSA对所述第一公钥数据及所述第二公钥数据进行加密,生成所述共享秘钥数据。

这里,客户端利用函数ShareKey1=RSA.CreateShareKey(ServerPublickey,ClientPrivatekey);生成第一共享秘钥数据ShareKey1。

服务器则利用函数ShareKey2=RSA.CreateShareKey(ClientPublickey,ServerPrivatekey);生成第二共享秘钥数据ShareKey2。

所述第一共享秘钥数据ShareKey1与所述第二共享秘钥数据ShareKey2应该是相同的。

最后基于所述第一共享秘钥数据或第二共享秘钥数据,利用对称加密算法对所述第一MD5校验值进行加密,实现如下:

encryptData=AES.Encrypt(md5Result+TimeStamp,ShareKey);

然后将加密后的所述第一MD5校验值发送至服务器,服务器接收到加密后的所述第一MD5校验值后,利用解密算法对所述第一MD5校验值进行解密,解密过程实现如下:

md5Result+TimeStamp=AES.Decrypt(encryptData,ShareKey1);

对第一MD5校验值加密后,发送单元26将加密后的所述第一MD5校验值发送至服务器,服务器接收到加密后的所述第一MD5校验值后,利用解密算法对所述第一MD5校验值进行解密,解密过程实现如下:

md5Result+TimeStamp=AES.Decrypt(encryptData,ShareKey1);

这样,服务器就得到了原始的第一MD5校验值。

然后,服务器会对直播间所有的第一MD5校验值进行分析,判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,进一步判断各个客户端IP地址是否相同,若IP地址也相同的话,则确定直播间存在伪客户端,即所述直播间的人气值为虚假人气值。直播平台就可以对该直播间进行相应的处理,维护直播平台秩序。

实施例三

本实施例还提供一种检测直播间人气值的计算机设备,如图3所示,所述计算机设备包括:射频(Radio Frequency,RF)电路310、存储器320、输入单元330、显示单元340、音频电路350、WiFi模块360、处理器370、以及电源380等部件。本领域技术人员可以理解,图3中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图3对计算机设备的各个构成部件进行具体的介绍:

RF电路310可用于信号的接收和发送,特别地,将基站的下行信息接收后,给处理器370处理。通常,RF电路310包括但不限于至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。

存储器320可用于存储软件程序以及模块,处理器370通过运行存储在存储器320的软件程序以及模块,从而执行计算机设备的各种功能应用以及数据处理。存储器320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元330可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。具体地,输入单元330可包括键盘331以及其他输入设备332。键盘331,可收集用户在其上的输入操作,并根据预先设定的程式驱动相应的连接装置。键盘331采集到输出信息后再送给处理器370。除了键盘331,输入单元330还可以包括其他输入设备332。具体地,其他输入设备332可以包括但不限于触控面板、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元340可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种菜单。显示单元340可包括显示面板341,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板341。进一步的,键盘331可覆盖显示面板341,当键盘331检测到在其上或附近的触摸操作后,传送给处理器370以确定触摸事件的类型,随后处理器370根据输入事件的类型在显示面板341上提供相应的视觉输出。虽然在图3中键盘331与显示面板341是作为两个独立的部件来实现计算机设备的输入和输入功能,但是在某些实施例中,可以将键盘331与显示面板341集成而实现计算机设备的输入和输出功能。

音频电路350、扬声器351,传声器352可提供用户与计算机设备之间的音频接口。音频电路350可将接收到的音频数据转换后的电信号,传输到扬声器351,由扬声器351转换为声音信号输出;

WiFi属于短距离无线传输技术,计算机设备通过WiFi模块360可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图3示出了WiFi模块360,但是可以理解的是,其并不属于计算机设备的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器370是计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器320内的软件程序和/或模块,以及调用存储在存储器320内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器370可包括一个或多个处理单元;优选的,处理器370可集成应用处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等。

计算机设备还包括给各个部件供电的电源380(比如电源适配器),优选的,电源可以通过电源管理系统与处理器370逻辑相连。

本发明实施例提供的检测直播间人气值的方法、客户端及计算机设备能带来的有益效果至少是:

本发明实施例提供了一种检测直播间人气值的方法、客户端及计算机设备,所述方法包括:在所述直播间中直播页面中创建画布及用于绘制图像的canvas元素;根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值;加密所述第一MD5校验值,并将加密后的所述第一MD5校验值发送至服务器,使得所述服务器能根据接收到第一MD5校验值判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值;如此,因每个客户端进入同一个直播间时都会具有唯一的MD5校验值,因此当存在多个相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值,这样就可以检测出伪客户端的存在,确定所述直播间存在刷人气值的情况。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP,Digital Signal Processing)来实现根据本发明实施例的网关、代理服务器、系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读存储介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供;该程序被处理器执行时实现以下步骤:在所述直播间中直播页面中创建画布及用于绘制图像的canvas元素;根据所述canvas元素的上下文环境参数及预设的绘图参数在所述画布中绘制图像;获取图像数据,并按照预设的转换规则将所述图像数据转换为编码数据;调用消息摘要算法MD5计算所述编码数据,获取所述直播间的第一MD5校验值;加密所述第一MD5校验值,并将加密后的所述第一MD5校验值发送至服务器,使得所述服务器能根据接收到第一MD5校验值判断所述直播间中是否存在多个与所述第一MD5值相同的第二MD5校验值,若存在多个与所述第一MD5值相同的所述第二MD5校验值,则确定所述直播间的人气值为虚假人气值。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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