1

我设置了一个宏来记录分机上的呼入电话:

[macro-DialStartMonitor]
; Calculate the time of the call from "epoch time", format it into yyyy-mm-dd and add the PhoneExt. at the end
exten => s,1,Set(MONITOR_FILENAME=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-FROM-${CALLERID(num)}-TO-${ARG1})
        same => n,MixMonitor(${MONITOR_FILENAME}.wav,b)

exten => 1001,1,noop(Dialing ${PEX_ONE})
        same => n,Macro(DialStartMonitor,${PEX_ONE})
        same => n,Dial(SIP/${PEX_ONE},30,mTt)
        same => n,Playback(vm-nobodyavail)      ; Play "no one's available"
        same => n,Hangup()

exten => 1002,1,noop(Dialing ${PEX_TWO})
        same => n,Macro(DialStartMonitor,${PEX_TWO})
        same => n,Dial(SIP/${PEX_TWO},30,mTt)
        same => n,Playback(vm-nobodyavail)      ; Play "no one's available"
        same => n,Hangup()

因此,当我从10021001拨打电话时,录音将保存为/var/spool/asterisk/monitor类似此示例“ 20140106-122313-FROM-1002-TO-PExten1001.wav ”的格式

我需要将源自 1002 的出站呼叫记录为它自己的单独文件 - 也就是说,当从10021001进行呼叫时,会进行 2 个录音,一个是 1001 的入站录音(即上面的代码)和一个是 1002 的出站录音(这就是这个问题的意义所在)。

我是否必须为这两个扩展编写单独的上下文?还是有其他方法?

提前致谢。

4

1 回答 1

1

您不能在同一频道上进行 2 台显示器。

做你想做的事,你有 2 个变体

1)在挂断时创建脚本,将复制文件(推荐方式)

2) 通过 Local/soemexte@somecontext/n 拨号并在 somecontext 中创建另一个监视器。

于 2014-01-07T22:07:56.093 回答