Soulter
|
cb04dd2b83
|
chore: remove unnecessary codes
|
2025-06-27 14:59:08 +08:00 |
|
Soulter
|
8c7cf51958
|
chore: code format
|
2025-06-27 14:46:23 +08:00 |
|
回归天空
|
cebcd6925a
|
[fix] (discord_platform_adapter) 解决了 “Discord 平台无法优雅重载” 的 bug
#### 问题现象(AI总结)
- 在通过 Web 面板或配置变更热重载 Discord 平台时,适配器的 terminate() 方法会被调用,但经常出现“卡死”或长时间无响应,导致 Discord 平台无法优雅重载。
- 日志显示停留在“正在清理已注册的斜杠指令...”等步骤,甚至出现超时或异常。
#### 2. 原因分析
- 适配器的 terminate() 方法中,涉及多个异步操作(如取消 polling 任务、清理斜杠指令、关闭客户端)。
- 某些 await 操作(如 await self.client.sync_commands() 或 await self.client.close())在网络异常、事件循环被取消等情况下,可能会阻塞或抛出 CancelledError,导致整个重载流程卡住。
- 之前的实现没有对这些 await 操作加超时保护,也没有分步日志,难以定位具体卡点。
#### 3. 修复措施
- 分步日志:在 terminate() 的每个关键步骤前后都加了详细日志,便于定位卡点。
- 超时保护:对所有关键 await 操作(如 polling 任务取消、指令清理、客户端关闭)都加了 asyncio.wait_for(..., timeout=10),防止无限阻塞。
- 健壮性提升:先 cancel polling 任务,再清理指令,最后关闭客户端。每一步都捕获异常并输出日志,保证即使某一步失败也能继续后续清理。
- 避免重复终止:移除了 run() 方法中的 finally: await self.terminate(),只允许外部统一调度,防止重复调用导致资源冲突或日志重复。
#### 4. 修复效果
- 现在 Discord 平台适配器在热重载或终止时,能优雅地依次完成所有清理步骤,不会因某一步阻塞导致整个流程卡死。
|
2025-06-25 11:46:49 +08:00 |
|
回归天空
|
e7b4357fc7
|
[feat] (discord_platform_adapter) 增加了对机器人 Role Mention 方法的响应
|
2025-06-25 11:41:55 +08:00 |
|
Soulter
|
7b25495463
|
style: code quality
|
2025-06-22 22:11:28 +08:00 |
|
HakimYu
|
3d4b651c1f
|
fix: 修复 send_by_session 的 message_obj 为 None 的错误
fix: 修复 determine_messagee_type 会获取到服务器id的错误,并拆分成两个函数
|
2025-06-22 20:33:26 +08:00 |
|
HakimYu
|
ac4f3d8907
|
feat: 添加 Discord 斜杠指令注册功能及相关配置项
feat: 添加 Activity 设置项
fix: 修复 At Reply 未处理的问题
|
2025-06-22 16:29:02 +08:00 |
|
Soulter
|
5c0c9f687e
|
style: code quality
|
2025-06-21 23:52:17 +08:00 |
|
Soulter
|
99e47540d5
|
styles: code quality
|
2025-06-21 23:33:47 +08:00 |
|
Soulter
|
8e1885ffeb
|
Merge branch 'master' into master
|
2025-06-21 23:21:37 +08:00 |
|
Soulter
|
1057b4bc35
|
style: code quality
|
2025-06-21 23:12:50 +08:00 |
|
Soulter
|
efc0116595
|
feat: Verify Slack request signature using HMAC
|
2025-06-21 23:07:34 +08:00 |
|
lxfight
|
75a2803710
|
fix: 清空交互事件的 message_str,确保仅专门指令处理器响应;优化图片处理逻辑,支持多种图片来源
- 修复了@激活机器人时,指令无法正确处理的问题
- 修复了base64 图片无法发送的问题
注意:本次提交的代码功能还需要针对全部功能进行一次系统完整的测试,计划与6月22日下午完成。
|
2025-06-21 20:12:38 +08:00 |
|
Soulter
|
fb3169faa4
|
feat: add platform adapter support for Slack
|
2025-06-21 18:33:48 +08:00 |
|
lxfight
|
b9fab74edc
|
feat: 拆分Discord 适配器的部分代码,并处理一些小的问题。
- 基于最小权限原则,修改了 Bot 申请的权限范围
- 拆分了代码,使得文件结构更加清晰
|
2025-06-20 21:43:23 +08:00 |
|
lxfight
|
d0b10b9195
|
feat: 添加 Discord 平台适配器及相关组件,支持 Discord Bot 功能
- 添加了一个新的依赖 py-cord[speed]
- 添加了针对 Discord 平台的 Discord Bot 适配器
|
2025-06-20 21:22:04 +08:00 |
|
Soulter
|
2c47abea95
|
fix: 修复 WeChatPadPro 下,开启了会话隔离后,无法发送群聊消息的问题
fixes: #1766
|
2025-06-16 23:36:11 +08:00 |
|
Soulter
|
85aa28d724
|
perf: print traceback
|
2025-06-16 23:27:29 +08:00 |
|
Soulter
|
53a3736b04
|
fix: 修复可能的类型错误
fixes: #1778
|
2025-06-16 23:26:22 +08:00 |
|
Soulter
|
86ba3c230e
|
perf: 弱化 WeChatPadPro 的 WS 连接提示
fixes: #1779
|
2025-06-16 23:21:53 +08:00 |
|
Soulter
|
8d21126bd6
|
fix: 修复 WeChatPadPro 会话隔离模式下,会话 ID 显示为自身ID 的问题
|
2025-06-16 23:18:45 +08:00 |
|
Soulter
|
74ded91976
|
fix: 修复 WeChatPadPro 过期后无法正常的重新登录的问题。
|
2025-06-16 23:07:10 +08:00 |
|
Zhalslar
|
c7891385ca
|
Update dingtalk_event.py
|
2025-06-14 21:44:37 +08:00 |
|
Zhalslar
|
2059ddcadf
|
Update dingtalk_event.py
|
2025-06-14 21:39:33 +08:00 |
|
Zhalslar
|
ba1b68df20
|
Update dingtalk_event.py
|
2025-06-14 21:23:45 +08:00 |
|
Soulter
|
a26b494f7f
|
feat: 微信客服支持语音的收发
fixes: #1794
|
2025-06-12 10:57:16 -04:00 |
|
Soulter
|
c85dbb2347
|
fix: 修复某些情况下,会话控制无效的问题
|
2025-06-10 22:26:11 +08:00 |
|
Seayon
|
19022d67f8
|
Merge branch 'master' into fix-wechat-at-message-parsing
# Conflicts:
# astrbot/core/platform/sources/wechatpadpro/wechatpadpro_adapter.py
|
2025-06-09 09:30:09 +08:00 |
|
Seayon
|
a9dbff756b
|
✨ feat(wechatpadpro): 增强群聊消息中的@消息处理逻辑
添加对群聊消息中@机器人场景的精确识别和处理,提升了消息解析的准确性。
支持多种@格式的检测,包括 msg_source 和 push_content 的判断。
|
2025-06-06 16:53:31 +08:00 |
|
zhx
|
0d5825bda9
|
feat: wechatpadpro 添加语音接收和发送的适配
|
2025-06-06 10:30:06 +08:00 |
|
zhx
|
60ca1efbda
|
feat: 添加wechatpadpro 消息类型47 49的适配
|
2025-06-04 14:36:16 +08:00 |
|
Soulter
|
51666464b9
|
Merge pull request #1667 from AstrBotDevs/fix-priority
Fix: plugin priority was not properly applied
|
2025-05-28 15:34:50 +08:00 |
|
Soulter
|
e896c18644
|
perf: video
|
2025-05-28 15:12:21 +08:00 |
|
Soulter
|
1e99797df8
|
refactor: improve message segment handle
|
2025-05-28 12:53:00 +08:00 |
|
Soulter
|
52a4c986a8
|
fix: update star_handlers_registry iteration in TelegramPlatformAdapter
|
2025-05-28 00:31:04 +08:00 |
|
Soulter
|
c501728204
|
fix: plugin priority
fixes: #1662
|
2025-05-28 00:23:02 +08:00 |
|
Soulter
|
a1cd5c53a9
|
chore: add comments
|
2025-05-27 23:38:35 +08:00 |
|
Raven95676
|
3deb6d3ab3
|
fix: clean code
|
2025-05-27 20:52:40 +08:00 |
|
Raven95676
|
af34cdd5d2
|
fix(telegram): 支持长消息分段发送并优化消息编辑逻辑
|
2025-05-27 20:15:16 +08:00 |
|
Soulter
|
c3ef57cc32
|
Merge pull request #1588 from Zhenyi-Wang/feat/extend-wechatpadpro-for-timetask
feat: wechatpadpro对接获取联系人信息的2个接口
|
2025-05-23 17:02:54 +08:00 |
|
Soulter
|
7bb4ca5a14
|
perf: code quality
|
2025-05-23 17:01:57 +08:00 |
|
Soulter
|
66dd4e28ad
|
Merge pull request #1604 from Siztas/fix-refresh-device-when-login-WeChatPadPro
fix:修复了WeChatPadPro在重新登录时为新设备的问题,延长初始化Auth_Key有效期至365天
|
2025-05-20 13:57:40 +08:00 |
|
Soulter
|
d09b70b295
|
fix: 修复微信公众号(个人认证)下无法回复消息的问题
|
2025-05-20 01:38:13 -04:00 |
|
MiSeya
|
205180387a
|
Fix:修复了WeChatPadPro在重新登录时为新设备的问题,延长初始化Auth_Key有效期至365天
|
2025-05-19 21:12:09 +08:00 |
|
Zhenyi Wang
|
f7458572ed
|
feat: wechatpadpro对接获取联系人信息接口
|
2025-05-17 15:31:12 +08:00 |
|
Soulter
|
cb02dfe1a4
|
perf: 优化超时时间
|
2025-05-16 20:00:14 +08:00 |
|
Soulter
|
b50739e1af
|
perf: 优化登录超时时间
|
2025-05-16 19:33:37 +08:00 |
|
Soulter
|
b2502746f0
|
perf: QQ 下,屏蔽 QQ 管家的消息事件
|
2025-05-16 17:49:17 +08:00 |
|
Soulter
|
bbec701223
|
Merge pull request #1569 from xiamuceer-j/master
适配一个个人微信适配器——wechatpadpro
|
2025-05-16 17:29:57 +08:00 |
|
Soulter
|
b29d14e600
|
perf: 优化适配器终止流程
|
2025-05-16 17:29:33 +08:00 |
|