通过http-sse进行流式调用。
一、获取流式连接信息
调用ApplyForStreamAccessToken - 获取流式调用的连接信息接口获取。
说明
获取的连接信息有效期2小时,必须在到期前重新获取
二、请求对话机器人SSE流式接口
2.1 访问路径
访问路径:
https://alime-ws.aliyuncs.com/sse/paas4Json/{accessToken}/{channelId}/{sign}/{timestamp}
2.2 请求路径参数解释
参数 | 含义 |
accessToken | 认证Token |
channelId | 流式通道 |
sign | 签名 |
timestamp | 时间戳 |
2.3 请求body格式(json)
字段 | 类型 | 含义 |
messageId | String | 每条消息的唯一id,保证唯一 |
action | String | TongyiBeebotChat接口的Action |
version | String | 2022-04-08 |
data | List | TongyiBeebotChat接口的请求参数 data格式: "data": [ { "type": "JSON_TEXT", "value": "" } ] value中传入TongyiBeebotChat接口请求参数JSON序列化的字符串 |
举例:
{
"messageId": "shdlfjldjfldf",
"action":"TongyiBeebotChat",
"version":"2022-04-08",
"data": [
{
"type": "JSON_TEXT",
"value": "{"InstanceId":"xxx","Utterance":"你好"}"
}
]
}
2.4 响应结果格式
字段 | 类型 | 含义 |
success | boolean | 是否成功 |
code | String | 错误码(success为false时) |
message | String | 错误提示(success为false时) |
messageId | String | 2.3中请求的messageId |
requestId | String | 每段响应推送的requestId |
data | List | 消息格式 data格式: "data": [ { "type": "JSON_TEXT", "value": "" } ] value中的值为具体接口的响应值,参照接口文档:TongyiBeebotChat |
三、其他
加签协议,java参考代码
private static final char[] toDigits = new char[]{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
public static String getSigin(String streamSecret, String timestamp) throws NoSuchAlgorithmException {
StringBuilder sb = new StringBuilder();
sb.append("streamSecret=").append(streamSecret)
.append("×tamp=").append(timestamp);
byte[] md5Str= md5(sb.toString());
return encodeHex(md5Str,toDigits);
}
private static byte[] md5(String text) throws NoSuchAlgorithmException {
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] md5Bytes = md.digest(StringUtils.getBytesUtf8(text));
return md5Bytes;
}
private static String encodeHex(byte[] data, char[] toDigits) {
int l = data.length;
char[] out = new char[l << 1];
int i = 0;
for(int var5 = 0; i < l; ++i) {
out[var5++] = toDigits[(240 & data[i]) >>> 4];
out[var5++] = toDigits[15 & data[i]];
}
return new String(out);
}
反馈
- 本页导读 (0)
文档反馈