转发服务
转发服务实现跨平台、跨群组的消息自动转发,支持脚本处理、关键词过滤和联动撤回。
核心功能
| 功能 | 说明 |
|---|---|
| 跨平台转发 | QQ 消息转发到 Web、不同 QQ 群之间互转等 |
| 脚本处理 | 转发前后可执行脚本,对消息进行过滤、替换、转链等 |
| 关键词过滤 | 支持黑名单和白名单模式 |
| 联动撤回 | 原消息被撤回时,转发的消息自动撤回 |
| 指定用户 | 可限定只转发特定用户的消息 |
| 多目标转发 | 一条规则可同时转发到多个目标 |
转发规则
每条转发规则包含:
| 字段 | 说明 |
|---|---|
| 名称 | 规则名称 |
| 来源平台 | 消息来源平台(如 qq、web) |
| 来源 ID | 来源群组 ID 或用户 ID |
| 来源用户 | 可选,限定只转发指定用户的消息 |
| 转发目标 | 一个或多个目标(平台 + 目标 ID) |
| 监听脚本 | 可选,对来源消息进行处理 |
| 转发脚本 | 可选,对转发内容进行处理 |
配置
在管理后台 → 转发管理中创建和管理转发规则:
- 点击「添加规则」
- 填写规则名称
- 选择来源平台和来源 ID
- 添加转发目标(平台 + 目标类型 + 目标 ID)
- 可选:配置监听脚本和转发脚本
- 启用规则
脚本系统
脚本用于在消息转发过程中进行处理,分为监听脚本和转发脚本:
- 监听脚本:对来源消息进行处理,决定是否转发
- 转发脚本:对转发到每个目标的内容进行定制
内置脚本类型
| 类型 | 说明 | 配置示例 |
|---|---|---|
keyword_filter | 关键词黑名单,命中则不转发 | ["广告", "推广"] |
keyword_whitelist | 关键词白名单,不命中则不转发 | ["重要", "通知"] |
keyword_replace | 关键词替换 | {"旧词": "新词"} |
regex_replace | 正则替换 | {"pattern": "\\d{11}", "replace": "***"} |
add_prefix | 添加前缀 | "[转发] " |
add_suffix | 添加后缀 | " — 来自QQ群" |
rebate | 返利转链 | 自动将电商链接转为推广链接 |
custom | 自定义表达式 | Expr 表达式语法 |
call_component | 调用组件 | 调用已注册的插件或远程组件 |
脚本配置示例
监听脚本 - 过滤广告消息:
json
{
"type": "keyword_filter",
"enabled": true,
"config": "[\"广告\", \"推广\", \"优惠\"]"
}转发脚本 - 添加来源标识:
json
{
"type": "add_prefix",
"enabled": true,
"config": "[QQ群] "
}转发脚本 - 返利转链:
json
{
"type": "rebate",
"enabled": true,
"config": "{\"platform\": \"taobao\"}"
}转发脚本 - 正则脱敏手机号:
json
{
"type": "regex_replace",
"enabled": true,
"config": "{\"pattern\": \"\\\\d{11}\", \"replace\": \"***\"}"
}脚本链
可以配置多个脚本按顺序执行,形成处理链:
- 监听脚本依次执行,任一脚本返回"中止"则不转发
- 转发脚本依次执行,对内容逐步修改后发送
标记为 async 的脚本会在后台异步执行,不阻塞主流程。
联动撤回
当原消息在 5 分钟内被撤回时,转发的消息也会自动撤回。此功能无需额外配置,自动生效。