应用场景
- 开发一款游戏,在直播平台进行直播,游戏可以根据直播间的评论、点赞和礼物信息触发不同的功能,能让观看直播的人参与到游戏中,达到吸粉并提升直播效果。
功能模块
数据采集服务器
- 实现思路
- 程序自动进入并监控直播间,实时获取弹幕、礼物和评论
- 把获取到的实时数据,封装成json数据结构
- 通过websocket发送出去
- 开发语言
- python
- Nodejs
游戏插件
- 实现思路
- 通过websocket连接到数据服务器
- 解析服务器发来的json数据
- 开发语言
- C++
- UE4
数据结构类型
{'MessageType': 0,'DetailData':{'Name':'','Id':'','Level','Comment':'','Vartar':''}
}
部分代码展示
- Python
class EMessageType(Enum) :E_None = 0, # 未定义E_Comment = 1, # 评论E_Like = 2, # 点赞E_Attention = 3, # 关注E_Gift = 4, # 送礼物E_ComeIn = 5, # 进入直播间'''
用户的基础信息
'''
class CUserDetail :def __init__(self, name, id, level) :self.UserName = name # 用户名称self.UserId = id # 用户IDself.UserLevel = level # 等级payGradeself.Type = EMessageType.E_None'''
评论
'''
class CCommentFormat(CUserDetail) :def __init__(self, name, id, level, comment, vartar) :super().__init__(name, id, level)self.Comment = comment # 评论内容self.Vartar = vartarself.Type = EMessageType.E_Commentdef ToStr(self) :DictValue = {'UserName' : self.UserName,'UserId' : self.UserId,'UserLevel' : self.UserLevel,'Comment' : self.Comment,'UserVartar' : self.Vartar}AllData = {'Type' : 1,'Data' : DictValue}return json.dumps(AllData)
- Nodejs
var E_None = 0; // 未定义
var E_Comment = 1; // 评论
var E_Like = 2; // 点赞
var E_Attention = 3; // 关注
var E_Gift = 4; // 送礼物
var E_ComeIn = 5; // 进入直播间
var E_LikeAll = 6; // 总赞// 用户的基础信息
class CUserDetail
{constructor(name, id){this.UserName = namethis.UserId = idthis.Type = E_None}ToStr(){}
} // 评论
class CCommentFormat extends CUserDetail
{constructor(name, id, comment){super(name, id)this.Comment = comment}ToStr(){var Comment = {'Type': E_Comment, 'Data' : {'UserName' : this.UserName, 'UserId' : this.UserId, 'Comment': this.Comment}}return JSON.stringify(Comment)}
}
测试效果
可合作。2918462052