UNPKG

blivedmjs

Version:

B站直播弹幕库的Node.js实现 (CommonJS版本)

94 lines (71 loc) 2.22 kB
# blivedm-js B站直播弹幕协议的Node.js实现,包含WebSocket客户端。 > **注意**:此版本为CommonJS模块格式,可直接在Node.js中使用,无需启用ES模块支持。 ## 功能特性 - 支持WebSocket协议的B站直播弹幕获取 - 支持多种消息类型: - 弹幕 - 礼物 - 醒目留言(SC) - 上舰 - 用户进入直播间 - 点赞信息 - 系统通知 等... ## 安装 ```bash npm install blivedmjs ``` ## 使用示例 ```javascript const { BLiveClient } = require('blivedm-js'); const { BaseHandler } = require('blivedm-js/handlers'); // 创建自定义消息处理器 class MyHandler extends BaseHandler { // 弹幕消息 _on_danmaku(client, message) { console.log(`[${client.roomId}] ${message.uname}: ${message.msg}`); } // 礼物消息 _on_gift(client, message) { console.log(`[${client.roomId}] ${message.uname} 赠送 ${message.giftName}x${message.num}`); } // 醒目留言 _on_super_chat(client, message) { console.log(`[${client.roomId}] 醒目留言 ¥${message.price} ${message.uname}: ${message.message}`); } } // 使用示例 async function main() { const roomId = 你的房间ID; // 替换为实际的房间ID const client = new BLiveClient(roomId); const handler = new MyHandler(); client.set_handler(handler); await client.start(); console.log('弹幕获取已启动'); } main().catch(console.error); ``` ## 支持的消息类型 - `DANMU_MSG`: 弹幕消息 - `SEND_GIFT`: 礼物消息 - `GUARD_BUY`: 上舰消息 - `SUPER_CHAT_MESSAGE`: 醒目留言(SC) - `INTERACT_WORD`: 用户进入直播间 - `LIKE_INFO_V3_CLICK`: 用户点赞 - 更多消息类型请参考源码... ## 自定义处理器 你可以通过继承 `BaseHandler` 类来创建自定义的消息处理器: ```javascript class MyHandler extends BaseHandler { // 重写你想处理的消息方法 _on_danmaku(client, message) { // 处理弹幕消息 } _on_gift(client, message) { // 处理礼物消息 } } ``` ## 许可证 MIT License