2023年5月1日を持ちまして、株式会社KDDIウェブコミュニケーションズのTwilioリセール事業が終了したため、本記事に記載されている内容は正確ではないことを予めご了承ください。
はじめに
この記事では、TwilioのコールログをCSVファイルに書き出すプログラムについて記述しています。
Twilioのコールログ(通話ログ)は、管理コンソールからもダウンロードが可能なのですが、大量のデータをダウンロードすることができません。
そこで、APIを利用してログを書き出すプログラムが必要になります。
準備
以下の準備が必要です。
・Twilioアカウント(アップグレードしてなくてもOK)
・Node.jsの実行環境(バージョンは8以上)
・エディタ
プログラムのダウンロードと初期設定
$ git clone https://github.com/mobilebiz/twilioLogs.git
$ cd twilioLogs
$ npm install
$ cp .env.sample .env
- コピーした.envファイルをエディターで開いて、ご自分のTwilioのAccountSidとAuthTokenの値に書き換えます。
- デフォルトでは、すべてのコールログを取得するようになっていますが、もし日付範囲を指定して取得したい場合は、getLogs.jsファイルをエディターで開いて、以下の部分を変更してください。
const startTime = moment('2000-01-01T00:00:00+09:00');
const endTime = moment('2200-12-31T23:59:59+09:00');
それぞれの日付はJST(日本時間)で指定できるようにしてあります。
実行
$ node getLogs.js
出力されるCSVファイルは、同じディレクトリのlogs.csvとなります。
出力される項目は以下の通りです。
項目番号 | 項目名 | 説明 |
---|---|---|
1 | start_time | 発信、もしくは着信が開始した時刻(日本時間) |
2 | end_time | 終話した時刻(日本時間) |
3 | duration | 通話時間(秒) |
4 | from | 発信者番号(E.164形式) |
5 | to | 着信番号(E.164形式) |
6 | status | 通話状態(正常終了はcompleted) |
7 | price | 通話料金(円) |
Enjoy! Twilio.