CN106951334A - 发送彩色弹幕的方法及系统 - Google Patents

发送彩色弹幕的方法及系统 Download PDF

Info

Publication number
CN106951334A
CN106951334A CN201710169992.4A CN201710169992A CN106951334A CN 106951334 A CN106951334 A CN 106951334A CN 201710169992 A CN201710169992 A CN 201710169992A CN 106951334 A CN106951334 A CN 106951334A
Authority
CN
China
Prior art keywords
barrage
colored
send
sending
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710169992.4A
Other languages
English (en)
Inventor
汪刚
张文明
陈少杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201710169992.4A priority Critical patent/CN106951334A/zh
Publication of CN106951334A publication Critical patent/CN106951334A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种发送彩色弹幕的方法及系统,涉及互联网移动端应用开发领域。该方法包括以下步骤:判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。本发明保证了顺序发送弹幕消息,新开线程,不阻塞主线程,实现了彩色弹幕的发送。

Description

发送彩色弹幕的方法及系统
技术领域
本发明涉及互联网移动端应用开发领域,具体是涉及一种发送彩色弹幕的方法及系统。
背景技术
在直播APP(APPlication,应用)中,经常需要发送彩色弹幕,彩色弹幕相对于普通弹幕让主播更容易注意到,很多用户希望自己发送的弹幕能够被主播更容易注意到,普通的弹幕都是一种颜色,主播很难集中注意力注意到用户发的内容。
发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种发送彩色弹幕的方法及系统,保证了顺序发送弹幕消息,新开线程,不阻塞主线程,实现了彩色弹幕的发送。
本发明提供一种发送彩色弹幕的方法,包括以下步骤:
判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。
在上述技术方案的基础上,所述执行发送彩色弹幕的操作之前,还包括以下步骤:
S1、判断用户是否登录,如果是,则执行发送彩色弹幕的操作;如果否,则不执行发送彩色的弹幕,直接提示用户登录;
S2、判断当前点击发送按钮的时间-上一次点击发送按钮的时间-指定时间间隔是否大于零,如果是,则允许发送彩色弹幕;如果否,则不允许发送彩色弹幕;
S3、如果步骤S2中允许发送彩色弹幕,进一步判断用户当前发送内容是否与上一次发送内容一致,如果一致,使用弹框提示用户不要发送相同的内容;如果不一致,则允许用户发送。
在上述技术方案的基础上,所述指定时间间隔设置为3秒。
本发明还提供一种发送彩色弹幕的系统,该系统包括判断单元、彩色弹幕发送单元,其中:
判断单元用于:判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则触发彩色弹幕发送单元工作;
彩色弹幕发送单元用于:创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。
在上述技术方案的基础上,该系统还包括异常判断单元,异常判断单元用于:
判断用户是否登录,如果是,则执行发送彩色弹幕的操作;如果否,则不执行发送彩色的弹幕,直接提示用户登录;
判断当前点击发送按钮的时间-上一次点击发送按钮的时间-指定时间间隔是否大于零,如果是,则允许发送彩色弹幕;如果否,则不允许发送彩色弹幕;
如果允许发送彩色弹幕,进一步判断用户当前发送内容是否与上一次发送内容一致,如果一致,使用弹框提示用户不要发送相同的内容;如果不一致,则允许用户发送。
在上述技术方案的基础上,所述指定时间间隔设置为3秒。
与现有技术相比,本发明的优点如下:
(1)本发明判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。在设定的彩色弹幕服务器上,为了避免有些特殊字符或者文案不能变为彩色,因此限定了文字和表情的符号,才能发送彩色弹幕,判断彩色弹幕的是否符合规则,提高了用户体验;使用异步队列的过程,异步会新建线程,保证不足赛主线程的操作,在串行队列中操作,保证每个线程中的弹幕发送的过程有先后,这样既有顺序,又可以不阻塞主线程,实现了彩色弹幕的发送。
(2)本发明实现了彩色弹幕的发送,可以向发彩色弹幕的权限收取费用,也可以让某些会员用户或者VIP用户,试用一种彩色弹幕方案,让会员用户或者付费比较多的用户拥有这个权限,促进付费,增加经济效益。
(3)本发明在发送彩色弹幕前进行异常判断,引入了判断条件,判断用户是否登录行为,对于未登录用户,让用户提示用户去登录,增加整个app的登录的用户量,提高用户粘性。
(4)本发明在发送彩色弹幕前进行异常判断,使用了发言时间判断,能够有效避免某一个用户在单位时间内刷屏,减少管理的工作量。
(5)本发明在发送彩色弹幕前进行异常判断,判断是否两次发送相同的内容,禁止用户发送重复的内容,对于提高app的体验至关重要。
附图说明
图1是本发明实施例中发送彩色弹幕的方法的流程图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述。
参见图1所示,本发明实施例提供一种发送彩色弹幕的方法,包括以下步骤:
S1、判断用户是否登录,如果是,则执行发送彩色弹幕的操作;如果否,则不执行发送彩色的弹幕,直接提示用户登录;
S2、判断当前点击发送按钮的时间-上一次点击发送按钮的时间-指定时间间隔是否大于零,如果是,则允许发送彩色弹幕;如果否,则不允许发送彩色弹幕;指定时间间隔可以设置为3秒;
S3、如果步骤S2中允许发送彩色弹幕,进一步判断用户当前发送内容是否与上一次发送内容一致,如果一致,使用弹框提示用户不要发送相同的内容;如果不一致,则允许用户发送;
S4、判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。
本发明实施例还提供一种发送彩色弹幕的系统,该系统包括判断单元、彩色弹幕发送单元,其中:
判断单元用于:判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则触发彩色弹幕发送单元工作;
彩色弹幕发送单元用于:创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。
该系统还可以包括异常判断单元,异常判断单元用于:
判断用户是否登录,如果是,则执行发送彩色弹幕的操作;如果否,则不执行发送彩色的弹幕,直接提示用户登录;
判断当前点击发送按钮的时间-上一次点击发送按钮的时间-指定时间间隔是否大于零,如果是,则允许发送彩色弹幕;如果否,则不允许发送彩色弹幕;指定时间间隔可以设置为3秒;
如果允许发送彩色弹幕,进一步判断用户当前发送内容是否与上一次发送内容一致,如果一致,使用弹框提示用户不要发送相同的内容;如果不一致,则允许用户发送。
下面通过一个具体案例进行说明。
步骤一、发送彩色弹幕前的异常判断
(1)用户选择彩色弹幕按钮,第一步是判断用户是否登录,判断用户是否登录的语句是[DYUserManger shareInstant]isLogin],这条语句中的DYUserManger是我们自己创建的一个用户管理的类,其中,shareInstant是这个用户管理类获取一个用户管理对象的方法,[DYUserManger shareInstant]获取到一个用户管理对象,这个获取的用户管理对象就可以使用isLogin函数判断一个用户是否登录了,如果用户已经登录,直接返回YES,这个判断语句为真,执行发送彩色弹幕的操作;如果返回为NO,就不执行发送彩色的弹幕,直接提示用户登录;
(2)_messageCD=当前点击发送按钮的时间-上一次点击发送按钮的时间-指定时间间隔,判断if(_messageCD>0),如果判断成立,messageCD>0,则允许发送彩色弹幕;如果否,则说明用户发言的时间过短,不允许发送彩色弹幕;指定时间间隔可以人为配置,例如:可以设置为3秒;
如果if(_messageCD>0)判断不成立,使用函数[[UIAlertView alloc]initWithTitle:创建一个弹框并且显示出来,其中函数[UIAlertViewalloc]是创建一个弹框的过程,为弹框分配内存,initWithTitle是为这个弹框设置提示内容,一般的提示内容是:你的发言时间过短,同时直接return,终止函数的执行,不让发言;
(3)如果步骤(2)中允许发送彩色弹幕,可以发言,使用if(theSameContent),进一步判断用户当前发送内容是否与上一次发送内容一致,如果一致,使用弹框提示用户不要发送相同的内容;如果不一致,则允许用户发送。
theSameContent是一个BOOL值,theSameContent的获得过程如下:用户发送一条弹幕,记录发送弹幕的内容为oldSendContent,用户再次发送弹幕的内容为willSendContent,使用OC语言的方法,isEqualToString,比较oldSendContent和willSendContent是否相同,如果上一次发送的弹幕内容和这一次的弹幕内容相同,说明用户在发送相同的内容,theSameContent置为YES,否则theSameContent置为NO。
步骤二、发送彩色弹幕
(1)判断彩色弹幕是否真的符合彩色弹幕的要求
在我们设定的彩色弹幕服务器上,为了避免有些特殊字符或者文案不能变为彩色,因此限定了文字和表情的符号才能发送彩色弹幕,判断彩色弹幕的是否符合规则,是使用danmuContainOnlySpaceAndEmoji函数判断,这个函数的编写过程是:
1.1)使用OC语言的自带的系统函数stringByReplacingOccurrencesOfString将弹幕内容的@””(即OC语言的空格)替换为@””(即OC语言中不包含任何内容的字符串);
1.2)使用函数语句regularExpressionWithPattern:@\\[emot+\\:+[a-zA-Z0-9]+\\],判断当前的弹幕内容是否只含文字和/或表情,其中这个函数regularExpressionWithPattern是系统的正则表达式,@\\[emot+\\:+[a-zA-Z0-9]+\\]是一个正则表达式的判断条件;
1.3)上述正则表达式就可以判断当前的弹幕内容是否只含文字和/或表情,如果是只含文字和/或表情,返回为YES;否则返回为NO。
(2)如果步骤(1)中判定只含文字和/或表情,就可以执行发送弹幕内容的操作,发送彩色弹幕的过程是:-(void)sendDanmu:(NSString*)danmu color:(int)colorisNobleType:(BOOL)isNobleType函数实现的,这个函数的返回值是void,即没有返回值,其中有4个参数,参数danmu的类型是字符串类型的,代表的是弹幕内容,参数color是发送的彩色弹幕的颜色,color是用户选择的弹幕颜色值,再讲选择的颜色值转化为数字传给后台,isNobleType是BOOL型的,意思是这个弹幕是不是贵族弹幕,如果当前的登录用户的身份是贵族,那么isNobleType=YES,否则为NO,这个函数的编写过程如下:
2.1)使用函数dispatch_queue_create(DY_SOCKET_QUEUE,DISPATCH_QUEUE_SERIAL),创建一个串行队列,DY_SOCKET_QUEUE是创建的队列的名字,每个队列都有一个名字,DISPATCH_QUEUE_SERIAL是代表苹果语言的串行队列;
2.2)使用函数dispatch_async,创建一个异步线程;
2.3)发送弹幕的代码放在这个串行队列异步线程中进行,发送弹幕的代码是SendMsg(danmu,color,0),其中这几个函数是上述步骤中传入进来的,这个函数是SendMsg是公司为了提高弹幕发送的安全性封装的SDK,供应用层调用的。
综上所述,本发明实施例通过对彩色弹幕的异常判断,能够有效的提高程序的可用性,减少网管的压力;判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。保证了顺序发送弹幕消息,新开线程,不阻塞主线程,实现了彩色弹幕的发送。
本领域的技术人员可以对本发明实施例进行各种修改和变型,倘若这些修改和变型在本发明权利要求及其等同技术的范围之内,则这些修改和变型也在本发明的保护范围之内。
说明书中未详细描述的内容为本领域技术人员公知的现有技术。

