语音交互服务 SIS-websocket接口:响应结果
响应结果
- 开始识别响应
由于WebSocket是全双工的,因此响应就是从服务器端发送给客户端的消息,但也并不是所有的请求信息都有一条对应的响应。服务器端收到“开始识别”请求时,会给出如下响应消息,以json字符串形式放置在text message中。
表8 响应参数 参数名
参数类型
说明
resp_type
String
响应类型。参数值为START,表示开始识别响应。
trace_id
String
服务内部的令牌,可用于在日志中追溯具体流程。
示例
{ "resp_type": "START", "trace_id": "567e8537-a89c-13c3-a882-826321939651" }
- 事件响应
服务器端检测到某些事件时,会给出如下响应消息,以json字符串形式放置在text message中。
表9 响应参数 参数名
参数类型
说明
resp_type
String
响应类型。参数值为EVENT,表示开始识别响应。
trace_id
String
服务内部的令牌,可用于在日志中追溯具体流程。
event
String
具体的事件, 一句话识别 中仅会出现"EXCEEDED_AUDIO”,当输入音频超过1min时,会返回该事件。
timestamp
Integer
保留字段。将来会用于此事件发生的具体时间,以会话开始作为0点,单位为ms。
示例
{ "resp_type": "EVENT", "trace_id": "567e8537-a89c-13c3-a882-826321939651", "event": "EXCEEDED_AUDIO", "timestamp": 1500 }
- 结果响应
服务端在收到客户端发送的连续音频数据后, 当服务端识别出结果后会实时向客户端按句推送识别结果响应消息, 以json字符串形式放置在text message中。
表10 响应参数 参数名
参数类型
说明
resp_type
String
响应类型。参数值为RESULT,表示识别结果响应。
trace_id
String
服务内部的令牌,可用于在日志中追溯具体流程。
segments
Array of objects
多句结果。
请参考表 segment 数据结构。
表11 segment 数据结构 参数名
参数类型
说明
start_time
Integer
一句的起始时间戳,单位为ms。
end_time
Integer
一句的结束时间戳,单位为ms。
is_final
Boolen
true表示是最终结果, false表示为中间临时结果。
result
Object
调用成功表示识别结果,调用失败时无此字段。
请参考表 result数据结构。
表12 result数据结构 参数名
参数类型
说明
text
String
识别结果。
score
Float
识别结果的置信度,取值范围:0~1。此值仅会在最终结果时被赋值,在中间结果时统一置为“0.0”。
说明:目前置信度作用不是太大,请勿过多依赖此值。
word_info
Array of Object
分词输出列表。
表13 word_info 数据结构 参数名
是否必选
参数类型
说明
start_time
否
Integer
起始时间
end_time
否
Integer
结束时间
word
否
String
分词
示例
{ "resp_type": "RESULT", "trace_id": "567e8537-a89c-13c3-a882-826321939651", "segments": [ { "start_time": 100, "end_time": 1500, "is_final": false, "result": { "text": "第一句中间结果", "word_info": [ { "start_time": 100, "end_time": 800, "word": "第一" }, { "start_time": 800, "end_time": 1000, "word": "句" }, { "start_time": 1000, "end_time": 1500, "word": "结果" } ], "score": 0.0 }, }, ] }
- 错误响应
- 配置串错误,包括存在不识别的配置串,或者配置串值的范围不合法。
- 时序不正确,比如连续发送两次“开始识别”指令。
- 识别过程中发生错误,比如音频解码发生错误。
表14 响应参数 参数名
参数类型
说明
resp_type
String
参数值为ERROR,表示错误响应。
trace_id
String
服务内部的跟踪令牌,可用于在日志中追溯具体流程。
在某些错误情况下,可能没有此字段。
error_code
String
错误码列表。详细错误码解释,请参见错误码。
error_msg
String
返回错误信息。
示例
{ "resp_type": "ERROR", "trace_id": "567e8537-a89c-13c3-a882-826321939651", "error_code": "SIS.0002", "error_msg": "***" }
- 结束识别响应
服务器端收到“结束识别”请求时或 语音识别 过程中发生错误,服务端会向客户端推送如下响应消息,以json字符串形式放置在text message中。
表15 响应参数 参数名
参数类型
说明
resp_type
String
参数值为END,表示结束识别响应。
trace_id
String
服务内部的令牌,可用于在日志中追溯具体流程。
reason
String
结束原因,详情请参见表 结束原因表。
示例
{ "resp_type": "END", "trace_id": "567e8537-a89c-13c3-a882-826321939651", "reason": "NORMAL", }