Forward LogoForwardMsg

消息格式

使用文本、变量、页眉和页脚来构建最终转发消息。

通过消息格式,您可以决定复制的消息如何显示:添加自己的文本、页眉或页脚,以及原作者姓名等详细信息。

查找位置
自动化编辑器 → 点击您监控的来源聊天/频道以打开其设置,或点击全局设置 → 格式化 → 消息格式

从默认格式开始

模板将您编写的文本与变量结合起来。变量是 @Author 和 @Message 之类的占位符,每当收到消息时,系统都会填入相应的内容。

新自动化默认使用:

@Author: @Message

这表示先显示发送者名称,再显示原始消息文本。模板本身不会添加页眉或页脚,也不会改写原文。

如果您想替换或删除消息内部的单词、链接或其他内容,请使用替换或删除文本。消息格式决定最终布局;替换规则则会更改匹配的内容。

在 @Message 前写入静态文本可作为页眉,在它后面写入则可作为页脚。收到消息时,ForwardMsg 会将每个变量替换为来源消息中的对应值。

例如,要将来源服务器添加为页眉,请编写:

[复制自 @Server]
@Author: @Message

要添加页脚,请编写:

@Author: @Message

— 社区团队转发

您可以同时使用两者、添加换行,并按照接收者需要安排变量。以名为 Community 的 Discord 来源为例,Maya 的消息套用以上两个示例后会变成:

[复制自 Community]
Maya: 新版已发布。

— 社区团队转发

选择格式的适用范围

如果所有受监控的来源聊天都应使用相同格式,请在全局设置中保存模板。要为某个来源聊天/频道/主题使用不同格式,请点击左侧列表中的项目以打开其设置,然后保存专用模板。该模板会替换该来源的共享模板。

有关共享默认值和单个聊天例外的说明,请参阅设置的工作方式。

所有来源都可用的变量

变量是占位符,来源消息到达时 ForwardMsg 会将其替换为对应内容。每个变量都以 @ 开头;您可以将它们与普通文本组合来构建消息布局。

@Message — 原始消息文本

经过替换或删除规则处理后的来源消息文本。如果不包含 @Message,结果就只会包含其他变量和静态文本。模板控制的是布局,不会改写此变量中的文本。

@Author — 发送者显示名称

发送消息者的显示名称。如果目的地读者需要知道原内容的作者,请使用此变量。

@AuthorID — 发送者标识符

可用时,表示原发送者的账号 ID。即使对方的可见名称发生变化,您仍可通过此 ID 准确识别发送者。

@MsgId — 来源消息标识符

原始消息的 ID。需要让副本与原始消息相互对应时,可添加此变量。

@Day、@Month、@Year、@Hour、@Minute 和 @Second — 来源时间戳

这些变量表示来源消息在自动化配置时区中的日期和时间。您可以与普通文本组合使用,例如 @Year-@Month-@Day @Hour:@Minute。

Discord 变量

@Server 和 @ServerID — Discord 服务器

对于 Discord,@Server 表示服务器名称,@ServerID 表示服务器 ID。在私信中,服务器值为 DM。

@Channel 和 @ChannelID — Discord 频道

对于 Discord,@Channel 表示频道名称,@ChannelID 表示该频道的 ID。

@Username、@Nick 和 @AuthorImageURL — Discord 作者信息

@Username 表示 Discord 用户名;如果有服务器昵称,@Nick 表示该昵称;@AuthorImageURL 表示来源作者使用的头像网址。

如果您希望目的地读者打开原始 Discord 消息,可使用此变量;前提是他们也有权访问该消息。

Discord 模板示例

[@Server · #@Channel]
@Author (@Username)
@Message

来源:@MsgUrl

Telegram 变量

@Server 和 @Chat — Telegram 聊天名称

对于 Telegram,@Server 和 @Chat 都显示原聊天、频道或群组的名称。对应的 ID 变量 @ServerID 和 @ChatID 则显示 Telegram 聊天 ID。

@Channel 和 @Topic — Telegram 当前行为

对于 Telegram,@Channel 和 @Topic 当前都包含来源聊天名称,而不是单独的主题名称。来源消息属于某个主题时,@ChannelID 和 @TopicID 可能会包含主题 ID。

@Username — Telegram 用户名

发送者的 Telegram 用户名(如果账号设置了用户名)。如果发送者没有公开用户名,该值可能为空。

只要 Telegram 支持,ForwardMsg 就会创建来源消息链接。目的地读者仍需拥有自己的访问权限才能打开原始消息。

Telegram 模板示例

[@Chat]
@Author (@Username)
@Message

原消息:@MsgUrl

WhatsApp 变量

@Server 和 @Chat — WhatsApp 聊天名称

对于 WhatsApp,@Server 和 @Chat 显示原始聊天名称。@ServerID 和 @ChatID 显示该聊天的 ID。

@AuthorImageURL — 来源作者图片

如果有来源作者图片网址,此变量就会包含该网址。如果没有作者图片,请选择在缺少图片时也能正常显示的模板。

WhatsApp 模板示例

[@Chat]
@Author
@Message

技术细节和限制

  • 在变量与周围文字之间添加空格或标点,以确保生成的文本易于阅读。
  • 变量不区分大小写:@Message、@message 和 @MESSAGE 的效果相同。
  • 模板最长为 4096 个字符。
  • 未知变量会原样显示。如果发生这种情况,请检查该来源平台支持的变量列表,并先使用较小的模板测试。

删除作者名称

如果您只想保留消息文本,请单独使用 @Message。这样会从正文中删除作者名称;目的地仍会显示发送机器人或 Webhook 的身份。

选择保存更改,然后通过您自己的测试聊天发送示例,查看结果。

使用替换或删除文本修改消息中的单词,并使用转发选项决定格式设置前哪些消息类型符合条件。

常见问题

我可以删除作者名称吗?
可以。从模板中省略 @Author 和 @Username。目的地机器人或 Webhook 仍可能显示自己的身份信息,因此请先测试最终结果。
我可以自定义最终消息吗?
可以。将普通文本、换行、页眉、页脚以及来源平台支持的变量组合起来即可。
为什么变量没有替换,而是原样显示?
该来源不支持此变量,或者变量名称不正确。请检查本页列表,并先测试以 @Author: @Message 开头的较小模板。