Claims (6)

1.一种发送彩色弹幕的方法,其特征在于,包括以下步骤:
判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。
2.如权利要求1所述的发送彩色弹幕的方法,其特征在于:所述执行发送彩色弹幕的操作之前,还包括以下步骤:
S1、判断用户是否登录,如果是,则执行发送彩色弹幕的操作;如果否,则不执行发送彩色的弹幕,直接提示用户登录;
S2、判断当前点击发送按钮的时间-上一次点击发送按钮的时间-指定时间间隔是否大于零,如果是,则允许发送彩色弹幕;如果否,则不允许发送彩色弹幕;
S3、如果步骤S2中允许发送彩色弹幕,进一步判断用户当前发送内容是否与上一次发送内容一致,如果一致,使用弹框提示用户不要发送相同的内容;如果不一致,则允许用户发送。
3.如权利要求2所述的发送彩色弹幕的方法,其特征在于:所述指定时间间隔设置为3秒。
4.一种发送彩色弹幕的系统,其特征在于,该系统包括判断单元、彩色弹幕发送单元,其中:
判断单元用于:判断当前的弹幕内容是否只含文字和/或表情,如果否,不执行操作;如果是,则触发彩色弹幕发送单元工作;
彩色弹幕发送单元用于:创建一个串行队列;创建一个异步线程;将发送彩色弹幕的代码放在该串行队列的异步线程中,执行发送彩色弹幕的操作。
5.如权利要求4所述的发送彩色弹幕的系统,其特征在于,该系统还包括异常判断单元,异常判断单元用于:
判断用户是否登录,如果是,则执行发送彩色弹幕的操作;如果否,则不执行发送彩色的弹幕,直接提示用户登录;
判断当前点击发送按钮的时间-上一次点击发送按钮的时间-指定时间间隔是否大于零,如果是,则允许发送彩色弹幕;如果否,则不允许发送彩色弹幕;
如果允许发送彩色弹幕,进一步判断用户当前发送内容是否与上一次发送内容一致,如果一致,使用弹框提示用户不要发送相同的内容;如果不一致,则允许用户发送。
6.如权利要求5所述的发送彩色弹幕的系统,其特征在于:所述指定时间间隔设置为3秒。
CN201710169992.4A 2017-03-21 2017-03-21 发送彩色弹幕的方法及系统 Pending CN106951334A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710169992.4A CN106951334A (zh) 2017-03-21 2017-03-21 发送彩色弹幕的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710169992.4A CN106951334A (zh) 2017-03-21 2017-03-21 发送彩色弹幕的方法及系统

