レスポンスコードとメッセージ
ここでは処理に失敗したときのレスポンスについて説明します。
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
、+
、-
、%
のときはクライアントエラーです。エラーの原因が解決されない場合、リトライしても同じ結果になりますので注意してください。