LoginSignup
1
1

More than 1 year has passed since last update.

Twilioでwavファイルが502エラーになる原因

Last updated at Posted at 2016-01-05

2023年5月1日を持ちまして、株式会社KDDIウェブコミュニケーションズのTwilioリセール事業が終了したため、本記事に記載されている内容は正確ではないことを予めご了承ください。

はじめに

Twilioで音声ファイルを再生する際に、以下のような502エラーが発生する場合の原因を記録しておきます。
スクリーンショット 2016-01-05 15.50.13.png
この例では、サーバーからwavファイルをダウンロードしてきた際に、502エラーが発生しましたという内容になっていますが、実際Webサーバーのログを見る限りでは、正しくファイルは提供しています(ステータスコード「200」で応答している)。
試しに、ブラウザからwavファイルを直接指定した場合も、正しく音声が再生されます。
すなわち、Webサーバーはステータスコード「200」で返しているのに、Twilioで呼び出すと502エラーになってしまうという現象です。

原因

結論から言うと、Twilio側でwavファイルが正しく認識されていないのが原因です。
例えば、wavファイルが圧縮されてしまっている場合などが該当します。
気をつけなくてはいけないのは、圧縮されているwavファイルでも、先ほどのブラウザで再生されたように、多くの場合、ただしく再生されます。よって、正しいwavファイルなのに、Twilioだとエラーになってしまう→Twilioのバグじゃないの?的な間違った認識をしがちです。

調査方法

wavファイルが圧縮されているかを確認するのはなかなか難しいのですが、直接wavファイルの中身を覗いてしまうのが一番確実です。
どうやってやるかというと、バイナリエディタを使います。Macユーザであれば、0xEDというフリーのバイナリエディタがおすすめです。
バイナリエディタでwavファイルを開くと、以下の様に内容を表示することができます。
スクリーンショット 2016-01-05 16.03.42.png
注目するべきは先頭の4バイトです。正しいwavファイルの場合は、この画面のように先頭が52494646('RIFF')になっていて、さらに"WAVEfmt"という記述も記載されています。
もし先頭がこのようになっていない場合は、正しくない(Twilioでは利用できない)wavファイルですので、正しくファイルを作りなおして下さい。

参考

WAVファイルフォーマット

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1