Publications (1)

Publication Number Publication Date
CN106951334A true CN106951334A (zh) 2017-07-14

Family

ID=59473651

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710169992.4A Pending CN106951334A (zh) 2017-03-21 2017-03-21 发送彩色弹幕的方法及系统

Country Status (1)

Country Link
CN (1) CN106951334A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108551585A (zh) * 2018-03-28 2018-09-18 武汉斗鱼网络科技有限公司 一种弹幕校验方法、装置、服务器及介质
CN109445952A (zh) * 2017-08-31 2019-03-08 武汉斗鱼网络科技有限公司 一种弹幕消息的显示调试方法和装置
CN110018890A (zh) * 2018-01-10 2019-07-16 武汉斗鱼网络科技有限公司 一种线程间的交互方法、电子设备及可读存储介质
CN113395567A (zh) * 2021-06-11 2021-09-14 腾讯科技(深圳)有限公司 一种字幕展示方法和相关装置
CN113923505A (zh) * 2021-12-14 2022-01-11 飞狐信息技术(天津)有限公司 弹幕处理方法、装置及电子设备和存储介质
CN114998880A (zh) * 2022-05-18 2022-09-02 慧之安信息技术股份有限公司 基于lstm技术的暴力低俗弹幕检测方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104661096A (zh) * 2013-11-21 2015-05-27 深圳市快播科技有限公司 视频弹幕添加方法及装置和视频播放方法及视频播放器
CN105491458A (zh) * 2015-11-27 2016-04-13 武汉斗鱼网络科技有限公司 一种直播网站中弹幕发言时间的优化方法
CN105516820A (zh) * 2015-12-10 2016-04-20 腾讯科技(深圳)有限公司 一种弹幕交互方法和装置
CN105872679A (zh) * 2015-12-31 2016-08-17 乐视网信息技术(北京)股份有限公司 弹幕显示方法和装置
CN106371834A (zh) * 2016-08-30 2017-02-01 广州新博庭网络信息科技股份有限公司 一种弹幕数据的显示方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104661096A (zh) * 2013-11-21 2015-05-27 深圳市快播科技有限公司 视频弹幕添加方法及装置和视频播放方法及视频播放器
CN105491458A (zh) * 2015-11-27 2016-04-13 武汉斗鱼网络科技有限公司 一种直播网站中弹幕发言时间的优化方法
CN105516820A (zh) * 2015-12-10 2016-04-20 腾讯科技(深圳)有限公司 一种弹幕交互方法和装置
CN105872679A (zh) * 2015-12-31 2016-08-17 乐视网信息技术(北京)股份有限公司 弹幕显示方法和装置
CN106371834A (zh) * 2016-08-30 2017-02-01 广州新博庭网络信息科技股份有限公司 一种弹幕数据的显示方法和装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109445952A (zh) * 2017-08-31 2019-03-08 武汉斗鱼网络科技有限公司 一种弹幕消息的显示调试方法和装置
CN110018890A (zh) * 2018-01-10 2019-07-16 武汉斗鱼网络科技有限公司 一种线程间的交互方法、电子设备及可读存储介质
CN108551585A (zh) * 2018-03-28 2018-09-18 武汉斗鱼网络科技有限公司 一种弹幕校验方法、装置、服务器及介质
CN113395567A (zh) * 2021-06-11 2021-09-14 腾讯科技(深圳)有限公司 一种字幕展示方法和相关装置
CN113395567B (zh) * 2021-06-11 2022-07-05 腾讯科技(深圳)有限公司 一种字幕展示方法和相关装置
CN113923505A (zh) * 2021-12-14 2022-01-11 飞狐信息技术(天津)有限公司 弹幕处理方法、装置及电子设备和存储介质
CN113923505B (zh) * 2021-12-14 2022-03-01 飞狐信息技术(天津)有限公司 弹幕处理方法、装置及电子设备和存储介质
CN114998880A (zh) * 2022-05-18 2022-09-02 慧之安信息技术股份有限公司 基于lstm技术的暴力低俗弹幕检测方法

