「通話録音」の版間の差分

提供: VoIP-Info.jp
移動先: 案内検索
(カテゴリの手直し)
21行目: 21行目:
 
  exten => _0.,3,Congestion
 
  exten => _0.,3,Congestion
 
"W"オプションを付けてDialコマンドを実行すると発呼した側に録音の許可がなされます。相手と通話中にダイアルした側から"*1"をプッシュすると録音が開始されます。小文字"w"を付けると着信側に録音が許可されるので、着信extenではこちらを使います。録音されたファイルは同じく/var/spool/asterisk/monitor/ の下にauto-が先頭についた名前で保存されます。
 
"W"オプションを付けてDialコマンドを実行すると発呼した側に録音の許可がなされます。相手と通話中にダイアルした側から"*1"をプッシュすると録音が開始されます。小文字"w"を付けると着信側に録音が許可されるので、着信extenではこちらを使います。録音されたファイルは同じく/var/spool/asterisk/monitor/ の下にauto-が先頭についた名前で保存されます。
 +
==MixMonitor==
 +
*MixMonitorを使ったマクロ
 +
features.conf
 +
[applicationmap]
 +
apps => 99,caller,Macro,apprecord
 +
extensions.conf
 +
[globals]
 +
DYNAMIC_FEATURES=apps
 +
==中略==
 +
[macro-apprecord]
 +
exten => s,1,GotoIf($["${XAD}" = "0" | "${XAD}" = ""]?startrec:stoprec)
 +
exten => s,n(startrec),Playback(startmonitor)
 +
exten => s,n,Set(XAD=1)
 +
exten => s,n,Set(MONITOR_FILENAME=${CHANNEL:4:3})
 +
exten => s,n,MixMonitor(${MONITOR_FILENAME}.wav,b,cp /var/spool/asterisk/monitor
 +
/${MONITOR_FILENAME}.wav /var/spool/asterisk/monitor/{MONITOR_FILENAME}-${DATETIME}.wav)
 +
exten => s,n,MacroExit
 +
exten => s,n(stoprec),StopMixMonitor
 +
exten => s,n,Set(XAD=0)
 +
exten => s,n,Playback(stopmonitor)
 +
exten => s,n,MacroExit

2013年1月9日 (水) 13:03時点における版

意外とニーズが多いそうなので簡単に解説。 注意:通話を録音する際には法的な問題がないかどうかを、まずクリアにしてください。 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-が先頭についた名前で保存されます。

MixMonitor

  • MixMonitorを使ったマクロ

features.conf

[applicationmap] 
apps => 99,caller,Macro,apprecord

extensions.conf

[globals] 
DYNAMIC_FEATURES=apps 
==中略==
[macro-apprecord]
exten => s,1,GotoIf($["${XAD}" = "0" | "${XAD}" = ""]?startrec:stoprec)
exten => s,n(startrec),Playback(startmonitor)
exten => s,n,Set(XAD=1)
exten => s,n,Set(MONITOR_FILENAME=${CHANNEL:4:3}) 
exten => s,n,MixMonitor(${MONITOR_FILENAME}.wav,b,cp /var/spool/asterisk/monitor
/${MONITOR_FILENAME}.wav /var/spool/asterisk/monitor/{MONITOR_FILENAME}-${DATETIME}.wav) 
exten => s,n,MacroExit
exten => s,n(stoprec),StopMixMonitor
exten => s,n,Set(XAD=0)
exten => s,n,Playback(stopmonitor)
exten => s,n,MacroExit