A イベントパケット - AmiVoice Cloud Platform

認識処理が完了し、認識結果が受容されたときに、サーバからクライアントに送信されます。

形式

タイプ JSON

A <result>

<result>には、以下のJSONが格納されています。

キーキーキー説明
results 「発話区間の認識結果」の配列 
 confidence 信頼度(0~1の値。 0:信頼度低, 1:信頼度高) 
starttime  発話開始時間  (音声データの先頭が0)
endtime  発話終了時間  (音声データの先頭が0)
tags  未使用(空配列)
rulename  未使用(空文字)
text認識結果テキスト
tokens  認識結果テキストの形態素の配列 
 written  形態素(単語)の表記 
confidence  形態素の信頼度(認識結果の尤度)
starttime  形態素の開始時間  (音声データの先頭が0)
endtime  形態素の終了時間(音声データの先頭が0) 
spoken  形態素の読み
utteranceid  認識結果情報ID  *1
text  「発話区間の認識結果」の全てを結合した全体の認識結果テキスト
code  結果を表す1文字のコード *2
JSONに含まれるcodeとmessage一覧を参照のこと。
message  エラー内容を表す文字列 *2
JSONに含まれるcodeとmessage一覧を参照のこと。

*1
認識結果情報IDは、WebSocket音声認識プロトコルの場合は、発話区間毎の認識結果情報に付与されたIDとなります。HTTP音声認識プロトコルの場合は、1セッションでアップロードされた(複数の発話区間を含む可能性のある)音声データ全体の認識結果情報に付与されたIDとなります。

*2 
認識成功時は
    body.code == “” かつ body.message == “” かつ body.text != “”
認識失敗時は
    body.code != “” かつ  body.message != “” かつ body.text == “”
となります。

JSONに含まれるcodeとmessage一覧

codemessage説明
“+”“received unsupported audio format”サポート対象外の音声データ形式の音声データを受信
“-““received illegal service authorization”不正なサービス認証キー文字列を受信
“!”“failed to connect to recognizer server”音声認識サーバ内での通信に失敗(DSRM または DSRS への接続に失敗)
“>”“failed to send audio data to recognizer server”音声認識サーバ内での通信に失敗(DSRS への音声データの送信に失敗)
“<““failed to receive recognition result from recognizer server”音声認識サーバ内での通信に失敗(DSRS からの認識結果の受信に失敗)
“#”“received invalid recognition result from recognizer server”音声認識サーバ内での通信に失敗(DSRS から受信した認識結果の形式が不正)
“$”“timeout occurred while receiving audio data from client”クライアントからの音声データ受信中に無通信タイムアウトが発生した
“%”“received too large audio data from client”クライアントから受信した音声データバイト数が大きすぎる(WebSocket音声認識APIでは発生しない)
“o”
“recognition result is rejected because confidence is below the threshold”認識結果全体の信頼度が信頼度しきい値を下回ったために認識に失敗
“b”“recognition result is rejected because recognizer server is busy”音声認識サーバが混んでいるために認識に失敗
“x”“recognition result is rejected because grammar files are not loaded”辞書が読み込まれていないために認識に失敗
“c”“recognition result is rejected because the recognition process is cancelled”認識処理中断要求がなされたために認識に失敗
“t”“recognition result is rejected because timeout occurred during recognition process”認識処理がタイムアウトするなどして認識処理が中断されたために認識に失敗
“?”“recognition result is rejected because fatal error occurred in recognizer server”音声認識サーバで認識中に致命的エラーが発生したために認識に失敗
“s”“recognition result is rejected because recognition process was not started before timeout occurred”クライアントから受信した音声データが音声データキューに入れられてからある一定時間以内に認識処理が開始しなかったために認識失敗
“e”“recognition result is rejected because recognition process was not finished before timeout occurred”クライアントから受信した音声データが音声データキューに入れられてからある一定時間以内に認識処理が完了しなかったために認識失敗
“”“”認識成功

レスポンス例

{
  "results":[
    {"tokens[
      {"written":"www",
       "confidence":1.00,
       "starttime":16020,
       "endtime":16916,
       "spoken":"\u3068\u308a\u3077\u308b\u3060\u3076\u308b"
      }
    ],
    "confidence":0.997,
    "starttime":15700,
    "endtime":17188,
    "tags":[],
    "rulename":"",
    "text":"www"
    }
  ],
  "utteranceid":"20191127/ja_ja-amivoicecloud-16k-user@016ead249db00a3011a68536-1127_225504",
  "text":"www",
  "code":"",
  "message":""
}