Skip to content

消息转发 ​

这篇帮你做什么:把 当前群 里符合条件的新消息,自动转发到另一个群或某个 QQ 私聊。入口:侧边栏 → 群设置 → 消息转发。

适用与不适用 ​

你想做的事是否适合本页原因
把一个群的消息同步到另一个群适合来源固定为当前群,目标可配多个
把群消息转给某个管理员私聊适合目标类型选私聊并填对方 QQ 号
只转发图片、文件或合并转发适合消息类型可多选
在转发内容前后加自定义模板文字不适合本页没有“转发模板”,只复制来源消息
让消息匿名化后再转发不适合转发由机器人账号发出,但内容本身不会自动脱敏
回答成员问题或按关键词处罚不适合用问答或监控方案

作用范围与工作方式 ​

  • 规则属于顶部所选的群:消息来源固定是当前群,规则里要填的是 转发到哪。换群后看到的是另一个群的独立规则。
  • 一条规则可以有多个目标;每个目标分别发送。某个目标失败不保证其他目标回滚,也不代表整条规则“全部成功”。
  • 转发是“复制一份发过去”,原消息不受影响;但内容会离开原群,进入目标群或私聊。目标成员能看到转发内容,这不是匿名化,也不是隐私过滤。
  • 转发消息由负责目标会话的机器人账号发出,不会保留原发送者身份;接收者看到的是机器人发送的内容。需要保留来源信息时,只能依赖消息原文或另行说明。
  • 转发规则在消息路由中属于低优先级:同一条消息若先被指令或监控规则受理,转发可能不执行;同一转发规则展开的多个目标是例外,会作为一次扇出保留。
  • 凭据类正文有运行时拒绝保护,但不要把自动保护当成脱敏承诺;不确定内容是否敏感时不要转发。

添加一条转发规则 ​

  1. 点右上角 添加转发规则。
  2. 填写:
    • 规则名称(必填,2–50 字):给自己看的备注。
    • 启用状态:默认开启;关闭后该规则不生效。
    • 消息类型(至少勾一种):文本 / 图片 / 表情 / 语音 / 视频 / 文件 / JSON / 合并转发。只有包含所选类型的消息才会被这条规则处理。
    • 转发目标(至少加一个):每行填 目标类型(群组 / 私聊;“频道”当前不可选)和 目标 ID——群组填对方 群号,私聊填对方 QQ 号。名称为可选备注,只用于显示。可添加多个目标,命中时逐个转发。
    • 高级过滤条件(可选,展开“高级过滤条件”面板添加):
      • 关键词过滤:包含 / 不包含 / 等于 / 不等于某个关键词(一个过滤行只填一个词,多个词就加多行),不区分大小写。
      • 用户过滤:填 QQ 号列表(逗号分隔);“包含”=只转发这些人的消息,“不包含”=不转发这些人的消息。比较的是发送者用户 ID,不是昵称。
      • 时间过滤:格式“时:分-时:分”(如 09:00-18:00),只在该时段转发;支持跨天(如 22:00-06:00 表示晚 10 点到次日 6 点),按消息事件时间和服务器本地时区计算,起止时刻都包含。
      • 每条过滤都有独立开关;多条过滤需同时满足(并且关系)才转发。条件与过滤类型不匹配、格式非法时,该条件按不匹配处理,消息不会被转发。
  3. 点 保存,提示“添加转发规则成功”。
  4. 怎样确认成功:列表出现该规则,启用状态为“启用”,转发目标、消息类型显示正确。保存成功只表示规则已写入,不表示已经转发过。

设置项参考 ​

字段含义与取值默认作用与限制
规则名称维护备注无2–50 字,不参与匹配
启用状态开 / 关开关闭后保留规则但不转发
消息类型文本/图片/表情/语音/视频/文件/JSON/合并转发无至少一种;只匹配包含所选类型的消息
转发目标类型 + 目标 ID + 可选名称无群组填群号,私聊填 QQ 号;频道暂不可用
关键词过滤contains/notContains/equals/notEquals条级开关只比较文本内容,不区分大小写
用户过滤contains/notContains + QQ 号列表条级开关比较发送者用户 ID;“包含”是白名单语义
时间过滤between + 时:分-时:分条级开关支持跨天,按服务器本地时区

