GUGUblack插件
插件简介
GUGUblack插件是一个供用户黑名单和群聊黑名单功能。该插件会在其他插件之前拦截消息,确保黑名单中的用户和群聊无法与机器人进行任何交互。并且会拦截 AstrBot 的内部错误信息,向用户返回统一提示。
主要功能
👤 用户黑名单
- 拦截指定用户的所有消息
- 包括私聊和群聊中的消息
- 即使用户在非黑名单群聊中@机器人也会被拦截
👥 群聊黑名单
- 拦截指定群聊的所有消息
- 群聊内所有用户的消息都会被拦截
- 包括群聊中的@消息
📊 数据持久化
- 黑名单数据自动保存到JSON文件
- 支持插件重启后数据恢复
- 数据文件位置:
data/plugin_data/gugus/blacklist/
🚫 错误信息拦截
- 在发送消息前的阶段拦截 AstrBot 错误输出(如 LLM 请求失败、插件调用异常等)
- 用户仅会看到统一提示(可配置):默认
⚠️ 系统繁忙,已拦截内部错误信息,请稍后重试。 - 详细错误仍记录在服务端日志中,便于排查
命令系统
基本命令格式
/blacklist <子命令> [参数]
可用命令
1. 添加到黑名单
/blacklist add <类型> <ID>
- 类型:
user(用户) 或group(群聊) - 示例:
/blacklist add user 123456789- 将用户123456789加入黑名单/blacklist add group 987654321- 将群聊987654321加入黑名单
2. 从黑名单移除
/blacklist remove <类型> <ID>
- 示例:
/blacklist remove user 123456789- 将用户123456789从黑名单移除/blacklist remove group 987654321- 将群聊987654321从黑名单移除
3. 查看黑名单
/blacklist list [类型]
- 类型:
user(用户) 或group(群聊) 或all(全部) - 示例:
/blacklist list user- 查看用户黑名单/blacklist list group- 查看群聊黑名单/blacklist list all- 查看所有黑名单
4. 清空黑名单
/blacklist clear [类型]
- 类型:
user(用户) 或group(群聊) 或all(全部) - 示例:
/blacklist clear user- 清空用户黑名单/blacklist clear group- 清空群聊黑名单/blacklist clear all- 清空所有黑名单
5. 显示帮助
/blacklist help
日志示例
[INFO] [GUGUblack插件] 🚀 插件已初始化,用户黑名单: 2 个,群聊黑名单: 1 个
[INFO] [GUGUblack插件] 📥 已加载用户黑名单: 2 个用户
[INFO] [GUGUblack插件] 🚫 拦截黑名单用户消息: 123456789
[INFO] [GUGUblack插件] 🛑 已拦截黑名单消息,停止事件传播
安装和配置
1. 安装插件
将插件文件夹复制到AstrBot的插件目录中
2. 重启AstrBot
重启AstrBot以加载新插件
3. 验证安装
发送 /blacklist help 查看帮助信息
4. 添加黑名单
使用命令添加需要拦截的用户或群聊
技术支持
如有问题或建议,请联系插件作者。