类型安全
完全类型化的 API,编译时捕获错误。Rust 的所有权系统确保内存安全,防止常见的编程错误。
BotRS 是为 Rust 编程语言设计的异步框架,专门用于构建 QQ 频道机器人。它提供了创建交互式机器人应用程序所需的基本构建块,这些应用程序可以处理消息、管理频道,并实时响应各种事件。
从高层次来看,BotRS 提供了几个主要组件:
在构建 QQ 频道机器人时,您需要一个能够处理实时消息传递、API 交互和事件处理复杂性的框架。BotRS 作为基础,让您专注于机器人的逻辑,而不是底层基础设施。
该框架处理:
这是一个响应消息的简单机器人:
use botrs::{Client, Context, EventHandler, Intents, Message, Ready, Token};
struct MyBot;
#[async_trait::async_trait]
impl EventHandler for MyBot {
async fn ready(&self, _ctx: Context, ready: Ready) {
println!("机器人已就绪!登录为:{}", ready.user.username);
}
async fn message_create(&self, ctx: Context, message: Message) {
if let Some(content) = &message.content {
if content == "!ping" {
let _ = message.reply(&ctx.api, &ctx.token, "Pong!").await;
}
}
}
}
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let token = Token::new("你的应用ID", "你的密钥");
let intents = Intents::default().with_public_guild_messages();
let mut client = Client::new(token, intents, MyBot, true)?;
client.start().await?;
Ok(())
}
准备用 BotRS 构建您的第一个 QQ 频道机器人了吗?请遵循我们的全面指南:
BotRS 保持与官方 Python botpy 库的 API 兼容性,使熟悉 Python 生态系统的开发者能够直接迁移。结构化参数系统镜像了 botpy 的方法,同时添加了 Rust 的类型安全优势。
Rust 的类型系统防止动态语言中常见的整类错误:
BotRS 是在 MIT 许可证下发布的开源软件。欢迎贡献!