4,723
回編集
差分
ページの作成:「CDRをSQLite3で保存する方法 ==前提となるパッケージ== CentOSの場合、以下のパッケージが必要です。 sqlite sqlite-devel Asteriskの./co...」
CDRをSQLite3で保存する方法
==前提となるパッケージ==
CentOSの場合、以下のパッケージが必要です。
sqlite
sqlite-devel
Asteriskの./configureを実行しなおしmake menuselectでCall Detailed Recordingのcdr_sqlite3_customが有効になっていることを確認し、モジュールのインストールを行ってください。
==設定==
cdr_sqlite3_custom.conf
[master] ; currently, only file "master.db" is supported, with only one table at a time.
table => cdr
columns => calldate, clid, dcontext, channel, dstchannel, lastapp, lastdata, duration, billsec, disposition, amaflags, accountcode, uniqueid, userfield, test
values => '${CDR(start)}','${CDR(clid)}','${CDR(dcontext)}','${CDR(channel)}','${CDR(dstchannel)}','${CDR(lastapp)}','${CDR(lastdata)}','${CDR(duration)}','${CDR(billsec)}','${CDR(disposition)}','${CDR(amaflags)}','${CDR(accountcode)}','${CDR(uniqueid)}','${CDR(userfield)}','${CDR(test)}'
現在のところDB名はmaster.dbです。テーブルは上のように設定しているのでcdrになります。
==確認==
sqlite3 /var/log/asterisk/master.db
SQLite version 3.3.6
Enter ".help" for instructions
sqlite> select * from cdr;
1|2012-02-05 17:16:16|"201" <201>|default|SIP/201-00000000||MeetMe|300,M|1|1|ANSWERED|DOCUMENTATION||1328429776.0||
2|2012-02-05 17:19:47|"201" <201>|default|SIP/201-00000000||MeetMe|300,M|7|7|ANSWERED|DOCUMENTATION||1328429987.0||
こんな感じで記録されます。項目はmaster.csvなどと同じなので必要に応じて調整してください。
==前提となるパッケージ==
CentOSの場合、以下のパッケージが必要です。
sqlite
sqlite-devel
Asteriskの./configureを実行しなおしmake menuselectでCall Detailed Recordingのcdr_sqlite3_customが有効になっていることを確認し、モジュールのインストールを行ってください。
==設定==
cdr_sqlite3_custom.conf
[master] ; currently, only file "master.db" is supported, with only one table at a time.
table => cdr
columns => calldate, clid, dcontext, channel, dstchannel, lastapp, lastdata, duration, billsec, disposition, amaflags, accountcode, uniqueid, userfield, test
values => '${CDR(start)}','${CDR(clid)}','${CDR(dcontext)}','${CDR(channel)}','${CDR(dstchannel)}','${CDR(lastapp)}','${CDR(lastdata)}','${CDR(duration)}','${CDR(billsec)}','${CDR(disposition)}','${CDR(amaflags)}','${CDR(accountcode)}','${CDR(uniqueid)}','${CDR(userfield)}','${CDR(test)}'
現在のところDB名はmaster.dbです。テーブルは上のように設定しているのでcdrになります。
==確認==
sqlite3 /var/log/asterisk/master.db
SQLite version 3.3.6
Enter ".help" for instructions
sqlite> select * from cdr;
1|2012-02-05 17:16:16|"201" <201>|default|SIP/201-00000000||MeetMe|300,M|1|1|ANSWERED|DOCUMENTATION||1328429776.0||
2|2012-02-05 17:19:47|"201" <201>|default|SIP/201-00000000||MeetMe|300,M|7|7|ANSWERED|DOCUMENTATION||1328429987.0||
こんな感じで記録されます。項目はmaster.csvなどと同じなので必要に応じて調整してください。