レスポンスコードとメッセージ
ここでは処理に失敗したときのレスポンスについて説明します。
HTTP インタフェース
同期 HTTP・非同期 HTTP の音声認識ジョブの作成リクエスト
音声認識のリクエストに失敗すると、音声認識結果のトップレベルにあるcodeとmessageに、音声認識に失敗した原因を表すレスポンスコードとエラーメッセージが設定されます。詳細は後述の表を参照してください。
例:
{
"results": [
{
"tokens": [],
"tags": [],
"rulename": "",
"text": ""
}
],
"text": "",
"code": "-",
"message": "received illegal service authorization"
}
同期 HTTP の場合、認識処理に成功したときは、codeとmessageは空文字("")になります。
例:
...
"utteranceid": "20220602/14/018122d65d370a30116494c8_20220602_141442",
"text": "アドバンスト・メディアは、人と機械との自然なコミュニケーションを実現し、豊かな未来を創造していくことを目指します。",
"code": "",
"message": ""
...
非同期 HTTP の場合、ジョブの作成リクエストに成功したときは、codeとmessageを返しません。
例:
{"sessionid":"017ac8786c5b0a0504399999","text":"..."}
非同期 HTTP の結果・状態取得
非同期 HTTP の場合、音声認識のリクエストが成功しても、音声認識ジョブの処理中に何らかの原因で処理を中断することがあります。このとき結果・状態取得を行うとstateがerrorになり、error_messsageには失敗の原因を表すエラーメッセージが設定されます。error_messageには、音声認識プロセスの失敗原因を表すレスポンスコード(dsrh_code)と出力メッセージ(amineth_message)が含まれている場合があります。レスポンスコードとメッセージの意味は、レスポンスコードとメッセージの詳細にある表を参照してください。
例:
{
"status": "error",
"audio_md5":"40f59fe5fc7745c33b33af44be43f6ad",
"audio_size":306980,
"service_id":"{YOUR_SERVICE_ID}",
"session_id":"017c25ec12c00a304474a999",
"error_message": "ERROR: Failed to transcribe in recognition process - amineth_result=0, amineth_code='o', amineth_message='recognition result is rejected because confidence is below the threshold'"
}
クライアントエラー
レスポンスコードとメッセージの詳細の表にあるレスポンスコードが>、o、+、-、%のときはクライアントエラーです。エラーの原因が解決されない場合、リトライしても同じ結果になりますので注意してください。
その他のエラーは基盤の問題の可能性が高いため、しばらく待ってからリトライしてください。
音声データ送信失敗 (レスポンスコード >)
原因
このエラーが起きるのは以下の場合です。
- 同期/非同期 HTTP インタフェース で送信した音声データに音声データが含まれていないとき
対策
このエラーが発生した場合、以下のことを確認してください。
- 音声データを送信しているかどうか
- 送信した音声が空のファイル(ゼロバイトのファイル)ではないか
- 送信したコンテナフォーマットのボディに音声データが含まれているかどうか
データは送信していても、音声が含まれない場合は、後述のoを返します。