跳至主要内容

p命令数据包/p命令响应数据包

p命令数据包和p命令响应数据包是一对概念,但只有在服务器端发生错误时才会返回p命令响应数据包。只要没有收到表示错误发生的p命令响应数据包,客户端就可以根据需要继续通过p命令数据包发送语音数据。

p命令数据包

发送语音数据。

格式

类型 BINARY

p<audio_data>

<audio_data>是在会话开始时通过s命令指定的音频格式的语音数据。在这个语音数据的开头添加0x70('p'的ASCII码),然后以二进制帧发送。

语音识别服务器会依次处理接收到的语音数据,检测语音的开始和结束,并实时返回每个语音段的中间识别结果和最终识别结果。语音识别服务器会继续处理接收到的语音数据并返回结果,直到收到客户端发送的e命令数据包,或者服务器端设置的会话超时发生。

p命令响应数据包

作为对p命令的响应,从服务器发送到客户端。

格式

类型 TEXT

成功时的响应数据包

没有特定的响应表示发送成功。

发送失败时的响应数据包

p <error_message>

如果服务器端在接收p命令时处理失败,会在p后面加一个半角空格,然后返回错误消息。

错误消息

客户端错误

这是源于客户端的错误。请排除原因后,从s命令请求重新开始。

错误消息内容
p received unsupported audio format发送的语音数据是不支持的音频格式。请检查s命令中指定的音频格式,以及通过p命令发送的数据。

由限制导致的错误

当触及限制事项时发生。请从s命令请求重新开始。

错误消息内容
p can't feed audio data to recognizer server在语音识别服务器不处于接收音频的状态时发送了语音数据。当超过限制事项中的非语音区间强制断开时间时会发生。极少数情况下,也可能由于基础系统的拥堵而发生。
p session timeout occurred发生了会话超时。当超过限制事项中的会话最大时间时会发生。服务器端已执行断开处理。