Commit Graph
134 Commits
Author SHA1 Message Date
SXP-Simon 6c282cceb5 fix(平台识别逻辑): 正确处理群不在此平台的情况 2025-11-18 20:45:22 +08:00
SXP-Simon 453483fb5b fix(多适配器支持): 处理 Bot 实例与平台 ID 2025-11-18 14:38:52 +08:00
SXP-Simon c5ca2a8393 fix(多适配器支持): 处理 Bot 实例与平台 ID 2025-11-18 14:38:52 +08:00
SXP-Simon cd8ef96913 fix(main:92): object of type 'bool' has no len() 2025-11-18 14:38:52 +08:00
SXP-Simon 64ac6c429b fix(多适配器支持): 处理 Bot 实例与平台 ID 2025-11-18 14:38:52 +08:00
SXP-Simon 4f2f5a83af fix(多适配器支持):
1. BotManager 多实例管理 (src/core/bot_manager.py)
将单实例存储改为字典:self._bot_instances = {} (platform_id -> bot_instance)
添加 platform_id 参数支持:set_bot_instance(bot_instance, platform_id=None)
修改 get_bot_instance(platform_id=None) 支持按平台获取实例
更新 auto_discover_bot_instances() 发现并注册所有适配器
改进状态信息,显示发现的平台数量
2. AutoScheduler 多平台支持 (src/scheduler/auto_scheduler.py)
添加 _get_platform_id_for_group(group_id) 方法,根据群ID查找对应平台
修改消息获取逻辑,使用正确的平台和bot实例
更新 unified_msg_origin 构造,使用正确的平台ID
3. main.py 初始化逻辑更新
修改 _delayed_start_scheduler() 显示发现的适配器数量
日志输出每个平台的详细信息

现在插件可以:

