zoukankan      html  css  js  c++  java
  • FreeSwitch录音功能

    在/usr/local/freeswitch/conf/dialplan/default.xml文件里,<extension name="Local_Extension">节下面添加如下内容,可在FreeSwitch内部分机之间拨打录音。

        <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) 2020"/>  
        <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="set" data="enable_file_write_buffering=false"/>
        <action application="set" data="media_bug_answer_req=true"/>
        <action application="record_session" data="$${base_dir}/recordings/archive/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav"/>

    其它拨号方案,需要录音的地方也如此添加。 

    media_bug_answer_req:设置为true接通后录音
    enable_file_write_buffering:FreeSWITCH默认的录音参数配置是开启缓冲的(可能是内核缓存),即RTP流大小到达65536字节写一次文件,想更接近实时流,关闭缓冲区设置为false即可。

    此外,在dialplan的default和public方案里,也可以添加进去以上代码。这样外呼、呼入也能够正常录音了。

    还有个地方值得注意的是,callcenter.conf.xml里面,也可以录音。但不能这么写,看下面,取消注释那一行就行,不过不能有那些参数设置。

        <queue name="support@default">
          <param name="strategy" value="longest-idle-agent"/>
          <param name="moh-sound" value="$${hold_music}"/>
          <!--<param name="record-template" value="$${recordings_dir}/${strftime(%Y-%m-%d-%H-%M-%S)}.${destination_number}.${caller_id_number}.${uuid}.wav"/>-->           
          <param name="time-base-score" value="system"/>
          <param name="max-wait-time" value="0"/>
          <param name="max-wait-time-with-no-agent" value="0"/>
          <param name="max-wait-time-with-no-agent-time-reached" value="5"/>
          <param name="tier-rules-apply" value="false"/>
          <param name="tier-rule-wait-second" value="300"/>
          <param name="tier-rule-wait-multiply-level" value="true"/>
          <param name="tier-rule-no-agent-no-wait" value="false"/>
          <param name="discard-abandoned-after" value="60"/>
          <param name="abandoned-resume-allowed" value="false"/>
        </queue>
  • 相关阅读:
    C#WinForm隐藏窗体关闭按钮的方法
    VPRO工具失败时对输出的一种处理方式
    在linux系统下进行pip升级注意事项
    浏览器遮罩层
    关于手机微信端ios的input不能选中问题解决方案
    微信公众号页面遇到的坑
    移动端微信页面的一些自己爬的坑
    使用JS获取上一页的url地址
    vuejs 入门
    python 学习路程(一)
  • 原文地址:https://www.cnblogs.com/cash/p/13113220.html
Copyright © 2011-2022 走看看