feat(napcat): 添加账号设置处理器和事件类型注解

为napcat插件增加SetProfileHandler来处理账号信息设置事件
- 实现参数解析和napcat API调用逻辑
- 添加详细的事件类型文档注解,包含参数说明和返回格式
- 扩展事件枚举类,新增多个群组相关操作事件
- 在插件初始化时自动注册所有事件处理器
- 为HandlerResultsCollection添加获取消息结果的方法

同时添加接口测试处理器用于验证事件系统的正常工作
This commit is contained in:
Windpicker-owo
2025-08-29 14:16:24 +08:00
parent 0aabd49375
commit 1dbf14c096
4 changed files with 317 additions and 50 deletions

View File

@@ -40,6 +40,19 @@ class HandlerResultsCollection:
"""获取continue_process为False的handler结果"""
return [result for result in self.results if not result.continue_process]
def get_message_result(self) -> Any:
"""获取handler的message
当只有一个handler的结果时直接返回那个handler结果中的message字段
否则用字典的形式{handler_name:message}返回
"""
if len(self.results) == 0:
return {}
elif len(self.results) == 1:
return self.results[0].message
else:
return {result.handler_name: result.message for result in self.results}
def get_handler_result(self, handler_name: str) -> Optional[HandlerResult]:
"""获取指定handler的结果"""
for result in self.results: