Expand description
§blivemsg - B站直播弹幕客户端库
一个高性能的异步B站直播弹幕客户端,支持所有消息类型。
§快速开始
§Stream 模式(推荐)
use blivemsg::{BliveClient, types::Message};
use futures_util::StreamExt;
#[tokio::main]
async fn main() -> Result<(), blivemsg::Error> {
let mut client = BliveClient::new(7734200, "cookies.json")?;
let mut stream = client.stream().await?;
while let Some(message) = stream.next().await {
match message {
Message::Danmu(d) => println!("[{}] {}: {}", d.medal_level, d.username, d.content),
Message::Gift(g) => println!("{} 送了 {} x{}", g.username, g.gift_name, g.num),
_ => {}
}
}
Ok(())
}§回调模式
use blivemsg::BliveClient;
#[tokio::main]
async fn main() -> Result<(), blivemsg::Error> {
let mut client = BliveClient::new(7734200, "cookies.json")?;
client.on_danmu(|danmu| {
println!("[{}] {}: {}", danmu.medal_level, danmu.username, danmu.content);
}).await?;
Ok(())
}§架构说明
- BliveClient: 核心客户端,负责建立和管理WebSocket连接
- types::Message: 消息枚举,包含所有52种消息类型
- Error: 统一错误类型
更多详细信息请查看各模块文档。
Modules§
- types
- 所有消息类型定义
Structs§
- Blive
Client - 核心客户端 B站直播弹幕客户端
Enums§
- Error
- 错误类型