# 在企业微信中使用 MOI 智能体

MOI 提供“IM 双向通信”能力，可以将工作区中的智能体接入企业微信、飞书和 Slack 等即时通信平台。用户在聊天会话中发送请求，MOI 将消息交给连接的智能体处理，再把回复送回原会话，让你在日常协作工具中直接使用智能体。

在 MOI 中创建并测试智能体后，你还可以把它接入日常使用的聊天工具。例如，将项目周报整理助手接入企业微信后，你可以直接发送零散的项目进展，收到按固定结构整理的周报，再在同一会话中补充信息、更新结果。

本教程接续[快速创建并使用首个智能体](agent-quickstart.md)，沿用其中的“项目周报整理助手”，演示如何连接企业微信智能机器人，完成一次从发送项目进展、接收周报到继续补充信息的双向对话。

如果已经完成上一教程，可以直接继续；尚未创建时，请先创建并测试该助手。本示例无需额外绑定 Skill 或工具。

## 你将完成什么

- 为一个 MOI 智能体连接企业微信智能机器人；
- 在企业微信中发送项目进展，接收周报并继续补充信息；
- 在企业微信中查看回复，并在 MOI 中确认接收状态。

## 开始前准备

- 准备一个 MOI 账号，进入拥有目标智能体的工作区；
- 确认“项目周报整理助手”已创建，并能在 MOI 中按四个固定部分整理周报；
- 准备可登录企业微信的账号，并确保可以使用要连接的智能机器人；
- 确认当前工作区有可用的智能体对话模型。界面要求选择“运行模型”时，需要在连接前完成选择。

本教程使用企业微信**智能机器人**的“长连接”接收方式。该方式由 MOI 管理连接，无需配置公网回调 URL，也无需先创建工具实例。企业微信应用、群机器人和企业微信邮箱是不同能力，不适用于以下步骤。

## 操作步骤

### 1. 打开智能体的双向通信设置

1. 登录 MOI，进入目标工作区，在顶部打开“智能体”。
2. 在智能体列表中找到上一教程创建的“项目周报整理助手”，点击卡片右上角的“更多操作”。
3. 选择“IM 双向通信”。在弹窗的“平台”中选择“企业微信智能机器人”。

下图中的“项目周报助手”对应上一教程创建的项目周报整理助手。

```{image} ../assets/images/tutorials/use-agent-in-wecom-im-entry.png
:width: 100%
:alt: 在项目周报助手卡片的更多操作菜单中选择 IM 双向通信
```

当前界面为该平台提供“长连接”方式。如果界面显示“接收方式”，选择“长连接”。

### 2. 扫码连接企业微信智能机器人

1. 点击“获取企业微信二维码”，打开二维码页面。
2. 使用自己的企业微信扫描 MOI 页面上生成的二维码，并按提示确认授权。
3. 返回 MOI，等待“扫码授权成功，请继续连接”的提示。
4. 如果页面要求选择“运行模型”，选择当前工作区可用的模型。
5. 点击“保存并继续”。

```{image} ../assets/images/tutorials/use-agent-in-wecom-qr-code.png
:width: 100%
:alt: 企业微信智能机器人的扫码授权页面，示例二维码已遮挡
```

扫码授权只取得连接所需的信息；**点击“保存并继续”后，MOI 才会保存双向通信配置并开始建立长连接**。二维码过期时，点击“重新获取二维码”再次扫码。

如果已有智能机器人的 `Bot ID` 和 `Secret`，也可以点击“更多连接方式”，手动填写这两个字段，再选择运行模型并保存。`Secret` 应只填在 MOI 的连接表单中，不要发送到聊天或文档中。

### 3. 确认连接状态

保存后，弹窗进入“启用平台长连接”步骤。先查看“配置已保存”和“MOI 接收已启用”，再等待状态变为“连接已建立”。刚保存时显示“正在连接”或临时显示“正在重连”，可以稍后在同一入口重新查看。

```{image} ../assets/images/tutorials/use-agent-in-wecom-connected.png
:width: 100%
:alt: IM 双向通信已保存、MOI 接收已启用、连接已建立，等待首条真实消息
```

此时“等待首条真实消息”是正常状态：它表示 MOI 尚未从该机器人收到消息。下一步在企业微信发出测试消息后，重新打开“IM 双向通信”，应看到“已收到真实消息”。

### 4. 在企业微信中整理项目周报

在企业微信中打开已连接的智能机器人，发送上一教程使用的同一组项目进展：

```text
请整理本周项目进展：

- 已完成登录页交互稿，并与研发确认字段和错误提示。
- 数据导入接口联调完成，测试发现大文件上传偶尔超时。
- 下周计划完成权限页面设计，并继续排查上传超时问题。
- 需要后端同事提供超时请求日志。
```

等待机器人在**同一个企业微信会话**中回复。检查周报是否仍包含“本周完成”“问题与风险”“下周计划”和“需要协同”四个部分，只使用输入中的事实，并将“大文件上传偶尔超时”归入问题与风险，将“后端同事提供超时请求日志”归入需要协同。

```{image} ../assets/images/tutorials/use-agent-in-wecom-weekly-report.png
:width: 100%
:alt: 在企业微信中向项目周报助手发送项目进展，并收到包含四个部分的周报回复
```

随后在同一会话中继续发送：

```text
补充：权限页面设计还需要产品同事确认交互方案。请更新周报的“需要协同”部分，其他内容保持不变。
```

检查回复是否在原有协同事项中增加了这条补充信息，而没有将待确认事项写成已完成。

```{image} ../assets/images/tutorials/use-agent-in-wecom-follow-up.png
:width: 100%
:alt: 补充权限页面交互方案待确认的信息后，周报的需要协同部分新增了产品同事确认事项
```

最后回到 MOI，重新打开该助手的“IM 双向通信”，确认状态已变为“已收到真实消息”。

## 遇到问题时

| 现象 | 检查方法 |
| --- | --- |
| 二维码过期或扫码后没有成功提示 | 在弹窗中重新获取二维码，并用企业微信完成授权；授权成功后仍需点击“保存并继续”。 |
| 保存后一直没有显示“连接已建立” | 重新打开“IM 双向通信”，查看连接状态及页面显示的连接错误；使用手动方式时核对 `Bot ID` 和 `Secret`。 |
| 显示“连接已建立”，但没有收到回复 | 先确认消息发给了已连接的智能机器人，再查看状态是否从“等待首条真实消息”变为“已收到真实消息”。如仍未收到，检查企业微信中该机器人的可用范围。 |

## 教程完成

现在，上一教程创建的项目周报整理助手已经接入企业微信。你可以在会话中发送项目进展、查看周报，并继续补充信息，无需为企业微信重新创建一个智能体。若要停止接收，在该智能体的“IM 双向通信”设置中点击“断开双向通信”。
