我设置了一个宏来记录分机上的呼入电话:
[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()
因此,当我从1002到1001拨打电话时,录音将保存为/var/spool/asterisk/monitor
类似此示例“ 20140106-122313-FROM-1002-TO-PExten1001.wav ”的格式
我需要将源自 1002 的出站呼叫记录为它自己的单独文件 - 也就是说,当从1002到1001进行呼叫时,会进行 2 个录音,一个是 1001 的入站录音(即上面的代码)和一个是 1002 的出站录音(这就是这个问题的意义所在)。
我是否必须为这两个扩展编写单独的上下文?还是有其他方法?
提前致谢。