RecallGuard - 撤回守卫 (v8.2 稳定版)
一个为 AstrBot 和 aiocqhttp 平台设计的、功能全面且高度可配置的防撤回插件。旨在捕获并转发指定用户或群聊中撤回的消息,确保每一个重要信息都不会丢失。
✨ 主要功能
多维监控:
- 用户监控: 可以指定一个或多个用户的QQ号(白名单),插件将全局监控这些用户的消息。
- 群聊监控: 可以指定一个或多个群聊,插件将监控群内所有成员的消息。
- 用户豁免: 可以设置用户黑名单,这些用户的消息将永远不会被记录。
- 优先级处理: 监控逻辑按
黑名单 -> 白名单用户 -> 监控群聊的顺序执行,避免重复处理。
灵活转发:
- 多种格式: 可在 “合并转发”(美观,将提示与内容整合为一条)和 “逐条发送”(默认,兼容性最好)之间自由选择。
- 丰富提示: 转发时附带的提示语完全支持自定义,并可通过占位符
{user_name},{user_id},{group_name},{group_id}显示撤回者和来源群聊的详细信息。
健壮的缓存管理:
- 自动清理: 内置定时任务,会自动清理过期的缓存,避免长期占用服务器磁盘空间。
- 体积控制: 可设置缓存目录的最大体积(MB),当超出阈值时,会自动清理最旧的文件,防止磁盘被占满。
⚙️ 配置
配置项详解
监控类型设置:
监控普通文本消息: 开关对文本消息的监控。监控图片消息: 开关对图片消息的监控。监控音频(语音)消息: 开关对语音消息的监控。
指定用户监控与黑名单:
要全局监控的用户QQ号列表 (白名单): 填写您希望全局监控的QQ账号。绝不监控的用户QQ号列表 (黑名单): 黑名单中的用户消息将被完全忽略,优先级最高。
指定群聊监控(全员):
开启群聊全员监控: 总开关。要进行全员监控的群聊会话ID列表: 填写群聊的会话ID (格式:aiocqhttp:group:123456)。
转发设置:
撤回消息的转发格式:sequential(默认): 逐条发送,兼容性最好。merged: 合并转发,更美观。注意:Docker用户必须正确配置共享目录才能使用此模式。
撤回消息的统一转发目标会话ID列表: 添加用于接收撤回消息的群聊或私聊会话ID。转发消息时附带的提示文字: 自定义提示信息。
缓存清理设置:
缓存生命周期(秒): 缓存文件和记录的保留时间。清理任务运行间隔(秒): 后台清理任务的执行频率。缓存目录最大体积 (MB): 设置缓存文件夹的大小上限,0为不限制。
⚠️ Docker 用户重要说明
当 AstrBot 和 QQ 协议端(如 NapCat)都通过 Docker 部署时,由于容器间的文件系统是隔离的,本插件必须通过 Docker 的共享数据卷才能正常工作(特别是使用“合并转发”模式时)。
请参考插件附带的 更改路径指南.txt 文件来完成您的 Docker 配置。该指南提供了创建共享目录和修改 docker-compose.yml 文件的详细步骤。