FreeSwitch 添加配置录音功能

搭建 FreeSwitch 呼叫系统,通常都需要录音功能,将所有的通话都进行录音,FreeSwitch 可以进行配置进行录音,默认不开启录音功能。

配置录音功能,需修改 /etc/freeswitch/dialplan/default.xml,在拨号路由中添加如下代码,红色部分为录音保存路径,可以自由设置,可以进行拨号录音配置,哪些路由进行录音,哪些不进行录音。

<!–录音–>
<action application=”set” data=”RECORD_TITLE=Recording ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}”/>
<action application=”set” data=”RECORD_COPYRIGHT=(c) 2011″/>
<action application=”set” data=”RECORD_SOFTWARE=FreeSWITCH”/>
<action application=”set” data=”RECORD_ARTIST=FreeSWITCH”/>
<action application=”set” data=”RECORD_COMMENT=FreeSWITCH”/>
<action application=”set” data=”RECORD_DATE=${strftime(%Y-%m-%d %H:%M)}”/>
<action application=”set” data=”RECORD_STEREO=true”/>
<action application=”record_session” data=”/record/cdr/${strftime(%Y)}/${strftime(%m)}/${strftime(%d)}/${caller_id_number}/${uuid}.wav“/>
<action application=”set” data=”call_out”/>
<action application=”set” data=”destination=$1″/>
<action application=”set” data=”caller_id_number=${caller_id_number}”/>
<!–录音–>

如果呼出电话不没有记录到录音文件,则需要在呼出路由文件中添加同样的代码。录音文件默认保存的是wav 格式,没有进行转码,这种格式较占磁盘空间,可以在服务器闲时,进行音频转码,转为 MP3格式,可以减少80%左右的文件大小。

wav 文件转mp3格式要使用 lame,可在系统中直接安装,然后使用下面代码进行批量转换,可以添加在计划任务中,下面的代码是,自动转换昨天 RECORD_PATH 目录中的wav 格式为 mp3。可自行设置输出目录

RECORD_PATH="/record/cdr"/$(date -d yesterday +'%Y')/$(date -d yesterday +'%m')/$(date -d yesterday +'%d')

cd $RECORD_PATH

echo $RECORD_PATH

for WAV in $(find  -name '*.wav' 2> /dev/null)

do
    echo "Encoding MP3 file from $WAV ..." `date "+%G-%m-%d %H:%M:%S"`  >/record/cdr/log/encoding_mp3.log

    OUT=${WAV%.*}

    lame  --preset standard  $OUT.wav $OUT.mp3
	myFile=$OUT.mp3
	curtime=`date "+%G-%m-%d %H:%M:%S"`
	filename=`date "+%G%m%d"`
	if [ -f "$myFile" ]; then
        size=`du -k $myFile |awk '{print $1}'`
        if [ $size -gt 4 ]; then
            echo $size $myFile $curtime >/record/cdr/log/$filename.log
			rm -f $OUT.wav
            chmod -R +755 myFile
        else
            echo "0" $myFile $curtime >/record/cdr/log/0.log
        fi
	else
        echo "$myFile  does not exist" $curtime > /record/cdr/log/notfound.log
	fi 

done
find /record/cdr/ -mtime +1 -name "*.log" -exec rm -rf {} \;
#EOF

原创文章,作者:admin,如若转载,请注明出处:https://ntib.cn/58.html

(0)
adminadmin
上一篇 2018年11月18日 下午9:50
下一篇 2018年11月18日 下午10:01

相关推荐

  • 城市分站站群-轻松让你收录破百万

    建公司网站哪家好你是否还为你的网站没有收录而烦恼?不要慌,多城市分站站群,可以轻松让你的网站收录突破百万。多城市分站就是能够让你的网站自动生成全国3000多个县级及以上城市的分站系统,并且能够在你…

    2022年11月18日
  • ThinkPHP模型事件

    建公司网站哪家好模型事件是指在进行模型的写入操作的时候触发的操作行为,包括模型的save方法和delete方法。 模型事件包括下面几种,分为新增前后、更新前后、写入前后、和删除前后,暂时称4个分组…

    记事本 2023年11月18日
  • OneThink 找回密码,忘记密码重置

    建公司网站哪家好很多时候会忘记自己项目的设置的密码,又因为每个onethink设置的加密的字符串又不一样,那么现在教大家一个快速修改密码的方法 打开文件 /Application/Admin/Co…

    2018年11月18日
  • 同步 Linux 服务器的时间

    建公司网站哪家好不知道什么原因,centos 运行一段后,发现系统时间与 当前时间不符,差了几分钟,看着对不上,心里很是不舒服,就想着同步一下系统时间, centos 同步时间命令 ntpdate…

    记事本 2018年11月18日
  • 让你的FastAdmin在PHP8下运行

    建公司网站哪家好PHP8发布很长时间了,但FastAdmin还不能在PHP8下运行,官方文档环境要求 PHP >= 7.2 且 <= 7.4 (推荐PHP7.4版本),因为一些开源扩展…

    2023年11月18日
  • CentOS免密登录

    建公司网站哪家好CentOS免密登录需要配置SSH登录密码与密钥身份验证。以下是一个简单的步骤: 此外,为了方便使用,可以设置别名,将登录命令写入到配置文件中。例如,在配置文件中添加别名alias…

    记事本 2023年12月27日
  • PHP 在线解压zip压缩包文件

    建公司网站哪家好在使用虚拟主机的时候,在主机面板可能没有解压的功能,我们上传很多文件时又比较慢,所以需要使用php代码对zip文件进行解压。php 有自带的解压功能,下面为简单的解压代码,将dem…

    记事本 2018年11月18日
  • windows 系统安装 PHP的redis扩展

    建公司网站哪家好因为用windows系统开发PHP网站或应用,有一些需要用到redis,所有需要安装redis,默认是已经安装好了 PHP,首先需要下载redis,下载地址:https://git…

    2023年11月18日
  • windows系统下PhpStorm试用版下载地址

    建公司网站哪家好PhpStorm 是 JetBrains 公司开发的一款商业的PHP集成开发工具,旨在提高用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。 win系统,…

    2024年3月16日
  • 阿里云轻量服务器配置及安装宝塔面板

    建公司网站哪家好为什么选择轻量服务器? 1、轻量服务器比 ECS 同等服务器会便宜很多,如果是新用户还是可以考虑 ECS 的, 2、带宽大,轻量服务器 限峰值带宽30Mbps ,但是每月又流量限制…

    2023年11月18日

发表回复

登录后才能评论
WeChat