mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-11-01 05:15:22 +08:00
git-subtree-dir: docs git-subtree-mainline:0582d1b3d4git-subtree-split:51dddcb3f8
87 lines
5.2 KiB
Plaintext
87 lines
5.2 KiB
Plaintext
---
|
||
title: "企业微信客服"
|
||
description: "用 LangBot 配置企业微信客服,提供 AI 驱动的客服对话。"
|
||
---
|
||
|
||
<Info title="本文详细讲述 LangBot 部署到企业微信客服号的过程,此功能可以将客服号与普通微信进行对话。若只需要在企业微信内部使用,请参考[企业微信内部应用实现](wecom)。">
|
||
|
||
**部署企业微信客服号需要企业资质**,具体查看[企业微信客服号接入指南](https://developer.work.weixin.qq.com/document/path/94638),并且根据此文档提供对应的企业资质证明。
|
||
|
||
</Info>
|
||
|
||
## 效果图
|
||
|
||

|
||
|
||
## 部署企业微信客服
|
||
|
||
#### 配置企业微信客服页面
|
||
|
||
打开[企业微信客服后台](https://kf.weixin.qq.com/kf),登录之后进入,点击`企业信息`,获取`企业ID`。
|
||
|
||

|
||
|
||
保存企业ID,然后点击`开发配置`,点击`开始使用`,进入之后随机获取 Token,EncodingAESKey,随后将此三项填写入 LangBot 配置页中,Secret 随便填写,如图:
|
||
|
||

|
||
|
||
点击 LangBot 配置页中的提交,启用机器人,复制 WebHook回调地址,填写入企业微信客服后台中的 URl (记得改成自己的 ip 或者域名),点击保存,如果可以保存成功,那么说明可以正常连接。
|
||
|
||
<Tip>
|
||
**配置域名太麻烦?** [LangBot Cloud](https://space.langbot.app/cloud) 自带域名和 HTTPS,无需自行配置,开箱即用。
|
||
</Tip>
|
||
|
||
复制页面中的 Secret,然后打开新建好的 LangBot 企业微信客服机器人,填写入新的 Secret,重新启动。
|
||
|
||
## 获取客服链接和二维码
|
||
|
||
完成回调配置后,还需要获取供微信用户发起咨询的入口。
|
||
|
||
1. 回到[微信客服后台](https://kf.weixin.qq.com/kf),进入`客服帐号`,创建或选择需要接入 LangBot 的客服帐号。
|
||
2. 打开该帐号的接入页面,向下找到`在微信外App/网页中接入`,点击`去接入`。
|
||
|
||

|
||
|
||
3. 在接入页面顶部找到对应的客服帐号。点击`复制链接`可获取客服咨询链接,点击`生成二维码`可查看该帐号的咨询二维码。
|
||
|
||

|
||
|
||
<Note>
|
||
截图中的客服链接仅作示例,请使用自己帐号生成的链接或二维码。Webhook 回调地址用于微信向 LangBot 推送消息,客服链接和二维码用于用户发起咨询。
|
||
</Note>
|
||
|
||
## 扫码测试
|
||
|
||
1. 确认 LangBot 中的机器人已启用,并在`事件路由`中将`收到消息`交给需要使用的处理器。
|
||
2. 使用普通微信扫描刚生成的二维码,进入客服会话后发送一条消息。
|
||
3. 在 LangBot 中查看机器人的日志、会话监控及对应处理器的运行日志,确认消息已接收并处理,再检查微信中是否收到回复。
|
||
|
||
如果只是扫码测试,获取二维码后即可发起咨询,无需继续配置页面下方的 App 关联。
|
||
|
||
## 可路由的事件
|
||
|
||
在机器人的「事件路由」中,可以分别为以下事件选择处理器。普通消息可交给流水线或 Agent;其他事件可交给支持相应事件的 Agent 或插件处理器。
|
||
|
||
| 事件 | 事件类型 |
|
||
| --- | --- |
|
||
| 收到消息 | `message.received` |
|
||
| 客户或接待人员撤回消息 | `message.deleted` |
|
||
| 客户通过链接进入会话 | `wecomcs.enter_session` |
|
||
| 客服消息发送失败 | `wecomcs.msg_send_fail` |
|
||
| 接待人员状态变更 | `wecomcs.servicer_status_change` |
|
||
| 客服会话接入、转接、结束或重新接入 | `wecomcs.session_status_change` |
|
||
| 拒收客户消息设置变更 | `wecomcs.reject_customer_msg_switch_change` |
|
||
|
||
撤回事件包含原消息 ID、操作者和会话 ID。客服专属事件保留客服帐号、客户及事件相关字段,例如 `welcome_code`、`fail_type` 和 `change_type`;处理器可按字段决定后续操作。未知事件仍通过 `platform.specific` 保留原始数据。
|
||
|
||
进入会话事件只在客户通过客服链接进入时触发,从已有聊天列表打开会话不会触发。接入事件不等于自动发送欢迎语,仍需配置相应处理逻辑。
|
||
|
||
### 回复窗口与欢迎语
|
||
|
||
- 普通消息回复要求客户先主动发消息,且在 48 小时内回复;仅进入会话不会开启此窗口。错误码 `95002` 表示不满足发送时间限制。
|
||
- Agent 的 `event_reply` 在进入会话事件中使用专用事件回复接口和 `welcome_code`,不会当作普通消息发送。微信只在符合欢迎语条件时提供此凭据,每个凭据只能发送一条消息,有效期仅 20 秒。建议使用快速固定文案,避免等待耗时较长的模型生成。
|
||
- 会话状态变化事件的 `event_reply` 使用 `msg_code`,仍受凭据有效期和当前会话状态限制。当前事件回复支持文本;凭据缺失、过期或已使用时无法补发,重新执行旧事件不能延长有效期。
|
||
|
||
详见微信官方的[发送消息](https://developer.work.weixin.qq.com/document/path/94677)和[发送事件响应消息](https://developer.work.weixin.qq.com/document/path/95122)。
|
||
|