[AmiVoice API] ワンタイムAPPKEY発行APIのレスポンス末尾に改行コード(\n)が付与される問題
11月18日 10:00 訂正: 記事公開当初は改行コードではなく復帰コード(\r)と記載しておりました。正しくは改行コード(\n)です。謹んでお詫びを申し上げます。
ワンタイムAPPKEY発行APIで意図せずにレスポンス末尾に改行コード(\n)が付与される問題が発生しておりました。現在は復旧しております。大変ご迷惑をおかけしてしまい申し訳ございません。以下に詳細を報告いたします。
◆現象:
ワンタイムAPPKEY発行APIにおいて、末尾に改行コード(\n)が付与されるようになっておりました。そのため、クライアントからのリクエストの方法によっては、ワンタイムAPPKEY以降のクライアントパラメータが正しくサーバに送信されないという問題が起きていた可能性があります。
◆障害発生期間
2024年9月18日から極稀に問題が発生する可能性がありました。2024年11月12日からは約30〜50%の確率で問題が発生し、以下の時間帯ではすべてのリクエストに対して問題が発生しておりました。
発生日時: 2024/11/13 12:30
復旧日時: 2024/11/15 1:14
◆原因
ワンタイムAPPKEY発行APIのエンドポイント(https://acp-api.amivoice.com/issue_service_authorization)では、結果を生成するためのテンプレートを使っております。このテンプレートの末尾には、改行コードがあり、従来のバージョンの音声認識サーバではこれらの特別に削除することを行っていました。新しいバージョンの音声認識サーバでは末尾の改行コードを特別扱いせずにテンプレートに従ってそのまま出力するように変更されていたため、ワンタイムAPPKEYの末尾に改行コードが付与される結果となりました。
◆現状
テンプレートを修正して対策済み。
◆対策
本来であればリリース前のテストで意図しない動作であることが検出されるはずでした。今回検出できなかったのは、テスト対象としてワンタイムAPPKEYのエンドポイントを含めていなかったためです。これは意図していないことであり、今後はワンタイムAPPKEYをテスト対象とするように変更いたします。この対策により、同様の問題がおきた場合でもリリース前に発見できるようになります。
本事象は既に回復し、現時点でサービスは順調に稼働しています。皆様には、ご迷惑とご心配をお掛けしてしまいましたことを、深くお詫び致します。