barrage 弹幕 barrage

songtianyi • 3349 次点击    
这是一个分享于 的项目,其中的信息可能已经有所发展或是发生改变。
## barrage 各直播平台弹幕协议和开放平台API ## 支持列表 * **douyu.com** ```go package main import ( "fmt" "github.com/songtianyi/barrage/douyu" "github.com/songtianyi/rrframework/logs" ) func chatmsg(msg *douyu.Message) { level := msg.GetStringField("level") nn := msg.GetStringField("nn") txt := msg.GetStringField("txt") logs.Info(fmt.Sprintf("level(%s) - %s >>> %s", level, nn, txt)) } func main() { client, err := douyu.Connect("openbarrage.douyutv.com:8601", nil) if err != nil { logs.Error(err) return } client.HandlerRegister.Add("chatmsg", douyu.Handler(chatmsg), "chatmsg") if err := client.JoinRoom(288016); err != nil { logs.Error(fmt.Sprintf("Join room fail, %s", err.Error())) return } client.Serve() } ``` * **live.bilibili.com** ``` package main import ( "github.com/songtianyi/barrage/bilibili" "github.com/songtianyi/rrframework/logs" ) func danmu(msg *bilibili.Message) { logs.Debug(">>> ", string(msg.Bytes())) } func main() { // uri, userid, handlerRegister client, err := bilibili.Connect("https://live.bilibili.com/43783", -1, nil) if err != nil { logs.Error(err) return } client.HandlerRegister.Add(bilibili.DANMU_MSG, bilibili.Handler(danmu), "danmu") client.Serve() } ``` ## demo ![douyu-barrage-demo](http://ww1.sinaimg.cn/large/006HJ39wgy1fhjnykako6j30ik0g5adm.jpg)
授权协议:
Apache
开发语言:
go 查看源码»
操作系统:
all
3349 次点击  
加入收藏 微博
1 回复  |  直到
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传