人工服务
人工服务功能允许 Bot 开发者接入接入第三方人工客服系统,以响应 Bot 用户的人工服务请求。当前已支持接入 Intercom、WebHook 的方式更灵活的接入其他人工服务系统( 如:livechat 、WhatsApp 、 slack 、钉钉、七鱼、企业微信等)。
如何启用人工服务
- 在 Bot 设置-人工服务,点击「启用」按钮,即可启用人工服务。
- 选择需要的人工服务系统,支持 intercom、webhook 等。
- 完成所选择三方人工服务系统的鉴权配置,确保消息互通成功
- 根据企业人工服务支持的实际情况,调整设置人工服务相关配置设置
- 在 Bot 对话窗口中,发起人工服务请求即可正常调用人工服务
配置人工服务鉴权
Intercom 鉴权
通过 Intercom 提供人工服务的完整教程指南
- 创建 APPS
首先需要在 intercom 注册并按照引导创建完成 workspace 。通过「账号头像-settings-APPS&INTEGRATIOS」访问 Developer-hub页面。在 Developer-hub 点击「New app」创建一个应用。若已创建好 App,直接选择目标 App进入其设置页面。 - 获取 AccessToken 并填写到 GPTBots
- 选择「Authentication」菜单项,复制 Access token 信息。
- 将 token信息填写到「人工服务-intercom 鉴权」的 Access token 输入框中
- 将人工服务消息接收地址填写到 Intercom 复制「GPTBots 消息接收地址」中的URL 地址,并将该 URL 地址填入在 Webhooks 菜单项的 Endpoint URL 中
- 在 Intercom 订阅关键业务事件
在 Webhooks 菜单项的 Topics 功能区,使用「Select a topic...」选中4个订阅事件,点击「save」按钮保存配置。
- conversation.admin.closed
- conversation.admin.replied
- conversation.admin.snoozed
- conversation.read
至此,Intercom 的配置全部完成,你可以在 Bot 对话窗口请求人工服务,Bot 发起人工服务请求成功时,Intercom 的 Help Desk 会接收到用户消息,当人工客服回复该条消息后人工服务连接正式建立。
Webhook 鉴权
通过 Webhook 提供人工服务的完整教程指南
首先,开发者需要在自己的服务器环境构建一个 Webhook 接收服务,提供以下3个接口用于接收 Bot 发起的人工服务请求和接收消息。详见人工服务 webhook。
- 创建会话:
/conversation/establish
- 聊天:
/chat
- 关闭会话:
/conversation/close
- 创建会话:
然后,开发者需要在 Bot - 人工服务配置中配置 Webhook 接收服务的 URL 地址、用户名和密码,以便 Bot 能够发送消息到 Webhook 接收服务。
URL地址:必填,用于接收 bot 端用户发送的消息内容
用户名:非必填,由开发者所构建的 webhook 服务决定 密码:非必填,由开发者所构建的 webhook 服务决定最后,在「Bot-集成-API」 启用 API 功能,再将 GPTBots 消息接收地址配置为 Webhook 端的消息发送 URL 地址,用于将人工回复消息内容发送到 Bot 对话窗口中。详见人工服务 webhook。
至此,Webhook 鉴权配置全部完成,你可以在 Bot 对话窗口请求人工服务,Bot 发起人工服务请求成功时,Webhook 接收服务会接收到用户消息。
Livechat 鉴权
开发者需要创建自己的livechat账号,获取到organization_id。 创建livechat账号
开发者需要创建APP,添加Blocks,选择App Authorization,设置为服务端app。在该页面,能够获取到clientId。创建APP
添加Blocks,选择APP webhook,将portal端的GPTBots消息接收地址作为webhook url填入。
添加Bolcks,选择Chat webhook,将portal端的GPTBots消息接收地址作为webhook url填入。选择incoming_event和chat_deactiveted
点击Priveate installation进到页面,install app
将前期准备中的 organization_id 和 liveChatClientId 输入到卡片中,点击确定,完成配置。至此,livechat配置完成。
配置人工服务
人工服务
服务状态:展示三方人工服务系统的可用性
- 未配置:当从未填写三方人工服务系统的鉴权信息时
- 服务可用:当填写鉴权信息且验证通过时
- 对不可用:当已填写的鉴权信息在调用时失效/失败时
触发时机:支持自定义触发时机描述,帮助 LLM 正确判断何时调用人工服务。
超时机制
等待超时:默认 60 S,用户发起人工服务请求后的最大等待时长,超时将提示用户结束本次请求或继续等待
会话超时:默认 180 S,人工客服最后 1 条消息产生后,若等待 N 秒后一直无用户回复,将自动退出人工服务
人工服务时段
支持自定义设置最多 10 条人工服务时间段,规则如下:
- 每周:此模式下,支持选择周一~周日,设定人工服务时间段,每周循环执行
- 自定义:此模式下,必须选择一个绝对日期,设定人工服务时间段,只执行一次
当 Bot 存在多条人工服务时段时,人工服务事件生效机制如下:
- 首先按照自然日维度,筛选出该自然日的所有「人工服务时段」规则
- 按照最宽时间窗口规则计算所有的重叠时间规则参数,不重叠则不参与计算
- 若存在多个不重叠的最宽时间窗口,则该自然日存在多个有效的人工服务时间段,
例如2024.12.12日生效的人工服务时间规则共 4 条,分别如下:
09:00 ~ 12:00
、10:00 ~ 1 2:00
、13:00 ~ 18:00
、15:00 ~ 17:00
.
则系统生效的服务时间窗口为:09:00 ~ 12:00
、13:00 ~ 18:00
非服务时段回复
当前人工服务处于「非人工服务时段」,调用人工服务时会自动回复「预置文案」进行回复
传递对话轮数
当成功调用三方服务系统,将N 轮的聊天记录
+用户最新问题
一起提交到人工服务系统,以帮助
在对话窗口发起人工服务请求
- 用户发起人工服务请求
当用户希望获得人工服务时,会由 LLM 判断是否唤醒人工服务,若 LLM 决定唤醒人工服务则会调用人工服务 tools 并要求用户提供邮件地址.当系统已有用户的邮箱信息时,则会跳过「输入邮箱」的环节,直接调起人工服务请求流程。- 用户已登录状态且账号经过邮箱验证时,系统存在用户邮件信息
- 开发者在气泡部件场景,通过
window.ChatBot.setEmail("somebody@mail.com")
命令设置用户邮箱时,系统存在用户邮件信息 - 开发者在 iframe 场景,通过
iframe_url
+?email=somebody@mail.com
的方式设置用户邮箱时,系统存在用户邮件信息
- 当三方人工服务系统接收到用户消息,并回复用户第一条消息时,正式进入人工服务环节
- 用户可以不限轮数的与人工服务系统互发消息,用户和人工客服人员均可以主动关闭本次人工服务对话
接入intercom 、 webhook、 livechat等 任何三方人工服务系统,上述功能均适用。