通話録音
提供: VoIP-Info.jp
意外とニーズが多いそうなので簡単に解説。 注意:通話を録音する際には法的な問題がないかどうかを、まずクリアにしてください。 Asteriskではモニタなどの機能で通話録音が可能です。
アプリケーションを使用する
次のような記述を行うことで、通話録音を行えます。
[record-out] exten => _0.,1,Set(CALLFILENAME=${EXTEN:1}-${TIMESTAMP}) exten => _0.,2,Monitor(wav,${CALLFILENAME},m) exten => _0.,3,Dial(ダイアルアウト先など) exten => _0.,4,Congestion exten => _0.,104,Congestion
この例では0番発信した場合の相手との通話を全て録音します。録音されたファイルはWAVフォーマットで /var/spool/asterisk/monitor/ の下に置かれます。
Monitorのオプションを何も指定しない場合には通話は-inと-outというふたつのファイルに分かれて記録されますが、上記の例のように"m"を指定していると、通話終了後にsoxmixが呼び出され通話はひとつのファイルに保存されます。
automon
Asterisk 1.2からはautomonと呼ばれる動的なモニタ機能が追加されました。
次のような記述を行います。
exten => _0.,1,Set(DYNAMIC_FEATURES=automon) exten => _0.,2,Dial(ダイアル先,60,W) <--"W"オプションを付ける exten => _0.,3,Congestion
"W"オプションを付けてDialコマンドを実行すると発呼した側に録音の許可がなされます。相手と通話中にダイアルした側から"*1"をプッシュすると録音が開始されます。小文字"w"を付けると着信側に録音が許可されるので、着信extenではこちらを使います。録音されたファイルは同じく/var/spool/asterisk/monitor/ の下にauto-が先頭についた名前で保存されます。