转发内容与变量 ​

本页没有“转发文案模板”,转发的是来源消息本身:

  • 纯文本路径:如果原消息文本本身含有 {{user_id}}、{user_id}、{{group_id}} 或 {group_id},发送时会分别替换为来源发送者和来源群。带点写法 {{.user_id}}、{{.group_id}} 不会替换。
  • 图片、文件、合并转发等结构化内容:按原消息段转发,不做变量替换。
  • 因此不要把转发当成模板功能,也不要用变量来“补上来源信息”;是否出现替换取决于原消息里是否恰好写了上述非点号形式。发送前请按原消息内容核对。

这一行为与问答、群提示使用的 {{.变量名}} 模板不同,完整对照见变量使用指南。

回环、身份与重试边界 ​

  • 没有独立的“防回环”开关。是否形成回环取决于 OneBot 实现端是否把机器人自己发出的转发消息再次作为群消息上报,以及目标群是否也配置了会命中它的转发规则。不要配置 A→B 与 B→A 的双向转发,也不要把目标填成来源群本身;先从单向、隔离测试群开始。
  • 身份是机器人账号。目标群成员看到的是机器人转发的内容,不是原发送者重新发言;平台侧的消息 ID、发送者资料和已读状态都属于新消息。
  • 不会自动重试。发送失败、超时或结果未知时,本页不会显示投递结果,也不会替你补发;连续重发可能造成重复消息。结果不明时先查“日志中心 → 调试 / 出站结果”(短期进程内 Trace)和“应用日志”,不要直接重复派发。
  • 审计记录中的“已受理/queued”不等于平台发送成功;最终结果以出站记录和接收群实际内容为准。

正例:只把 A 群文本和图片单向转发到测试 B 群,目标填 B 群群号,过滤条件先留空,保存后在 A 群发一条普通测试消息,再到 B 群确认内容、发送者身份和是否只出现一次。反例:同时配置 A→B 和 B→A,或在来源群里用 {{.user_id}} 期待自动标注发送者——前者可能形成回环,后者不会替换。

日常管理 ​

  • 行内 操作 菜单:编辑、查看、禁用/启用、删除。禁用后规则保留但不转发。
  • 列表按创建时间倒序,支持分页。
  • 本页没有导入/导出;多条规则需要逐条维护,修改前记录原目标与过滤条件。

没成功先检查什么 ​

  • 该转发的没转:规则是否启用 → 消息类型是否涵盖(比如发了图片但没勾图片)→ 过滤条件是否把它挡掉了(先核对条件;如需放宽,只在获准的隔离测试群尝试,勿对真实消息直接取消过滤)→ 目标 ID 填的是对方的群号/QQ 号,不是本群。
  • 同一条消息被其他功能先处理:检查是否命中指令、监控或问答;转发不是最高优先级。
  • 规则命中了但目标没收到:匹配成功不代表发送成功。机器人不在目标群、发私信失败、目标路由不可用等发送环节的失败不会显示在本页,需要结合结果判断与排障和应用日志排查。
  • 某条规则完全不工作:老数据可能存在“消息类型为空”的规则,这类规则当前会被直接跳过不执行;重新编辑勾上消息类型即可。
  • 目标群出现重复消息:先检查是否配置了双向转发、同一规则多个相同目标,或实现端把机器人消息再次上报;不要靠反复删除重建规则试运气。

关闭或改回 ​

  • 临时停:操作 → 禁用。
  • 彻底停:操作 → 删除。
  • 停用或删除只阻止后续转发;已经发到目标群或私聊的内容不能靠关闭规则撤回。若内容敏感,应按目标平台能力另行处理并要求接收方删除。

和其他页面的关系 ​

  • 需要“看到谁触发了什么规则”的监控场景用群聊监控,本页只管转发。
  • 转发不是问答:需要根据问题回复固定答案时用问答。
  • 配置作用范围和“为什么一条消息不会触发所有功能”见群管家怎样工作。
  • 变量语法差异见变量使用指南。