自动发现所有适配器:启动时扫描所有平台,注册每个适配器的bot实例
智能路由:根据群ID自动选择正确的适配器获取消息
避免重复:每个群只通过其所属的适配器获取一次消息
完整日志:显示发现的适配器数量和平台信息
2025-11-18 14:38:52 +08:00
SXP-Simon acca39a162 fix(typo): bot_qq_id 更新配置说明 2025-11-18 00:17:04 +08:00
SXP-Simon dbcf05ecb0 fix(topic_analyzer): 话题分析处理历史消息跳过机器人列表中的消息 2025-11-18 00:17:04 +08:00
SXP-Simon eb16f78b15 feat(multi-qq-platforms): 尝试适配多个适配器实例,支持填入多个QQ bot账号 (#42) 2025-11-18 00:17:04 +08:00
SXP-Simon 42ef82f00f [v3.7.0] 自定义每部分分析的服务商,兼容 Astrbot 内置生态,提供更加用户友好的配置 (#30) (#40)
* fix(max_query_rounds): 弃用的 max_query_rounds

* feat(provider): 根据配置键获取 Provider,支持多级回退

回退顺序:
1. 尝试从配置获取指定的 provider_id(如 topic_provider_id)
    2. 回退到主 LLM provider_id(llm_provider_id)
    3. 回退到当前会话的 Provider(通过 umo)
    4. 回退到第一个可用的 Provider

* feat: 添加 _special: select_provider 支持并删除 custom_api_key 相关逻辑

* style: 使用 ruff 格式化代码

* refactor: 重构 provider 选择逻辑并修复兼容性问题

* improve: 改进 Provider 选择和 LLM 调用的日志输出

* [v3.7.0] 根据配置键获取 Provider,支持多级回退
2025-11-10 01:00:31 +08:00
xiaoxi68 3802e63b9a Ruff:收敛异常处理并清理未使用导入/变量 2025-11-09 20:33:14 +08:00
xiaoxi68 4f509ae5f9 ruff 2025-11-09 20:28:51 +08:00
xiaoxi68 f42929938d 重构message_handler 删除分页机制 2025-11-09 20:24:27 +08:00
SXP-Simon 709c296345 [fix] (bot_filter) 增强机器人消息过滤机制,防止bot QQ号出现在用户称号分析中 2025-11-04 20:47:29 +08:00
SXP-Simon 284389b5d2 [fix] user_title 获取逻辑 2025-11-04 20:35:26 +08:00
SXP-Simon 29c025c98b [chore] 增加日志 2025-11-04 20:26:31 +08:00
SXP-Simon 036a5c3581 [fix] (#34) token 消耗阈值自定义 2025-11-04 18:45:46 +08:00
SXP-Simon 7250293f7c [v3.4.2] 尝试修复错误的获取提示词方法 2025-11-04 17:50:49 +08:00
SXP-Simon bc88955107 [v3.4.1] 避免用户手动卸载插件配置文件的更新,避免受 3.3.0 以及 3.2.0 错误版本的提示词配置影响导致群分析不可用 2025-11-04 17:20:54 +08:00
SXP-Simon 5e2e85cb2d [fix] (#29) 修复 群分析获取历史消息的机制并不严格,出现超过当天消息、超过最大数量限制的情况 的问题 2025-11-03 20:48:54 +08:00
SXP-Simon ed7b1a2cb9 [fix] 纠正配置文件格式 2025-11-03 13:45:11 +08:00
SXP-Simon 882dc839ac [feat] (propmt) 自定义分析 propmt 2025-11-03 12:55:58 +08:00
SXP-Simon 28dbc0b854 [fix] (MessageHandler) 如果已经获取到足够的消息(达到 max_messages),停止获取,获取到的消息数量是最新一次获取到的超过 max_message 的消息数量 (#29) 2025-11-03 11:59:34 +08:00
SXP-Simon accd0d85a8 [feat] 优化分析器执行情况,异步网络请求 2025-11-02 17:39:51 +08:00
SXP-Simon 3bed88a31d [fix] 补充不存在的 金句分析 开启与关闭设置 2025-11-02 17:38:37 +08:00
SXP-Simon 6165c36159 [fix] 自动分析器获取群聊消息 2025-11-02 16:53:57 +08:00
SXP-Simon 13f59e279d [fix] CQHttp 对象直接提供 call_action() 方法 2025-11-02 16:23:04 +08:00
SXP-Simon 3cc9351c09 [debug] 尝试修复自动分析器的 修复运行时错误:'Client' object has no attribute 'api' 问题 2025-11-02 15:40:22 +08:00
SXP-Simon 3f0e83bcbc [v2.9.0] PDF 安装过程不阻塞主线程 2025-11-02 15:39:38 +08:00
SXP-Simon 7d53db9f5c [fix] 尝试解决 PDF 安装过程中存在阻塞主线程导致 bot 卡死的情况 2025-11-02 15:25:10 +08:00
Ri-Nai 7290736e46 [feat] 将 InfoUtils 类迁移至分析模块,并实现获取用户昵称的方法 2025-10-19 00:29:48 +08:00
Ri-Nai b6633613db [refactor] 更新 InfoUtils.get_user_nickname 方法,添加 config_manager 参数以支持群名片配置 2025-10-18 23:34:27 +08:00
Ri-Nai 98fd257532 [feat] 添加用户群名片配置选项及获取方法 2025-10-18 23:23:54 +08:00
Ri-Nai 7323e1184a [refactor] 使用 InfoUtils 提取用户昵称,简化代码 2025-10-18 23:20:53 +08:00
SXP-Simon 97a4a89021 [chore] (v2.7.1) 版本更新至v2.7.1并清理调试日志 2025-10-10 19:32:50 +08:00
SXP-Simon 6a51e0da73 [fix] 删除无效方法 2025-10-10 19:23:04 +08:00
SXP-Simon 1773dc7806 [debug] 调试 chromium 打开情况 2025-10-10 19:20:21 +08:00
SXP-Simon e96196bdaf fix(analysis): 加强提示构建日志与空检查
- 增加prompt构建和消息提取的调试日志
- 在topic分析链路中跳过空消息和空prompt
- 防止LLM调用传入空prompt导致的错误
2025-10-10 18:52:49 +08:00
SXP-Simon c696d24920 [debug] pdf 安装 2025-10-10 18:52:15 +08:00
SXP-Simon 4c75a85518 [debug] 调试 pyppeteer 启动 chromium 2025-10-10 17:12:50 +08:00
SXP-Simon 54354f1754 [debug] 确保sender是字典类型,避免'str' object has no attribute 'get'错误 2025-10-10 17:06:44 +08:00
SXP-Simon 73bc93853e [fix] (pdf_utils) 恢复消失的历史版本存在的 PDF 安装 chromium 方法 2025-10-10 16:37:39 +08:00
SXP-Simon 791073b8bf [debug] 调试语句 2025-10-10 16:27:23 +08:00
SXP-Simon e06605de4c [debug] 添加更加详细的日志 2025-10-10 15:52:03 +08:00
SXP-Simon b8a25a0c58 [fix] 确保msg是字典类型,避免'str' object has no attribute 'get'错误 2025-10-10 14:28:24 +08:00
SXP-Simon eadfe00e93 [fix] 更改错误的方法,增加浏览器开启选项 2025-10-09 20:47:48 +08:00
SXP-Simon af27768e50 [fix] 兼容 linux 的 pdf 生成情况 2025-10-09 20:31:30 +08:00
SXP-Simon 9fc9967306 [fix] 日志 2025-10-09 20:18:37 +08:00
SXP-Simon 6fe5c7af97 [fix] (code review) 2025-10-09 17:15:18 +08:00
SXP-Simon 049609203e [fix] code quality 2025-10-09 17:05:42 +08:00