1. 使用说明
在线客服机器人网关(以下简称网关)帮助您将智能体快速接入在线客服系统,实现智能客服功能。本文档将指导您完成智能体的接入。
2. 接入流程
2.2. 接入说明
2.2.1. 注册智能体
您需要先将您的智能体注册到网关上,注册完成后才能在路由导航中配置该智能体。
2.2.2. 配置路由导航
在完成智能体注册后,您需要在路由导航机器人节点配置您注册后的智能体机器人。
2.2.3. 消息推送和响应
完成上述配置后,网关将自动把访客消息推送至智能体。在接收到智能体响应后,网关会将响应消息发送给访客,实现访客和智能体机器人之间的消息实时传递与响应。
3. 支持平台
网关支持对接多种智能体平台,对每个智能体平台提供了一个默认的对接方式,您可以根据实际需求,在智能体注册时选择适配智能体的对接方式。
智能体平台 | 鉴权方式 | 推送方式 | 响应方式 | 支持情况 |
---|---|---|---|---|
Dify |
TOKEN鉴权 |
Dify推送方式 |
Dify响应方式 |
No |
Coze(扣子) |
TOKEN鉴权 |
Coze推送方式 |
Coze响应方式 |
No |
Default(默认) |
TOKEN鉴权 |
默认推送方式 |
默认响应方式 |
Yes |
备注:其他主流智能体平台待完善补充。
4. 注册
4.1. 注册智能体
该接口为在线客服API,需按照在线客服API接口规范进行调用。
4.1.1. 请求接口
POST /livechat/third_part_bot_register
4.1.2. 请求头
名称 | 值 | 是否必需 | 描述 |
---|---|---|---|
ContentType |
application/json |
true |
内容类型和字符编码 |
4.1.3. 请求参数
名称 | 类型 | 是否必传 | 描述 |
---|---|---|---|
name |
String |
true |
智能体机器人名称 |
domain |
String |
true |
网关推送智能体接口域名 |
authEnabled |
Boolean |
true |
网关推送智能体接口是否需要鉴权 |
authentication |
Authentication |
false |
网关推送智能体接口鉴权配置。 |
pushConfigList |
List<PushConfig> |
true |
网关推送智能体接口配置 |
platform |
String |
true |
智能体平台类型: |
pushType |
String |
false |
网关推送智能体的推送类型: |
responseType |
String |
false |
智能体响应网关的响应类型: |
Authentication
名称 |
类型 |
是否必传 |
描述 |
token |
String |
false |
网关推送智能体接口的鉴权token, 鉴权方式为TOKEN时必传 |
type |
String |
true |
网关推送智能体接口的鉴权方式 |
PushConfig
名称 |
类型 |
是否必传 |
描述 |
type |
String |
true |
网关推送智能体的接口类型 |
uri |
String |
true |
网关推送智能体的接口 |
httpMethod |
String |
true |
网关推送智能体的接口请求方式: |
4.1.4. 返回参数
名称 |
类型 |
描述 |
robotId |
String |
智能体注册成功后的智能体机器人ID |
4.1.5. 请求示例
{
"name": "智能体机器人名称", // 智能体机器人名称
"domain": "https://www.test.com", // 网关推送智能体接口域名
"authEnabled": true, // 网关推送智能体接口是否需要鉴权
"authentication":{ // 网关推送智能体接口的鉴权配置
"type": "TOKEN", // 网关推送智能体接口的鉴权类型
"token": "ezliex48sp494ljx9xd" // 网关推送智能体接口的鉴权token
},
"pushConfigList": [ // 网关推送智能体接口配置
{
"uri": "/api/robot/chat", // 网关推送智能体接口
"httpMethod": "POST", // 网关推送智能体接口请求方式
"type": "Message" // 网关推送智能体接口类型
}],
"platform": "Default", // 智能体平台类型
"pushType": "Default", // 网关推送给智能体的推送方式类型
"responseType": "Default" // 智能体给网关响应的响应方式类型
}
4.1.6. 返回示例
{
"requestId": "str",
"robotId": "str"
}
5. 消息推送及响应
5.1. 鉴权方式
网关消息推送支持多种鉴权方式,根据您注册智能体时选择的鉴权方式进行鉴权。
5.1.1. TOKEN鉴权
该鉴权方式适用于Dify,Coze平台。
对于需要鉴权的推送接口,采用TOKEN认证机制。您需要在注册时选择TOKEN鉴权并设置TOKEN值,网关所有推送请求将通过HTTP Authorization请求头携带该TOKEN进行身份验证。
Authorization: Bearer {TOKEN}
5.2. 消息推送及响应
网关会实时推送访客消息到您注册智能体时配置的推送接口中,如果您需要给访客回复消息,需按照响应参数的指定格式进行响应。
网关支持智能体非流式响应和流式响应两种模式。
5.2.1. 默认方式
非流式
适用于一次性返回完整回复内容的场景,通过一次HTTP请求完成网关访客消息的推送和智能体的应答。
请求示例
文本消息示例
{
"robotId": "58656d16-b8b3-4722-83cd-37953f1ad566", // 智能体完成注册后网关生成的智能体机器人ID
"data": [
{
"messageType": 100, // 网关推送消息类型
"message": {
"content": "你能做什么,请用500字回复?" // 网关推送文本消息内容
}
}
],
"visitorId": "1k49d8clec9e4ydoe4i", // 访客ID
"sender":"1k49d8clec9e4ydoe4i", // 消息发送人ID
"conversationId": "b88022da-55c9-487b-9894-9afbe2e47cc2", // 智能体机器人会话ID
"inputs": {}, // 随路参数,会话相关信息
"responseMode":"blocking" // 响应模式
}
图片消息示例
{
"robotId": "58656d16-b8b3-4722-83cd-37953f1ad566", // 智能体完成注册后网关生成的智能体机器人ID
"data": [
{
"messageType": 105, // 网关推送消息类型
"message": {
"fileUrl": "https://resource-test.aliyuncs.com", // 图片链接
"fileName": "图片.png" // 图片名称
}
}
],
"visitorId": "1k49d8clec9e4ydoe4i", // 访客ID
"sender":"1k49d8clec9e4ydoe4i", // 消息发送人ID
"conversationId": "b88022da-55c9-487b-9894-9afbe2e47cc2", // 智能体机器人会话ID
"inputs": {}, // 随路参数, 会话相关信息
"responseMode":"blocking" // 响应模式
}
请求参数
名称 | 类型 | 是否必传 | 描述 |
---|---|---|---|
robotId |
String |
true |
智能体完成注册后网关生成的智能体机器人ID |
conversationId |
String |
false |
智能体机器人会话ID(智能体机器人第一次响应后返回的智能体机器人会话ID) |
visitorId |
String |
true |
访客id(企微客服渠道群聊时是群id) |
data |
List<Data> |
true |
消息内容 |
inputs |
Map<String, Object> |
false |
随路参数, 会话相关信息,详情见随路参数说明 |
responseMode |
String |
true |
响应模式 |
sender |
String |
false |
企微客服渠道群聊时是实际发送人的id,其他渠道该值和visitorId值一致 |
Data
名称 |
类型 |
是否必传 |
描述 |
messageType |
String |
true |
消息类型 详情见支持推送的消息类型 |
message |
Message |
true |
消息内容,详情见支持推送的消息类型 |
响应参数
名称 |
类型 |
描述 |
status |
Integer |
响应状态 |
code |
String |
响应编码 |
data |
List<Data> |
响应结果 |
Data
名称 |
类型 |
描述 |
conversationId |
String |
智能体机器人会话ID |
answers |
List<Answer> |
消息内容 |
metadata |
Map<String, Object> |
随路信息,智能体机器人响应携带的额外参数 |
Answer
名称 |
类型 |
描述 |
answerType |
String |
回复类型 |
answerContent |
JSONObject |
回复内容 |
指令对象
名称 |
类型 |
描述 |
actionType |
String |
指令类型 详情见支持的指令列表 |
actionData |
Map<String, String> |
指令数据 详情见支持的指令列表 |
示例
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 智能体机器人会话ID
"answers": [ // 响应内容
{
"answerType": "action", // 响应类型
"answerContent":{
"actionType":"TRANSFER_HUMAN", // 指令类型
"actionData":{ // 指令数据
}
}
}
],
"metadata":{
}
}
}
消息对象
名称 |
类型 |
描述 |
content |
JSONObject |
消息内容,详情见支持的消息类型 |
type |
Integer |
消息类型,详情见支持的消息类型 |
示例
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 智能体机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 响应内容
"content": { // 响应消息对象
"content": "这里是文本消息回复内容。" // 文本消息内容
},
"type":100 // 消息类型
}
],
"metadata":{ // 随路信息
}
}
}
流式
适用于需要逐步返回内容的场景,网关会通过SSE协议发起请求,智能体需要按照SSE协议格式返回数据。
请求示例
文本消息示例
{
"robotId": "58656d16-b8b3-4722-83cd-37953f1ad566", // 智能体完成注册后网关生成的智能体机器人ID
"data": [
{
"messageType": 100, // 网关推送消息类型
"message": {
"content": "你能做什么,请用500字回复?" // 网关推送文本消息内容
}
}
],
"visitorId": "1k49d8clec9e4ydoe4i", // 访客ID
"sender":"1k49d8clec9e4ydoe4i", // 消息发送人ID
"conversationId": "b88022da-55c9-487b-9894-9afbe2e47cc2", // 智能体机器人会话ID
"inputs": {}, // 随路参数,会话相关信息
"responseMode":"streaming" // 响应模式
}
图片消息示例
{
"robotId": "58656d16-b8b3-4722-83cd-37953f1ad566", // 智能体完成注册后网关生成的智能体机器人ID
"data": [
{
"messageType": 105, // 网关推送消息类型
"message": {
"fileUrl": "https://resource-test.aliyuncs.com", // 图片链接
"fileName": "图片.png" // 图片名称
}
}
],
"visitorId": "1k49d8clec9e4ydoe4i", // 访客ID
"sender":"1k49d8clec9e4ydoe4i", // 消息发送人ID
"conversationId": "b88022da-55c9-487b-9894-9afbe2e47cc2", // 智能体机器人会话ID
"inputs": {}, // 随路参数, 会话相关信息
"responseMode":"streaming" // 响应模式
}
请求参数
名称 | 类型 | 是否必传 | 描述 |
---|---|---|---|
robotId |
String |
true |
智能体完成注册后网关生成的智能体机器人ID |
conversationId |
String |
false |
智能体机器人会话ID(智能体机器人第一次响应后返回的智能体机器人会话ID) |
visitorId |
String |
true |
访客id(企微客服渠道群聊时是群id) |
data |
List<Data> |
true |
消息内容 |
inputs |
Map<String, Object> |
false |
随路参数, 会话相关信息,详情见随路参数说明 |
responseMode |
String |
true |
响应模式
-streaming 流式输出 |
sender |
String |
false |
企微客服渠道群聊时是实际发送人的id,其他渠道该值和visitorId值一致 |
Data
名称 |
类型 |
是否必传 |
描述 |
messageType |
String |
true |
消息类型,详情见支持推送的消息类型 |
message |
Message |
true |
消息内容,详情见支持推送的消息类型 |
响应参数
流式响应事件
事件名称 |
描述 |
message |
流式输出的消息事件 |
end |
流式输出的结束事件 |
error |
流式输出的异常事件 |
message 事件
event: message
data: {
"event": "message", // 消息事件
"conversation_id": "45701982-8118-4bc5-8e9b-64562b4555f2", // 智能体机器人会话ID
"answer": [
{
"message_id": "9da23599-e713-473b-982c-4328d4f5c78a", // 消息ID
"content_type": "markdown", // 消息类型
"content": "这里是回复的消息内容", // 消息内容
"created_at": 1705395332000 // 创建时间
}
]
}
名称 |
类型 |
描述 |
event |
String |
事件类型:message,流式输出的消息事件 |
conversation_id |
String |
智能体会话ID |
answer |
List<Answer> |
回复内容 |
Answer
名称 |
类型 |
描述 |
content_type |
String |
消息类型 |
content |
String |
消息内容 |
created_at |
Long |
创建时间(毫秒),示例:1705395332000 |
message_id |
String |
消息id |
end 事件
event: end
data: {
"event": "end", // 结束事件
"conversation_id": "45701982-8118-4bc5-8e9b-64562b4555f2", // 智能体机器人会话ID
"answer": [
{
"metadata": {}
}
]
}
event: end
data: {
"event": "end", // 结束事件
"conversation_id": "45701982-8118-4bc5-8e9b-64562b4555f2", // 智能体机器人会话ID
"answer": [
{
"metadata": {
"command": "TRANSFER_HUMAN" // 转人工指令
}
}
]
}
名称 |
类型 |
描述 |
event |
String |
事件类型:end,流式输出的结束事件 |
conversation_id |
String |
智能体会话ID |
answer |
List<Answer> |
回复内容 |
Answer
名称 |
类型 |
描述 |
metadata |
Map<String, Object> |
拓展信息: |
error 事件
event: error
data: {
"event": "error", // 错误事件
"code": "invalid_param", // 错误码
"message": "参数错误" // 错误信息
}
名称 |
类型 |
描述 |
event |
String |
事件类型:error,流式输出的异常事件 |
code |
String |
错误码 |
message |
String |
错误信息 |
5.2.2. Coze方式
暂不支持
5.2.3. Dify方式
暂不支持
6. 在线机器人网关随路参数
6.1. 随路参数说明
字段 |
描述 |
botId |
智能体机器人ID |
userId |
企业ID |
uniqueId |
会话ID |
provider |
机器人类型(thirdPart) |
channel_id |
接入号ID |
channel_name |
微信公众号接入号:wx_gzh 其他接入号:to_be_added |
appName |
接入号名称 |
visitorId |
访客ID |
visitorName |
企微客服接入号:群名称 其他接入号:访客名称 |
contactType |
接入号类型:WEB, 详见通用参数会话渠道定义 |
user_province |
省份 |
user_city |
城市 |
user_customerId |
客户资料ID |
user_transferFailReason |
机器人转人工失败又路由到机器人的原因 |
timeslot |
在线客服路由导航的时间节点,满足时间条件传true,不满足传false |
groupChat |
企微客服群聊标识:true/false |
用户自定义信息(visitorExtraInfo),客户资料信息(customerFields), 在key前添加前缀user_ |
用户自定义参数:"name" : "zs", 实际给智能体:"user_name" : "zs" |
交互节点信息,用户在路由导航中配置的交互节点调用接口返回的数据 |
调用交互节点用户配置接口获取的数据,key和value都是用户返回的数据 |
分支节点信息,用户在路由导航中配置的分支节点信息数据 |
key是分支节点的名称,value是具体选择的分支名称 |
7. 在线机器人网关支持推送的消息类型
7.1. 支持推送的消息类型
消息类型 | 描述 |
---|---|
TEXT(100) |
文本消息 |
IMAGE(105) |
图片消息 |
7.2. 消息结构
7.2.1. 文本消息
名称 | 类型 | 描述 |
---|---|---|
content |
String |
文本消息内容 |
{
"robotId": "58656d16-b8b3-4722-83cd-37953f1ad566", // 智能体完成注册后网关生成的智能体机器人ID
"data": [
{
"messageType": 100, // 网关推送消息类型
"message": {
"content": "你能做什么,请用500字回复?" // 网关推送文本消息内容
}
}
],
"visitorId": "1k49d8clec9e4ydoe4i", // 访客ID
"sender":"1k49d8clec9e4ydoe4i", // 消息发送人ID
"conversationId": "b88022da-55c9-487b-9894-9afbe2e47cc2", // 智能体机器人会话ID
"inputs": {}, // 随路参数,会话相关信息
"responseMode":"blocking" // 响应模式
}
7.2.2. 图片消息
名称 | 类型 | 描述 |
---|---|---|
fileUrl |
String |
图片链接地址 |
fileName |
String |
图片名称 |
{
"robotId": "58656d16-b8b3-4722-83cd-37953f1ad566", // 智能体完成注册后网关生成的智能体机器人ID
"data": [
{
"messageType": 105, // 网关推送消息类型
"message": {
"fileUrl": "https://resource-test.aliyuncs.com", // 图片链接
"fileName": "图片.png" // 图片名称
}
}
],
"visitorId": "1k49d8clec9e4ydoe4i", // 访客ID
"sender":"1k49d8clec9e4ydoe4i", // 消息发送人ID
"conversationId": "b88022da-55c9-487b-9894-9afbe2e47cc2", // 智能体机器人会话ID
"inputs": {}, // 随路参数, 会话相关信息
"responseMode":"blocking" // 响应模式
}
8. 在线机器人网关支持发送的机器人指令
8.1. 支持的指令列表
指令编码(actionType) | 指令数据(actionData) | 描述 |
---|---|---|
TRANSFER_HUMAN |
只是转人工,不用传指令数据;转人工,转到指定队列,需要在actionData中传队列信息数据,key为路由导航中的队列变量节点配置的变量名,value为队列号 |
通过这个指令,将机器人会话转接到人工接待 |
8.2. 机器人指令具体说明
8.2.1. TRANSFER_HUMAN
转人工
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "action", // 响应类型
"answerContent":{
"actionType":"TRANSFER_HUMAN", // 指令类型
"actionData":{ // 指令数据
}
}
}
],
"metadata":{
}
}
}
转人工,指定转人工的队列, 在actionData中传指定队列数据,key为路由的队列变量节点配置的变量名,value为队列号
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "action", // 响应类型
"answerContent":{
"actionType":"TRANSFER_HUMAN", // 指令类型
"actionData":{ // 指令数据
"qno": "1111"
}
}
}
],
"metadata":{
}
}
}
9. 在线机器人网关支持发送的消息类型
9.1. 支持的消息类型
消息类型 | 子消息类型 | 描述 |
---|---|---|
TEXT(100) |
文本消息 |
|
RTF(101) |
富文本消息 |
|
CARD(102) |
GraphicCard(10201) |
图文消息 |
OPTION(103) |
OPTION(10301) |
选项列表消息 |
OPTION(103) |
CATEGORY_OPTION(10302) |
分类选项消息 |
OPTION(103) |
TOPIC_OPTION(10303) |
主题选项消息 |
FILE(104) |
文件消息 |
|
IMAGE(105) |
图片消息 |
|
MARKDOWN(109) |
markdown消息 |
|
COMBINATION(111) |
组合消息 |
9.2. 消息结构
9.2.1. 文本消息
名称 | 类型 | 描述 |
---|---|---|
content |
String |
文本消息内容 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 响应内容
"content": { // 响应消息对象
"content": "这里是文本消息回复内容。" // 文本消息内容
},
"type":100 // 消息类型
}
}
],
"metadata":{ // 随路信息
}
}
}
9.2.2. 富文本消息
名称 | 类型 | 描述 |
---|---|---|
content |
String |
富文本消息内容 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content": {
"content": "这里是富文本消息回复内容。<img src=\"https://www.baidu.com/2.png\"/>"
},
"type":101
}
}
],
"metadata":{
}
}
}
9.2.3. 卡片消息-图文消息
名称 | 类型 | 描述 |
---|---|---|
subtype |
Integer |
子消息类型 |
cards |
List<Card> |
消息对象 |
Card
名称 | 类型 | 描述 |
---|---|---|
url |
String |
点击跳转的链接地址 |
cover |
String |
封面图片链接地址 |
summary |
String |
主要内容 |
title |
String |
标题 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content":{
"subtype": 10201, // 子消息类型
"cards": [{
"url": "https://ha.baidu.com/qifdge/detail", // 跳转的链接地址
"cover": "https://img0.baidu.com/it/u=2191", // 封面图片链接地址
"summary": "主要内容", // 主要内容
"title": "标题" // 标题
}
]
},
"type":102 // 消息类型
}
}
],
"metadata":{ // 随路信息
}
}
}
9.2.4. 选项消息-选项列表
名称 | 类型 | 描述 |
---|---|---|
subtype |
Integer |
子消息类型 |
content |
String |
标题内容 |
background |
String |
背景图片 |
options |
List<Option> |
选项列表 |
Option
名称 |
类型 |
描述 |
content |
String |
选项内容 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content": {
"subtype": 10301, // 子消息类型
"content": "您可能想问以下问题:", // 选项标头内容
"background": "https://www.baidu.com/1.png", // 背景图片
"options": [
{
"content": "1.今天星期几" // 选项内容
},
{
"content": "2.今天天气怎么样"
}
]
},
"type":103
}
}
],
"metadata":{ // 随路信息
}
}
}
9.2.5. 选项消息-分类选项列表
名称 | 类型 | 描述 |
---|---|---|
subtype |
Integer |
子消息类型 |
content |
String |
标题内容 |
background |
String |
背景图片 |
style |
String |
展示样式 |
options |
List<CategoryOption> |
选项列表 |
CategoryOption
名称 |
类型 |
描述 |
categoryName |
String |
分类名称 |
options |
List<Option> |
选项列表 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content": {
"subtype": 10302, // 子消息类型
"content": "您可能想问以下问题:", // 选项标头内容
"background": "https://www.baidu.com/1.png", // 背景图片
"style": "Horizontal", // 展示样式
"options": [
{
"categoryName": "分类名称1", // 分类名称
"options": [
{
"content": "1.今天星期几" // 选项内容
},
{
"content": "2.今天天气怎么样" // 选项内容
}
]
},
{
"categoryName": "分类名称2", // 分类名称
"options": [
{
"content": "1.今天星期几" // 选项内容
},
{
"content": "2.今天天气怎么样" // 选项内容
}
]
}
]
},
"type":103
}
}
],
"metadata":{ // 随路信息
}
}
}
9.2.6. 选项消息-主题选项列表
名称 | 类型 | 描述 |
---|---|---|
subtype |
Integer |
子消息类型 |
background |
String |
背景图片 |
options |
List<TopicOption> |
选项列表 |
TopicOption
名称 |
类型 |
描述 |
content |
String |
主题标题 |
icon |
String |
主题图标链接 |
options |
List<CategoryOption> |
分类列表 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content": {
"subtype": 10303, // 子消息类型
"background": "https://www.baidu.com/1.png" // 背景图片
"options": [
{
"icon": "https://www.baidu.com/2.png", // 主题图标
"content": "主题1", // 主题标题
"categories":[
{
"categoryName": "分类名称1", // 分类名称
"options": [
{
"content": "1.今天星期几" // 选项内容
},
{
"content": "2.今天天气怎么样" // 选项内容
}
]
},
{
"categoryName": "分类名称2", // 分类名称
"options": [
{
"content": "1.今天星期几" // 选项内容
},
{
"content": "2.今天天气怎么样" // 选项内容
}
]
}
]
}, {
"icon": "https://www.baidu.com/2.png", // 主题图标
"content": "主题2", // 主题标题
"categories":[
{
"categoryName": "分类名称1", // 分类名称
"options": [
{
"content": "1.今天星期几" // 选项内容
},
{
"content": "2.今天天气怎么样" // 选项内容
}
]
},
{
"categoryName": "分类名称2", // 分类名称
"options": [
{
"content": "1.今天星期几" // 选项内容
},
{
"content": "2.今天天气怎么样" // 选项内容
}
]
}
]
}
]
},
"type":103
}
}
],
"metadata":{ // 随路信息
}
}
}
9.2.7. 文件消息
名称 | 类型 | 描述 |
---|---|---|
fileUrl |
String |
文件链接地址 |
fileName |
String |
文件名称 |
fileSize |
Long |
文件大小 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content": {
"fileUrl": "http://www.baidu.com/1.txt", // 文件链接
"fileName": "1.txt", // 文件名称
"fileSize": 123456 // 文件大小
},
"type":104
}
}
],
"metadata":{ // 随路信息
}
}
}
9.2.8. 图片消息
名称 | 类型 | 描述 |
---|---|---|
fileUrl |
String |
图片链接地址 |
fileName |
String |
图片名称 |
fileSize |
Long |
图片大小 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content": {
"fileUrl": "http://www.baidu.com/1.png", // 图片链接
"fileName": "1.png", // 图片名称
"fileSize": 123456 // 图片大小
},
"type":105
}
}
],
"metadata":{ // 随路信息
}
}
}
9.2.9. markdown消息
名称 | 类型 | 描述 |
---|---|---|
content |
String |
markdown文本消息内容 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content": {
"content": "这里是markdown文本消息回复内容。"
},
"type":109
}
}
],
"metadata":{ // 随路信息
}
}
}
9.2.10. 组合消息
名称 | 类型 | 描述 |
---|---|---|
combinationList |
List<Message> |
其他类型消息可以任意组合在一起 |
Message
名称 | 类型 | 描述 |
---|---|---|
type |
Integer |
消息类型 |
content |
Object |
其他任意消息对象 |
{
"status": 200, // 响应状态
"code": "success", // 响应编码
"data": {
"conversationId": "45701982-8118-4bc5-8e9b-64562b4555f2", // 机器人会话ID
"answers": [ // 响应内容
{
"answerType": "message", // 响应类型
"answerContent": { // 消息实体
"content": {
"combinationList": [{
"type": 100,
"content": {
"content": "这里是文本消息回复内容。" // 文本消息内容
}
}, {
"type": 105,
"content": {
"fileUrl": "http://www.baidu.com/1.png", // 图片链接
"fileName": "1.png", // 图片名称
"fileSize": 123456 // 图片大小
}
}
]
},
"type":111
}
}
],
"metadata":{ // 随路信息
}
}
}