---
title: "信号路由规则"
description: "把一个聊天应用连接到指定 Agent，并设置群聊消息的处理方式。"
url: "https://ankole.agentbull.com/zh-Hans-CN/docs/signal-bindings/"
lang: "zh-Hans-CN"
---

> 面向 AI Agent 的文档索引：https://ankole.agentbull.com/zh-Hans-CN/llms.txt

# 信号路由规则

信号路由规则决定一条消息交给哪个 Agent。当前，一条规则把一个聊天应用直接连接到一个 Agent；同一个 Agent 可以通过多条规则接入不同的聊天应用。

这里使用“信号”，是因为消息入口未来不只限于聊天渠道。后续可以通过路由表达式，根据频道、会话或其他条件选择 Agent，也可以把 Salesforce 等外部系统的事件交给 Agent 处理。

如果还没有准备好 Slack、Microsoft Teams、飞书 / Lark 或钉钉应用，请先按 [快速开始](https://ankole.agentbull.com/zh-Hans-CN/docs/quickstart/index.md#4-连接聊天渠道并创建信号路由规则) 完成聊天渠道配置。

## 创建路由规则

1. 打开 Console 的**信号路由**，选择**新增路由规则**。
2. 选择接收消息的 Agent 和聊天渠道适配器。
3. 填写一个便于辨认的规则名称，例如 `support-slack`。
4. 选择群聊消息模式。
5. 填写该聊天应用的凭证与连接信息，然后保存。
6. 在对应的聊天应用中向机器人发送消息，确认指定 Agent 能够回复。

每个聊天 Bot 账号都应有自己的聊天应用和路由规则。如果希望多个 Agent 分别使用不同的 Bot 账号，请为每个 Bot 创建独立应用，再分别创建规则。这样可以单独轮换凭证，也不会把不同 Agent 的身份和消息混在一起。

## 选择群聊消息模式

Console 只会显示当前聊天渠道支持的选项：

| 模式 | 未明确提及 Agent 的群消息会怎样 |
|---|---|
| **仅处理明确提及** | Agent 看不到这条消息，也不会回复。 |
| **记录未提及消息** | 消息会进入会话上下文，但不会立即唤醒 Agent。后续有人提及 Agent 时，它可以结合这些消息理解上下文。 |
| **可主动介入** | Agent 会先判断自己是否应该加入对话；只有认为发言有帮助时才回复。 |

Slack、Microsoft Teams 和飞书 / Lark 支持以上三种模式。钉钉和企业微信只能处理明确提及机器人的群消息，因此 Console 只会提供第一种模式。企业微信的限制远不止这一条（无法撤回、群聊收不到文件、Agent 不能主动开启会话等），我们不建议把它作为首选渠道，完整限制见 [快速开始](https://ankole.agentbull.com/zh-Hans-CN/docs/quickstart/index.md#4-连接聊天渠道并创建信号路由规则) 的企业微信标签页。

“可主动介入”不是逢消息必答。它只是允许 Agent 在没人点名时作出判断，且每批新消息只会被判断一次。想告诉 Agent 某个群什么时候该说话，在群里直接给它一条频道常驻指令（例如“只在 CI 红了才说话”）；若它仍过于频繁地插话，先收紧常驻指令或角色说明；若某个群只需要被动问答，直接改为“仅处理明确提及”。判断行为与常驻指令详见 [群聊主动介入](https://ankole.agentbull.com/zh-Hans-CN/docs/ambient-intervention/index.md)。

## 选择未知发信人的处置

Ankole 会自动把发信人映射到已知账号：目录同步或登录导入过的账号按平台 ID 直接匹配；新出现的平台账号，如果平台提供的邮箱或手机号与某个已有账号一致，也会自动归并。这个映射是尽力而为的——不在通讯录里的外部人员，或从未绑定过聊天账号的本地登录用户，都可能匹配不上。

**自动映射账号失败时**决定规则如何处置这类发信人：

| 选项 | 行为 |
|---|---|
| **手动审核**（默认） | 发信人出现在控制台**身份 → 待绑定账号**列表中。在管理员完成绑定之前，指名 Agent 的消息只会收到一条固定回复，提示联系管理员绑定账号；除此之外不做任何处理——消息不进入上下文，也不进入 Brain 学习。 |
| **自动创建独立账号** | Ankole 为发信人自动创建一个独立账号并立即提供服务。适合允许任何人与 Agent 对话的开放频道。如果发信人的平台 ID 已经是某个现有账号的标识符，例如以邮箱为标识符的本地登录账号，Ankole 不会创建也不会合并，而是把发信人留待手动审核，因为只有管理员能判定两者是同一个人。 |

未映射发信人在群里的闲聊（未指名 Agent）始终被忽略。

在 Telegram、Discord 和 LINE 上，每个发信人一开始都是未知的：这些消费级 IM 没有企业通讯录，平台也不提供邮箱或手机号。保持**手动审核**，并把每个人一次性映射到其账号。WhatsApp 会提供发信人经验证的手机号，因此账号已拥有该手机号的人会立即完成映射。邮件发信人从不按资料邮箱或本地登录邮箱匹配，因为 From 地址本身不能证明任何事情：只有显式的邮箱身份绑定才能让其接入，员工的绑定由通讯录同步创建，其他人的绑定由你在这里创建。在飞书和 Lark 上，同一个页面也覆盖外部群：外部租户成员没有企业员工 ID，只能走手动绑定或自动创建。管理员也可以在同一个控制台页面提前建立映射，例如把本地登录用户和其聊天账号关联起来。

## 聊天内容如何成为 Brain 知识

路由规则只决定消息交给哪个 Agent，不提供知识范围选项。Brain 从聊天内容中学习时，会根据会话类型和已知身份确定访问范围：

- **群聊：**当前成员权限组中的成员和 Agent 可以使用学到的知识。如果聊天渠道没有对应的成员权限组，Brain 不会从该群学习。
- **私聊：**私聊对象和该规则绑定的 Agent 可以使用学到的知识，其他 Agent 默认不能使用。

公开事实可以成为实例级知识；明确要求保密的内容可以只对相应发言人可用。其他内容保持上述群聊或私聊范围。模型要求和检索行为见 [Brain](https://ankole.agentbull.com/zh-Hans-CN/docs/brain/index.md)。

## 编辑、停用或启用

规则列表默认只显示已启用的规则。需要检查或恢复旧规则时，打开“显示已停用”。

选择“编辑”可以查看当前的非敏感配置，并更换目标 Agent、群聊消息模式或聊天应用凭证。更换目标 Agent 后，新消息会交给新的 Agent。

已保存的 Token 和 Secret 不会返回浏览器。编辑时把凭证字段留空，会保留服务器中现有的加密值；输入新值才会替换它。

选择“停用”会停止新的消息投递，但保留规则、聊天应用关联和历史链路。需要恢复时，在“显示已停用”中找到规则并选择“启用”，不必重新创建规则。

## 排查没有回复的问题

- **聊天渠道未出现**：到**Agent 能力库 → Control Plane Plugins**启用对应插件，并按页面提示重启控制面。
- **机器人收不到群消息**：检查平台侧的事件订阅、权限和应用发布状态；钉钉和企业微信的群消息必须明确 @ 机器人。
- **企业微信收发异常**：先对照 [快速开始](https://ankole.agentbull.com/zh-Hans-CN/docs/quickstart/index.md#4-连接聊天渠道并创建信号路由规则) 企业微信标签页确认不是平台限制——常见的有机器人非超管创建、可信 IP 未配置、会话未被用户先激活。
- **规则已保存但没有回复**：确认目标 Agent 已启用、模型配置可用，并在规则列表中检查该规则是否可用。
- **私聊正常、群聊不正常**：检查群聊消息模式，以及机器人是否已加入目标群。

聊天渠道需要的权限、事件和凭证以 [快速开始](https://ankole.agentbull.com/zh-Hans-CN/docs/quickstart/index.md#4-连接聊天渠道并创建信号路由规则) 中的平台步骤为准。

钉钉规则若要用流式卡片回复，需要先在钉钉卡片平台搭一份 AI 卡片模板，搭建步骤见 [快速开始](https://ankole.agentbull.com/zh-Hans-CN/docs/quickstart/index.md#4-连接聊天渠道并创建信号路由规则) 钉钉标签页的高级设置。
