• YH YH
  • — 1 month ago
Asteriskの通話を録音する

一度の通話毎に音声ファイルとして保存します。 CDR(通話履歴)からUNIQUEIDで音声ファイルを特定できます。

環境は

・CentOS 7.8.2003

・Asterisk 16.13.0

extensions.confにextenを追加します。

priorityは参考元と同じDialの上にしました。

exten => _1XX,1,MixMonitor(${UNIQUEID}.ulaw)

()の中がファイル名です。

${UNIQUEID}でユニークIDが取得できるようです。

拡張子は参考元と同じくulawにしました。

Realtime Databaseの場合はextensionsテーブルにレコード追加
INSERT INTO extensions
(context, exten, priority, app, appdata)
VALUES 
('mycontext', '_1XX', 1, 'MixMonitor', '${UNIQUEID}.ulaw');

保存先はasterisk.conf

astspooldir => /var/spool/asterisk

となるようです。

が、Asterisk13では保存先がデフォルトから変更できないという話がありました。

asteriskの下にmonitorというディレクトリがあり、そこに保存されます。

同じくasteriskの下にmeetme,recording,voicemail等ディレクトリがありますので、

Appによって分けられるのかもしれません。

再起動して反映します。

# systemctl restart asterisk

ユニークIDはCDR(通話記録)のuniqueidカラムに保持されますので、

CDRから録音ファイルを特定できます。

参考は以下

Call Recording in Asterisk | DIDforSale

保存先がデフォルトから変更できないという話です。

Asterisk 13 - Channel recording path always use default

ここにAsteriskの開発者からの発言で

Asteriskが保存できる場所にもなにか制限?条件?がある。 asterisk.confで保存先を変更して、意図したディレクトリに保存できない場合は 一旦デフォルトの場所に吐かれてから、cron等で移動する。 これならできる

と言っているようですね。

YH

System engineer

Asteriskの通話を録音する

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

お問い合わせ