发送流式响应消息

最近更新时间:2024-07-09 18:05:51

我的收藏

功能说明

通过本 API 可以给机器人发送流式响应消息。
对于一段完整文本,可能需要多次调用本 API 将文本的分块依次输出给客户端。
首次调用本 API 时,后台将产生一个 MsgKey 用于表示本次产生的消息,后续调用需要将该 MsgKey 作为参数回传给IM服务器。
如果 App 使用 TUIKit 7.7.5282 版本及以上,则 App 可以自动展示流式输出消息效果。
如果 App 没有使用 TUIKit,则需要根据“流式文本输出”协议自行展示流式输出效果。

说明

请求 URL 示例

https://xxxxxx/v4/openim_robot_http_svc/send_stream_msg?sdkappid=88888888&identifier=admin&usersig=xxx&random=99999999&contenttype=json

请求参数说明

下表仅列出调用本接口时涉及修改的参数及其说明,更多参数详情请参考 REST API 简介
参数
说明
xxxxxx
SDKAppID 所在国家/地区对应的专属域名:
中国:console.tim.qq.com
新加坡:adminapisgp.im.qcloud.com
首尔: adminapikr.im.qcloud.com
法兰克福:adminapiger.im.qcloud.com
硅谷:adminapiusa.im.qcloud.com
雅加达:adminapiidn.im.qcloud.com
v4/openim_robot_http_svc/send_stream_msg
请求接口
sdkappid
创建应用时即时通信 IM 控制台分配的 SDKAppID
identifier
必须为 App 管理员账号,更多详情请参见 App 管理员
usersig
App 管理员账号生成的签名,具体操作请参见 生成 UserSig
random
请输入随机的32位无符号整数,取值范围0 - 4294967295
contenttype
请求格式固定值为json

最高调用频率

200次/秒。

请求包示例

首次发送流式文本
{
"From_Account": "@RBT#my_bot",
"To_Account": "user01",
"Chunk": "hello, "
}
后续调用本API继续输出文本
{
"From_Account": "@RBT#my_bot",
"To_Account": "user01",
"Chunk": "world",
"MsgKey": "606781340_3986845397_1706000918",
"Finish": 1
}

请求包字段说明

字段
类型
属性
说明
From_Account
String
必填
消息发送方 UserID(用于指定发送消息方账号)
To_Account
String
必填
消息接收方 UserID
Chunk
String
必填
流式文本消息其中的某一段文字
MsgKey
String
选填
首次调用 API 时不填,从第二次调用开始需要将该字段回传
Finish
Integer
选填
最后一次调用时,标识该流式输出已经结束

应答包体示例

正常应答
{
"ActionStatus":"OK",
"ErrorInfo":"",
"ErrorCode":0,
"MsgKey":"606781340_3986845397_1706000918"
}

应答包字段说明

字段
类型
说明
ActionStatus
String
请求处理的结果:
OK:表示处理成功
FAIL:表示失败
ErrorCode
Integer
错误码:
0:表示成功
非0:表示失败
ErrorInfo
String
错误信息。
MsgKey
String
IM 后台返回的消息唯一标识,用于后续文本输出。

错误码说明

除非发生网络错误(例如502错误),否则该接口的 HTTP 返回码均为200。真正的错误码,错误信息是通过应答包体中的 ErrorCode、ErrorInfo 来表示的。 公共错误码(60000到79999)参见 错误码 文档。 本 API 私有错误码如下:
错误码
描述
10002
系统内部错误,请重试。
10004
参数有误,请检查请求参数。