Similar Documents

Publication Publication Date Title
CN106951334A (zh) 发送彩色弹幕的方法及系统
CN103152402A (zh) 通过移动终端进行登录的方法与系统以及云端服务器
CN105577527A (zh) 一种智能手表与微信平台的交互方法、装置和智能手表
CN104869099A (zh) 一种基于指纹账户的多网络帐号登录方法及系统
CN102724079B (zh) 一种以太网设备辅助配置的方法及系统
EP3379771B1 (en) Message processing method, device and system
CN107391626A (zh) 落地页的创建方法和装置
CN110110544A (zh) Android智能终端隐私保护方法及装置
CN107749799A (zh) 家电设备的配网方法、装置、系统及计算机可读存储介质
CN112422557A (zh) 一种工控网络的攻击测试方法及装置
CN104022878A (zh) 一种贴膜sim卡及相应的应用鉴权系统和鉴权方法
CN105897475A (zh) 一种路由器的远程配置方法及路由器
CN103051625B (zh) 一种利用智能终端监控联网应用程序的方法及系统
CN102984025B (zh) 网关设备虚拟隧道性能的测试方法、装置及系统
CN106559304A (zh) 一种虚拟专用网络的连接配置方法和装置
CN102377647B (zh) 一种基于网络电视的路由配置方法及系统
CN101873593A (zh) 一种基于Android的Wifi无线拨号系统及方法
CN108712376A (zh) 一种用于服务器登录的验证方法及装置
CN105528546B (zh) 一种挖掘漏洞的方法、装置及电子设备
CN113965904A (zh) 设备注册方法、装置和存储介质
CN106533959B (zh) 一种交换设备出口端速率的确定方法及交换设备
CN108550366A (zh) 一种家电的控制方法、装置、可读存储介质及设备
CN102005001B (zh) 一种网上银行登录方法、装置及系统
CN106604247A (zh) 一种利用北斗短信息通道智能开通二代卫星网络的方法
CN104780157B (zh) 智能路由及基于智能路由的认证管理方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170714

RJ01 Rejection of invention patent application after publication