斗鱼/bilibili 弹幕协议包

2017-07-16 04:00:19 +08:00
 spice630

barrage

各直播平台弹幕协议和开放平台 API

http://github.com/songtianyi/barrage

支持列表

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()
}
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

7016 次点击
所在节点    问与答
8 条回复
zhouquanbest
2017-07-16 11:42:24 +08:00
LGTM
spice630
2017-07-16 12:56:50 +08:00
@zhouquanbest 哈?
spice630
2017-07-16 13:11:24 +08:00
@管理员
能帮我 move 下节点嘛?怎么是在问与答节点。。。
Genteure
2017-07-16 14:25:10 +08:00
uhm......

- B 站直播弹幕已经在逐渐弃用 788 端口了
- 心跳包和进入直播间的消息不是相同的

参考:
https://github.com/copyliu/bililive_dm/blob/master/BiliDMLib/DanmakuLoader.cs#L75
https://github.com/copyliu/bililive_dm/blob/master/BiliDMLib/DanmakuLoader.cs#L317
spice630
2017-07-16 14:55:38 +08:00
@Genteure
你说的是 type 不同 还是{"roomid":%d,"uid":%d}?
spice630
2017-07-16 15:01:27 +08:00
@Genteure
我看了下,逻辑是一样的, 我的也是分 type
spice630
2017-07-16 15:21:56 +08:00
@Genteure
端口已改。
102400
2017-07-17 02:28:42 +08:00
就没有人做一下发送弹幕的吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/375664

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX