XYBot是一个基于Python,以Lagrange为基础的框架,旨在简化创建自定义QQ机器人的过程。该框架提供了丰富的功能和工具,以便你能够轻松地构建各种各样的QQ机器人应用。
- 简单易用的API,适合初学者和有经验的开发者。
- 自定义插件系统,允许用户轻松扩展机器人功能。
- 丰富的机器人API,包括发送消息、管理群组、获取用户信息等。
- API适配,让你在更换了平台但是你的插件无需变动,通用使用。
已实现 API
API | 功能 |
---|---|
/send_group_msg | 发送群消息 |
/set_group_card | 设置群名片 |
/get_group_info | 获取群信息 |
/delete_msg | 撤回消息 |
/set_group_add_request | 操作加群请求 |
/set_friend_add_request | 操作好友请求 |
等待适配 | .. |
插件调度器
人话:支持传入插件的事件
- 聊天消息 (群聊消息,好友消息)
- 事件消息 (荣誉,戳一戳,禁言...)
- 请求消息 (加群请求,退群请求)
- 插件管理器(启动/卸载)
-
克隆这个项目到你的本地环境:
git clone [email protected]:Thexiaoyuqaq/XYBot.git cd XYBot
2.安装项目依赖:
pip install -r requirements.txt
-
从Action获取最新版Lagrange
-
将下载后的Lagrange.OneBot.exe放入XYBOT-2.0/bot/内
-
通过命令行运行Lagrange,并按照要求扫码登录,成功登录后关闭控制台
-
配置修改:找到appsettings.json文件中Implementations部分,添加如下内容,记得将上方的
}
后方加一个,
(逗号){ "Type": "Http", "Host": "*", "Port": 8083, "AccessToken": "" }
注:记住port端口,这里是HTTP-API的配置
(!!)(2)3.将自带的"Type": "ReverseWebSocket", 修改为 "Type": "ForwardWebSocket",
完整修改:
"Implementations": [ { "Type": "ForwardWebSocket", "Host": "127.0.0.1", "Port": 8080, "Suffix": "/onebot/v11/ws", "ReconnectInterval": 5000, "HeartBeatInterval": 5000, "AccessToken": "" }, { "Type": "Http", "Host": "*", "Port": 8083, "AccessToken": "" }
]
### 3. 机器人环境配置
1. 在项目根目录下, 通过命令行运行main.py
```bash
python main.py
按照控制台输出的提示信息 并逐步填写 HTTP-API-PORT,WebSocket-PORT相关配置项 填写完成后,程序自动退出,请重新运行,待出现
XYBot提供了一个强大的插件系统,允许用户自定义和扩展机器人的功能。你可以轻松编写自己的插件,并将其添加到机器人中。以下是如何编写和使用插件的示例:
MessageApi更多数据API 详见:Plugin_Api.py
Api 更多数据API 详见:Command_Api.py
1.在项目的 Plugins 目录下创建一个新的Python文件,例如 MyPlugin.py。
2.按照需求编写你的插件以完善你所需要的功能,以下是一个基础的示例: 请见 example.py
更多获取数据接口详见: Plugin_Api
- 完善机器人对接框架的对接度
- 制作WIKI页面
- 把插件的固定函数修改为装饰器
- 完善插件管理器,例如插件信息,插件依赖等功能
- 切换至NTQQ框架
- 整理项目结构
- 将API接口内容移植到Api函数下
- 项目实现异步并且线程优化
- 完善README和issues模板
- 排版日志输出(人话:一个日志输出系统)
- 格式化(排版)代码
- 制作一个插件管理器,使得机器人支持加载插件
这个项目基于 Creative Commons 许可证 开源。
你可以通过以下方式为项目做出贡献: