Skip to content

介绍

洛玖是什么

洛玖是一个 QQ 机器人框架,基于 Napcat 的 OneBot v11 协议。

它的核心设计思路很简单:宿主负责连接,插件负责逻辑。你只需要关心插件要做什么,不用操心 WebSocket 怎么连、消息怎么收发。

为什么选择洛玖

写插件的语言你来定。 洛玖通过 FFI 消息总线和原生共享库(DLL/SO)来加载插件。Rust、C++、Python,甚至任何能调用 C 接口的语言,都能写插件。

插件运行在独立线程。 阻塞操作不会卡住机器人主循环。你的插件可以安心做耗时任务,不用担心影响其他插件。

消息分发有优先级。 高优先级插件先处理,还能设置阻断,让低优先级插件收不到已被处理的消息。

热重载不用停机。 更新插件时,禁用旧的、加载新的,机器人继续运行,用户无感知。

架构一览

Napcat ──WebSocket──> 宿主(Rust)

                     消息路由

                     FFI 消息总线
                     ├── luo9_message      → 插件收到 QQ 消息
                     ├── luo9_meta_event   → 插件收到心跳/生命周期
                     ├── luo9_notice       → 插件收到通知事件
                     ├── luo9_request      → 插件收到请求事件
                     ├── luo9_task         → 插件收到定时任务触发
                     ├── luo9_task_miso    → 插件发布任务请求
                     └── luo9_send         → 插件请求发送消息

                     插件(DLL/SO,独立线程)

宿主负责和 Napcat 通信,把收到的消息通过总线分发给插件。插件处理完后,通过总线把要发送的消息交给宿主。

就这么简单。

下一步

基于 GPLv3 许可发布