SXP-Simon
|
7e70a6532c
|
[v4.6.2] 新增图片报告重试机制并优化调度稳定性
|
2026-01-17 23:54:39 +08:00 |
|
SXP-Simon
|
e78c827857
|
feat(RetryManager): 新增图片报告重试机制并优化调度稳定性
新增重试管理器 (src/scheduler/retry.py):
实现基于内存的延迟队列与死信队列,支持指数退避 + 随机抖动 (Jitter) 重试策略。
增强容错性:处理渲染服务宕机、网络超时及 Bot API 逻辑错误 (如 retcode=1200)。
兼容性优化:使用 call_action 通用接口适配 OneBot v11。
生命周期管理:增加自动启动保护,防止任务丢失。
|
2026-01-17 23:39:17 +08:00 |
|
SXP-Simon
|
7450d76178
|
fix(pre-commit): code quality
|
2026-01-16 23:59:45 +08:00 |
|
SXP-Simon
|
b1c889343c
|
fix(PDFInstaller): linux 环境下的安装 PDF 命令修复
|
2026-01-16 20:30:58 +08:00 |
|
SXP-Simon
|
9ee0662484
|
fix(is_plugin_enabled): 检查该平台是否包含该插件的配置文件 plugin_set,通过 AstrBot 配置文件来判断账号启用插件
解决关联 issue
`[Bug] 定时分析会直接检测某个群所有支持的平台,而不会检查该平台是否包含该插件的配置文件 #72`
|
2026-01-16 18:31:03 +08:00 |
|
SXP-Simon
|
5b72997a28
|
refactor: 全局变量重构,受保护成员访问修复,同步 I/O 操作异步化
|
2026-01-06 23:07:03 +08:00 |
|
SXP-Simon
|
4ca8180933
|
[v4.4.0] 修复可能的图片生成成功但是发送失败的情况,增加 Fallback 的 BASE64 编码的图片发送方式 @Heximiao
|
2025-12-20 21:10:56 +08:00 |
|
SXP-Simon
|
c216ccb009
|
fix(auto_scheduler): 设置请求超时和响应大小限制,避免卡死或下载过大,增加过程的健壮性
|
2025-12-20 21:01:55 +08:00 |
|
liuchunyu44
|
926ec65b59
|
修改发送图片的逻辑
|
2025-12-20 20:42:10 +08:00 |
|
Helian Nuits
|
03c35f49d0
|
Fix(bot manager): _get_platform_id_for_group 是一个异步方法(async def),但在 main.py 中调用时忘记加 await (#54)
* fix(bot-manager): 正确处理实例获取
* fix(import); AiocqhttpAdapter 导入
* fix: 通过 meta 实现 aiocqhttp 判断
* fix(_get_platform_id_for_group): _get_platform_id_for_group 是一个异步方法(async def),但在 main.py 中调用时忘记加 await 了,导致它返回了一个协程对象而不是字符串 ID
* fix(pre-commit)
|
2025-11-25 23:37:13 +08:00 |
|
Helian Nuits
|
e5320969ee
|
feat(auto_scheduler): 添加自动调度器,使用信号量(Semaphore)并发限制和弱引用字典(WeakValueDictionary)优化锁管理;群黑白名单机制。 (#50)
* feat(auto_scheduler): 添加自动调度器,使用信号量(Semaphore)并发限制和弱引用字典(WeakValueDictionary)优化锁管理。
* feat(auto_scheduler): 群黑白名单机制
* feat(自动分析最大并发数): 可配置项添加信号量自定义控制
* debug(获取群)
* fix(config)
* fix(pre-commit): cr
|
2025-11-23 13:26:09 +08:00 |
|
SXP-Simon
|
14377b278a
|
pre-commit
|
2025-11-21 21:09:05 +08:00 |
|
SXP-Simon
|
49bda3231d
|
fix(分析发送处理正确匹配): 正确处理群聊分析文件的发送匹配,与消息获取时的逻辑一致
|
2025-11-18 20:45:22 +08:00 |
|
SXP-Simon
|
d18f45aaec
|
fix(分析发送处理正确匹配): 正确处理群聊分析文件的发送匹配,与消息获取时的逻辑一致
|
2025-11-18 20:45:22 +08:00 |
|
SXP-Simon
|
12d0b5061c
|
fix(多消息平台): 获取所有可用的平台,依次尝试获取消息
|
2025-11-18 20:45:22 +08:00 |
|
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
|
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
|
eb16f78b15
|
feat(multi-qq-platforms): 尝试适配多个适配器实例,支持填入多个QQ bot账号 (#42)
|
2025-11-18 00:17:04 +08:00 |
|
xiaoxi68
|
4f509ae5f9
|
ruff
|
2025-11-09 20:28:51 +08:00 |
|
SXP-Simon
|
78dd2e4e68
|
[fix] (自动分析处理) 纠正分析日期处理情况
#18
|
2025-10-01 23:53:43 +08:00 |
|
SXP-Simon
|
afe569d1e3
|
[fix] (umo) 纠正自动分析器中传递的 umo
|
2025-09-23 23:49:59 +08:00 |
|
SXP-Simon
|
9602b31014
|
[fix] (debug) 纠正日志等级情况,纠正不能适配低版本的的 async timeout 方法
|
2025-09-23 23:26:12 +08:00 |
|
SXP-Simon
|
29921ae5ae
|
[feat] (自动分析器的群聊并发处理) 将原本的串行分析逻辑调整为并行任务
|
2025-09-23 22:36:23 +08:00 |
|
SXP-Simon
|
de12e8253a
|
[fix] (LLM 提供商) 传递 unified_msg_origin 以获取正确的 LLM 提供商
|
2025-09-16 12:08:56 +08:00 |
|
SXP-Simon
|
9443953c94
|
[fix] 将 AutoScheduler 中残留的 self.bot_instance 全部改为通过 BotManager 获取实例
报错 “‘AutoScheduler’ object has no attribute ‘bot_instance’” 的原因是:我们在解耦后移除了 AutoScheduler 上的 bot_instance 成员,但 AutoScheduler 中发送消息的方法仍然使用了 self.bot_instance。
|
2025-09-15 22:17:16 +08:00 |
|
SXP-Simon
|
53a21f7642
|
[fix] (bot-instance) 尝试采用手动配置QQ号的方式,用于定时自动分析
|
2025-09-15 22:05:52 +08:00 |
|
SXP-Simon
|
8f7af1ed81
|
[fix] (scheduler\auto_scheduler) 消除了重复代码,增强错误处理
|
2025-09-14 22:23:40 +08:00 |
|
回归天空
|
84c663df44
|
[v1.7.0] (解耦化) 优化项目结构,修复部分提示内容
|
2025-09-02 23:30:37 +08:00 |
|