转录结果回调接口
更新时间:
接收长音频异步转录结果,通过 taskId 关联任务。
POSTcallbackUrl
针对于长音频异步转录接口的回调,用于将异步转录结果推送给客户,客户需要按照以下规范实现接收结果的接口。
回调配置
结果将以 taskId 为维度,将转录结果推送给客户。如需使用回调功能,
在.../recognize/submit接口提交任务时,携带对应的回调参数。见识别submit接口。
回调签名
客户可通过自定义的密钥信息字段进行接口鉴权。具体方式如下:
签名算法
-
将接受的的请求体参数按照ASCII码表升序顺序排序。
-
将排序好的参数 append 成字符串。格式为:key1 + value1 +key2 + value2…。
-
将配置完回调参数后生成的密钥 append 到 2> 步骤生成的字符串后。
-
将 3> 步骤生成的字符串使用 UTF-8 进行编码,使用 MD5 进行加密生成 signature 参数值,并将其放入 请求 header 中。
签名示例
/**
* 生成签名
* @param secretKey 后台密钥
* @param params 接口请求参数名和参数值map,不包括signature参数名
* @return
*/
public static String signature(String secretKey, Map<String, String> params){
String[] keys = params.keySet().toArray(new String[0]);
Arrays.sort(keys);
StringBuilder signBuilder = new StringBuilder();
for (String key : keys) {
signBuilder.append(key).append(params.get(key));
}
signBuilder.append(secretKey);
try {
return DigestUtils.md5Hex(signBuilder.toString().getBytes("UTF-8"));
} catch (UnsupportedEncodingException e) {
// error
}
return null;
}
接入说明
- 协议说明:客户方需提供支持 http 协议的 post 请求方式的接口。
- 接口性能:客户需保持接口的稳定性与可靠性。
- 失败重试:我们在收到客户回调响应后,如果不符合规定的接受成功规范,则认为此次推送失败。将以规定间隔时间 10s 推送 3 次,如果第三次继续失败将不再继续推送。如要获取结果则调用主动查询结果接口。
请求参数
请求头
名称
类型
必填
说明
Content-Type
String
是
固定值:application/json
signature
String
是
签名,验证请求的合法性,参照鉴权算法
请求体
名称
类型
说明
appId
String
所属项目编号
taskId
String
提交异步转录任务时,返回的任务id
result
String
识别结果
checkType
String
检测项目标识,语音识别 ASR
请求示例
{
"appId": "90800001",
"taskId": "test_3840b2c4-5e58-4699-9375-8bdab03c39b5_1710140799927",
"result": "{\"errorCode\":0,\"errorMessage\":\"OK\",\"taskId\":\"test_3840b2c4-5e58-4699-9375-8bdab03c39b5_1710140799927\",\"status\":0,\"transcripts\":[{\"startTime\":0.0,\"endTime\":5.01,\"text\":\"您好,欢迎使用云上语音识别服务。\"}],\"duration\":19010,\"languageCode\":\"zh-CN\"}",
"checkType": "ASR",
"userId": "12345678"
}
result 为 JSON 字符串,解析后的字段结构请参考:
HTTP 响应
客户接口接收到我们回调的结果后,需要返回应答信息,接口响应http status为 200 或者 code 状态码为 0,当回调处理异常时,应答的 code 状态码应为 500,或者 4xx; 应答信息为json格式,字段定义如下:
名称
类型
必填
说明
code
Number
是
应答code,code 值为 0 代表此次回调成功
message
String
否
具体描述信息
接收长音频异步转录结果,通过 taskId 关联任务。
POST
callbackUrl针对于长音频异步转录接口的回调,用于将异步转录结果推送给客户,客户需要按照以下规范实现接收结果的接口。
回调配置
结果将以 taskId 为维度,将转录结果推送给客户。如需使用回调功能,
在.../recognize/submit接口提交任务时,携带对应的回调参数。见识别submit接口。
回调签名
客户可通过自定义的密钥信息字段进行接口鉴权。具体方式如下:
签名算法
-
将接受的的请求体参数按照ASCII码表升序顺序排序。
-
将排序好的参数 append 成字符串。格式为:key1 + value1 +key2 + value2…。
-
将配置完回调参数后生成的密钥 append 到 2> 步骤生成的字符串后。
-
将 3> 步骤生成的字符串使用 UTF-8 进行编码,使用 MD5 进行加密生成 signature 参数值,并将其放入 请求 header 中。
签名示例
/**
* 生成签名
* @param secretKey 后台密钥
* @param params 接口请求参数名和参数值map,不包括signature参数名
* @return
*/
public static String signature(String secretKey, Map<String, String> params){
String[] keys = params.keySet().toArray(new String[0]);
Arrays.sort(keys);
StringBuilder signBuilder = new StringBuilder();
for (String key : keys) {
signBuilder.append(key).append(params.get(key));
}
signBuilder.append(secretKey);
try {
return DigestUtils.md5Hex(signBuilder.toString().getBytes("UTF-8"));
} catch (UnsupportedEncodingException e) {
// error
}
return null;
}
接入说明
- 协议说明:客户方需提供支持 http 协议的 post 请求方式的接口。
- 接口性能:客户需保持接口的稳定性与可靠性。
- 失败重试:我们在收到客户回调响应后,如果不符合规定的接受成功规范,则认为此次推送失败。将以规定间隔时间 10s 推送 3 次,如果第三次继续失败将不再继续推送。如要获取结果则调用主动查询结果接口。
请求参数
请求头
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
Content-Type |
String |
是 | 固定值:application/json |
signature |
String |
是 | 签名,验证请求的合法性,参照鉴权算法 |
请求体
| 名称 | 类型 | 说明 |
|---|---|---|
appId |
String |
所属项目编号 |
taskId |
String |
提交异步转录任务时,返回的任务id |
result |
String |
识别结果 |
checkType |
String |
检测项目标识,语音识别 ASR |
请求示例
{
"appId": "90800001",
"taskId": "test_3840b2c4-5e58-4699-9375-8bdab03c39b5_1710140799927",
"result": "{\"errorCode\":0,\"errorMessage\":\"OK\",\"taskId\":\"test_3840b2c4-5e58-4699-9375-8bdab03c39b5_1710140799927\",\"status\":0,\"transcripts\":[{\"startTime\":0.0,\"endTime\":5.01,\"text\":\"您好,欢迎使用云上语音识别服务。\"}],\"duration\":19010,\"languageCode\":\"zh-CN\"}",
"checkType": "ASR",
"userId": "12345678"
}
result 为 JSON 字符串,解析后的字段结构请参考:
HTTP 响应
客户接口接收到我们回调的结果后,需要返回应答信息,接口响应http status为 200 或者 code 状态码为 0,当回调处理异常时,应答的 code 状态码应为 500,或者 4xx; 应答信息为json格式,字段定义如下:
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
code |
Number |
是 | 应答code,code 值为 0 代表此次回调成功 |
message |
String |
否 | 具体描述信息 |