Quantcast
Channel: レンタルサーバーのCPIスタッフブログ
Viewing all articles
Browse latest Browse all 131

Twilioの音声ファイルを取得し、Webサーバーに保存

$
0
0

Twilioを使って電話Webアプリケーションを構築しよう」の第 9 回目の記事は、通話音声を録音したファイルを取得し、Webサーバーに保存します。

 

方法

 

  1. 第8回目で作成した「twilio_call_end.php」を開き、下記のコードを追記しましょう。
    // 通話音声を保存し削除する
    $url  = $_POST["RecordingUrl"];
    $path = './twilio_record_file.mp3';
    
    // 1分を超えるとタイムアウトとなります。
    curl_setopt($ch, CURLOPT_TIMEOUT, 60);
    
    // fopenでファイルポインタを開いてから、curlのCURLOPT_FILEオプションを使い、
    // 対象ファイルを保存します。PHPのメモリリミットに関係せず、
    // ファイルを保存することができるようになります。
    $fp = fopen($path, 'w');
    $ch = curl_init($url.'mp3');
    curl_setopt($ch, CURLOPT_FILE, $fp);
    
    // curlレスポンスを取得
    $data = curl_exec($ch);
    curl_close($ch);
    fclose($fp);
    
    // 音声ファイル保存後、Twilioに保存しているファイルを削除する
    $record_id = preg_split('[/]', $url);
    $client->account->recordings->delete($record_id[7]);

$_POST["RecordingUrl"] より、音声ファイルのURLを取得します。
$path = にファイルの保存先を指定します。
次にfopenとcurlを使い、ダウンロードしながらmp3ファイルへ保存します。
ファイル作成後、REST APIを使い、クラウド上に保存している音声ファイルを削除しています。

 


[特集] Twilioを使って電話Webアプリケーションを構築しよう

 

ソースコード

 

ソースコードは、GitHubに公開いたしました。

 

 

関連タグ: 

Viewing all articles
Browse latest Browse all 131

Trending Articles