停止转发循环
通过忽略机器人消息或屏蔽发送副本的机器人,阻止副本在聊天之间来回转发。
转发循环是指复制的消息重新进入另一个自动化正在监控的聊天。另一个自动化会再次复制它,消息就会持续来回转发——即使用户已不再发帖也是如此。
例如,一个自动化复制 Discord → Telegram,另一个自动化则复制同一 Telegram 聊天 → 同一 Discord 频道:
Discord 频道 → Telegram 聊天 → Discord 频道 → Telegram 聊天 → …
机器人发送的副本被当作新消息处理。循环可能发生在不同平台之间,也可能发生在同一平台的不同聊天之间;使用一个或多个自动化都可能出现此问题。
首先停止重复送达
更改设置前,请停止涉及的自动化。您无需删除自动化或重新创建目的地。阻止回流的消息后,可以重新启动自动化。
方案 1:忽略机器人消息
如果您只想复制用户发送的消息,请使用此方案。当您不需要任何机器人发布的帖子时,这是最简单的选择。
- 打开读取另一个自动化机器人所发消息的自动化。
- 选择该自动化的来源聊天,也就是它监控且出现回流副本的位置。
- 打开过滤器 → 转发选项。
- 关闭“机器人消息”——取消勾选复选框。
- 选择保存更改。如有需要,请在反向自动化中重复此操作。
例如,在 Telegram → Discord 自动化中,忽略发送 Discord → Telegram 副本的 Telegram 机器人。副本仍会留在 Telegram,但不会再被转发回 Discord。
**此操作也会排除该聊天中的其他机器人消息。**如果您想保留提醒或公告等有用的机器人消息,请使用方案 2。转发选项对此设置有详细说明。
方案 2:只屏蔽发送副本的机器人
使用黑名单排除发送副本的机器人,同时保留其他机器人的消息。
请选择识别机器人的方式:
- 作者名称:如果显示名称不变,可从该机器人的可见名称开始。使用精确匹配匹配完整名称。
- **@用户名:**输入不带
@的用户名。它通常比可见名称稳定,但也可能更改。 - 用户 ID:如果名称可能变化,这是最可靠的方式。在屏蔽用户下选择机器人,或手动输入其 ID。了解如何查找用户 ID。
- 打开会将送达消息再次复制回去的自动化。
- 点击该自动化正在监控且出现回流副本的原始聊天,然后打开过滤器 → 黑名单。
- 添加机器人的名称或用户名规则。若想使用其 ID,请在屏蔽用户下选择它。如果列表中没有该机器人,请选择手动添加,输入 ID,然后按 Enter 或选择 +。
- 选择保存更改。如有需要,请在反向自动化中也屏蔽送达机器人的消息。
请屏蔽已送达副本的发送者机器人,而不是原始消息的作者。更多示例请参阅过滤器 → 屏蔽作者。
发送者没有显示为机器人时
解决方式必须符合该平台显示复制消息的方式:
- **Discord Webhook:**副本可能会显示原作者的名称和头像。这种外观并不表示帖子是由用户发送的;忽略机器人消息仍可排除 Webhook 发送的内容。如果按特定作者设置黑名单,请使用 Webhook 发送者的 ID,而非原作者的 ID。
- **Telegram 频道:**帖子可能显示为由频道而非发布它的机器人发送。“机器人消息”选项可能无法将它识别为机器人帖子。请避免将接收副本的频道同时设为回流来源聊天,或为每个方向分别使用接收聊天。
- **其他发送者:**如果平台没有将发送者标识为机器人,仅关闭“机器人消息”还不够。请尽可能屏蔽实际发送者,或将复制来源聊天与送达聊天分开。
重新运行前检查两个方向
重新启动自动化,然后让他人在两侧各发一条新消息:
| 新消息 | 预期结果 |
|---|---|
| 用户在 Discord 中发帖 | Telegram 中出现一份副本;该副本不会再返回 Discord。 |
| 用户在 Telegram 中发帖 | Discord 中出现一份副本;该副本不会再返回 Telegram。 |
如果没有新帖子但副本仍不断出现,请再次停止自动化并检查哪个发送者的消息正在被回流复制。请检查所有监控这些聊天的自动化,而不只是最先发现的两个。同时检查聊天专属设置是否覆盖了全局设置中的选择;设置的工作方式对此有说明。
如果重复消息没有在聊天之间来回转发,请参阅重复消息。