readmeupdate
This commit is contained in:
69
README.md
69
README.md
@@ -11,6 +11,51 @@
|
||||
* **异步核心**:基于 `asyncio` 和 `websockets` 的高性能异步核心。
|
||||
* **自动重连**:内置 WebSocket 断线重连机制。
|
||||
|
||||
## 📝 待办事项 (TODO)
|
||||
|
||||
### API 封装
|
||||
- [ ] **消息相关**
|
||||
- `delete_msg`: 撤回消息
|
||||
- `get_msg`: 获取消息
|
||||
- `get_forward_msg`: 获取合并转发消息
|
||||
- `send_like`: 发送点赞
|
||||
- [ ] **群组管理**
|
||||
- `set_group_kick`: 群组踢人
|
||||
- `set_group_ban`: 群组单人禁言
|
||||
- `set_group_anonymous_ban`: 群组匿名禁言
|
||||
- `set_group_whole_ban`: 群组全员禁言
|
||||
- `set_group_admin`: 群组设置管理员
|
||||
- `set_group_anonymous`: 群组匿名
|
||||
- `set_group_card`: 设置群名片(群备注)
|
||||
- `set_group_name`: 设置群名
|
||||
- `set_group_leave`: 退出群组
|
||||
- `set_group_special_title`: 设置群组专属头衔
|
||||
- [ ] **群组信息**
|
||||
- `get_group_info`: 获取群信息
|
||||
- `get_group_list`: 获取群列表
|
||||
- `get_group_member_info`: 获取群成员信息
|
||||
- `get_group_member_list`: 获取群成员列表
|
||||
- `get_group_honor_info`: 获取群荣誉信息
|
||||
- [ ] **用户相关**
|
||||
- `get_login_info`: 获取登录号信息
|
||||
- `get_stranger_info`: 获取陌生人信息
|
||||
- `get_friend_list`: 获取好友列表
|
||||
- [ ] **请求处理**
|
||||
- `set_friend_add_request`: 处理加好友请求
|
||||
- `set_group_add_request`: 处理加群请求/邀请
|
||||
- [ ] **系统/其他**
|
||||
- `get_version_info`: 获取版本信息
|
||||
- `get_status`: 获取状态
|
||||
- `can_send_image`: 检查是否可以发送图片
|
||||
- `can_send_record`: 检查是否可以发送语音
|
||||
- `clean_cache`: 清理缓存
|
||||
|
||||
### 其他改进
|
||||
- [ ] **日志系统优化**: 引入更完善的日志记录机制,支持文件输出和日志级别控制。
|
||||
- [ ] **异常处理增强**: 增强插件执行过程中的异常捕获,防止单个插件崩溃影响整个 Bot。
|
||||
- [ ] **中间件支持**: 添加消息处理中间件,支持在指令执行前/后进行拦截和处理。
|
||||
- [ ] **权限系统**: 实现基础的权限管理(如超级管理员、群管理员等)。
|
||||
|
||||
## 📂 项目结构
|
||||
|
||||
```
|
||||
@@ -129,6 +174,30 @@ async def auto_approve_friend(bot: Bot, event: FriendRequestEvent):
|
||||
})
|
||||
```
|
||||
|
||||
#### 4. 通用 API 调用 (call_api)
|
||||
|
||||
如果框架尚未封装某个 OneBot API,你可以使用 `bot.call_api` 直接调用。这是通用的备用调用方法。
|
||||
|
||||
```python
|
||||
from core.command_manager import matcher
|
||||
from core.bot import Bot
|
||||
from models import MessageEvent
|
||||
|
||||
@matcher.command("info")
|
||||
async def get_group_info(bot: Bot, event: MessageEvent, args: list[str]):
|
||||
# 直接调用 get_group_info API
|
||||
# action: API 名称
|
||||
# params: API 参数字典
|
||||
resp = await bot.call_api("get_group_info", {
|
||||
"group_id": event.group_id,
|
||||
"no_cache": False
|
||||
})
|
||||
|
||||
if resp.get("status") == "ok":
|
||||
group_name = resp["data"]["group_name"]
|
||||
await event.reply(f"当前群名:{group_name}")
|
||||
```
|
||||
|
||||
## 📚 事件模型说明
|
||||
|
||||
项目采用了基于工厂模式的事件处理系统,所有事件定义在 `models/events/` 下:
|
||||
|
||||
Reference in New Issue
Block a user