Skip to content

Luolan.QQBot超级完善的 .NET 官方 QQ 机器人 SDK

专为 .NET 开发者打造 · MVC 控制器模式 · WebSocket / Webhook 双接入 · 群管理 · 强类型 API

Luolan.QQBot

MVC 控制器模式

类似 ASP.NET WebAPI 的开发体验。使用 [Command] 特性标记方法,自动路由、参数解析、类型转换。让写机器人指令像写 API Controller 一样自然。

极致简单

Builder 模式一行链式调用即可创建客户端。Token 自动刷新、WebSocket 自动重连,开发者只需关注业务逻辑。

深度 DI 集成

完美支持 ASP.NET Core 依赖注入和 IHostedService。提供 AddQQBot() 一行注册,自动管理 Bot 生命周期。

强类型支持

完整的 API 模型类型定义,享受 IDE 智能提示。所有事件参数和 API 返回值都是强类型,拒绝弱类型 JSON 操作。

丰富事件系统

覆盖频道、群聊、私聊、群成员、入群申请、互动等 40+ 种事件类型。支持事件委托和原始事件双重访问方式。

WebSocket / Webhook

WebSocket 与 Webhook 由客户端 Mode 配置切换,事件订阅和控制器代码无需修改。Webhook 内置 Ed25519 签名校验、回调地址验证和 ACK 响应。

完整群管理

群信息、群成员、入群审批与自动审批策略、群黑名单、成员禁言,以及全量群消息和流式单聊消息。

性能优化内置

内置速率限制器、共享 JSON 配置、增强的命令解析器。支持 bool/enum/Guid/可空类型自动转换。

Luolan.QQBot ​

一个简洁、高效、深度集成 .NET 依赖注入体系的 QQ 官方机器人 SDK。

安装 ​

通过 NuGet 安装核心包:

bash
dotnet add package Luolan.QQBot
bash
Install-Package Luolan.QQBot
bash
<PackageReference Include="Luolan.QQBot" Version="1.5.1" />

快速预览 ​

csharp
using Luolan.QQBot.Controllers;
using Luolan.QQBot.Extensions;

// 构建客户端
var bot = new QQBotClientBuilder()
    .WithAppId("你的AppId")
    .WithClientSecret("你的ClientSecret")
    .WithIntents(Intents.Default | Intents.GroupAndC2C | Intents.GroupMembers)
    .Build();

// 启用控制器
bot.UseControllers();
await bot.StartAsync();

// 控制器定义
public class HelloController : QQBotController
{
    [Command("hello")]
    public string Hello(string name)
        => $"Hello, {name}!";
}
csharp
using Luolan.QQBot;

var bot = new QQBotClientBuilder()
    .WithAppId("你的AppId")
    .WithClientSecret("你的ClientSecret")
    .Build();

bot.OnAtMessageCreate += async e =>
    await bot.ReplyAsync(e.Message, "收到消息!");

await bot.StartAsync();
await Task.Delay(-1);

适用场景 ​

  • 游戏社群 - 自动管理频道成员、发送公告、互动问答
  • 通知服务 - 系统监控告警、构建状态通知、定时提醒
  • 客服机器人 - 自动回复、常见问题解答、工单转接
  • 运营工具 - 用户数据统计、活动管理、签到抽奖

系统要求 ​

  • .NET 8.0+
  • 需要 QQ 开放平台 注册机器人并获取 AppId 和 ClientSecret

许可证 ​

本项目基于 MIT 协议开源。在 GitHub 上查看源码。

基于 MIT 协议发布