お問い合わせ

ブログ

これまでに経験してきたプロジェクトで気になる技術の情報を紹介していきます。

アスタリスク18でリアルタイムCDR通話記録

okuda Okuda 3 years
アスタリスク18でリアルタイムCDR通話記録

このチュートリアルでは、Asterisk18とMySQLデータベース間の接続をセットアップして、 リアルタイムの通話レコードをCDRテーブルに保存します。

環境設定

*Asterisk18

  • ODBC connection between Asterisk and Mysql

リアルタイムのCDR通話記録の設定

CDRの使用を開始するには、最初にcdrテーブルをデータベースに追加する必要があります。

CREATE TABLE cdr (
    accountcode VARCHAR(80), 
    src VARCHAR(80), 
    dst VARCHAR(80), 
    dcontext VARCHAR(80), 
    clid VARCHAR(80), 
    channel VARCHAR(80), 
    dstchannel VARCHAR(80), 
    lastapp VARCHAR(80), 
    lastdata VARCHAR(80), 
    start DATETIME, 
    answer DATETIME, 
    end DATETIME, 
    duration INTEGER, 
    billsec INTEGER, 
    disposition VARCHAR(45), 
    amaflags VARCHAR(45), 
    userfield VARCHAR(256), 
    uniqueid VARCHAR(150), 
    linkedid VARCHAR(150), 
    peeraccount VARCHAR(80), 
    sequence INTEGER
);

CDRテーブルが追加されたら、Asteriskディレクトリ内の2つの構成ファイルを更新する必要があります。

アスタリスクディレクトリに移動しましょう。

$ cd /etc/asterisk

cdr_odbc.confを編集していきます。

$ vim cdr_odbc.conf

次のデータを構成ファイルに追加します。

[global]
dsn=asterisk
loguniqueid=yes
dispositionstring=yes
usegmtime=no
newcdrcolumns=yes 

dsnの項目はodbcコネクタのタグ名です。

次に、cdr_adaptive_odbc.confを編集していきます。

$ vim cdr_adaptive_odbc.conf

次のデータを構成ファイルに追加します。

[first]
connection=asterisk 
table=cdr

connectionの項目は、odbcコネクタのタグ名です。

cdrテーブルと設定ファイルを設定した後、現在のアスタリスクを再起動します。

$ systemctl restart asterisk

2つの内線番号の間で電話をかけてみてください。 通話レコードがcdrテーブルに追加されていきます。

アスタリスク18でリアルタイムCDR通話記録 2021-08-18 12:04:09

コメントはありません。

4248

お気軽に
お問い合わせください。

お問い合わせ
gomibako@aska-ltd.jp