elastix 2.0的录音文件按年月日分开存放的方法

原文发表于:http://bbs.voip88.com/forum-viewthread-tid-15144-highlight.html

说明

elastix2.0的通话录音默认全部直接放在/var/spool/asterisk/monitor/ 目录下,话务量大的话将会是灾难,现在我们要将它按日期排放
例如,2010-11月1日的录音放在 /var/spool/asterisk/monitor/10-11/01/下
2011-2月15日的放在/var/spool/asterisk/monitor/11-02/15/下


我们需要做的是

1:首先创建这些文件夹
(方法很多,略之)

2:修改freepbx的functions.inc.php文件

$ext->add($context, $exten, 'check', new ext_execif('$["${ARG1}"=""]','MacroExit'));
$ext->add($context, $exten, '', new ext_gotoif('$["${ARG2}"="Group"]', 'Group','OUT'));
$ext->add($context, $exten, 'Group', new ext_set('LOOPCNT','${FIELDQTY(ARG1,-)}'));
$ext->add($context, $exten, '', new ext_set('ITER','1'));
$ext->add($context, $exten, 'begin', new ext_gotoif('$["${CUT(DB(AMPUSER/${CUT(ARG1,-,${ITER})}/recording),=,3)}" != "Always"]', 'continue'));
$ext->add($context, $exten, '', new ext_set('TEXTEN','${CUT(ARG1,-,${ITER})}'));
$ext->add($context, $exten, '', new ext_noop('Recording enable for ${TEXTEN}'));
$ext->add($context, $exten, '', new ext_set('CALLFILENAME','g${TEXTEN}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID}'));
$ext->add($context, $exten, '', new ext_goto('record'));
$ext->add($context, $exten, 'continue', new ext_set('ITER','$[${ITER}+1]'));
$ext->add($context, $exten, '', new ext_gotoif('$[${ITER}<=${LOOPCNT}]', 'begin'));
$ext->add($context, $exten, 'OUT', new ext_gotoif('$["${ARG2}"="IN"]', 'IN'));
$ext->add($context, $exten, '', new ext_execif('$["${CUT(DB(AMPUSER/${ARG1}/recording),/|,1):4}" != "Always"]','MacroExit'));
$ext->add($context, $exten, '', new ext_noop('Recording enable for ${ARG1}'));
//$ext->add($context, $exten, '', new ext_set('CALLFILENAME','OUT${ARG1}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID}'));  //zhangtuo  edit 2010-8-2
$ext->add($context, $exten, '', new ext_set('CALLFILENAME','${STRFTIME(${EPOCH},,/%y-%m/%d/)}${UNIQUEID}')); //zhangtuo add 2010-8-2
$ext->add($context, $exten, '', new ext_goto('record'));
$ext->add($context, $exten, 'IN', new ext_execif('$["${CUT(DB(AMPUSER/${ARG1}/recording),/|,2):3}" != "Always"]','MacroExit'));
$ext->add($context, $exten, '', new ext_noop('Recording enable for ${ARG1}'));
$ext->add($context, $exten, '', new ext_set('CALLFILENAME','${STRFTIME(${EPOCH},,/%y-%m/%d/)}${UNIQUEID}')); //zhangtuo  add  2010-8-2
// $ext->add($context, $exten, '', new ext_set('CALLFILENAME','${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID}'));  //zhangtuo  edit 2010-8-2
$ext->add($context, $exten, 'record', new ext_mixmonitor('${MIXMON_DIR}${CALLFILENAME}.${MIXMON_FORMAT}','','${MIXMON_POST}'));
$ext->add($context, $exten, '', new ext_macroexit());



其中红色的是修改的
这样“应用”后,就会生成我们想要的拨号规则,录音就会存放到对应的日期子文件夹中

扩展

同样道理,还可以进一步修改,让录音文件名中包含CALLERID(num) 等等

freepbx 底的版本是用recordingcheck文件实现的,高的版本就要用这个方法来搞

 

voip88 张拓 2010-11-19

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Elastix是一个开源的基于Asterisk的通信解决方案,用于构建企业级电话系统。以下是Elastix的使用方式: 1. 下载和安装:首先,在Elastix的官方网站上下载适合您的操作系统的最新版本。安装过程中,您需要遵循安装向导的指示来完成安装。 2. 配置:安装完成后,您需要进行一些基本的配置,比如设置网络参数、语言选择、时区、admin密码等。这些配置步骤都可以通过Elastix的Web管理界面来完成。 3. 添加电话线路:在Elastix中,电话线路需要被添加到系统中才能够进行拨打和接听电话。您可以通过界面的“Trunks”选项来添加电话线路,并配置相应的参数,如提供商信息、拨号规则等。 4. 配置分机:在Elastix中,分机是与电话终端设备相关联的虚拟电话号码。您可以通过界面的“Extensions”选项来添加和配置分机,包括分机号码、密码、语音信箱等。 5. 设定呼叫规则:Elastix允许用户自定义呼叫规则,以便根据需要将呼叫路由到特定的电话线路或分机。您可以根据不同的条件设置呼叫规则,如时间条件、呼叫者ID等。在界面的“Outbound Routes”选项中进行配置。 6. 配置呼叫特征:Elastix提供了一系列的电话特征,如呼叫转移、呼叫等待、呼叫会议等。您可以通过界面的“Feature Codes”选项来配置这些电话特征。 7. 监视和管理:Elastix提供了实时监视和管理电话系统的选项。您可以通过Web管理界面来监视系统的状态,如连接数、呼叫日志等。您还可以配置系统的安全选项、备份和还原数据等。 总之,Elastix通过其友好的Web界面,使得用户可以方便地进行电话系统的配置和管理。无论是中小型企业还是个人用户,都可以使用Elastix来搭建稳定、高效的电话系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值