1.2.2       从接听到挂断分时录音

【测试案例3】设想这样一种监控式的使用环境,终端1000呼叫总台1239,总台对1000进行监控式录音,即录音不间断,并且为了便于存储与查找,将长时间的录音按固定长度切割,录入不同文件。使用Lua脚本实现,首先在Dialplan中加入如下配置:

<extension name="RecordTest4">

<conditionfield="destination_number" expression="^1239$">

<actionapplication="answer" data=""/>

<actionapplication="lua" data ="test_record.lua"/>

</condition>

</extension>

在scripts文件夹下添加test_record.lua文件,代码如下:

api=freeswitch.API()

functionmain_1()

while(session:ready()==true) do

nowtime= api:getTime()

session:recordFile("/tmp/ RecordTest_1.2.2_"..nowtime..".wav",10)

end

end

--函数执行

session:answer()

main_1()

代码中利用session:recordFile()进行录音,其功能类似于测试案例1中的record命令,参数为file_name, max_len_secs,silence_threashold, silence_secs,分别表示录音文件名,录音最长秒数,静音阈值,静音容忍秒数,后三个参数可省略。

测试案例中将录音最长秒数设为10s,通话时长34s,录音文件有4个,文件名以RecordTest_1.2.2_开头,文件名中的数字为录音开始时的新世纪时间毫秒数,文件大小依次为10s,10s,10s,4s,均为单声道。

1.2.3       从终端按键到挂断

【测试案例4】终端1000呼叫总台1240,总台监听1000按键操作,当终端按0时开始录音,直到挂断。使用Lua脚本实现,首先在Dialplan中加入如下配置:

<extension name="RecordTest5">

<conditionfield="destination_number" expression="^1240$">

<actionapplication="answer" data=""/>

<actionapplication="lua" data ="test_record2.lua"/>

</condition>

</extension>

在scripts文件夹下添加test_record2.lua文件,代码如下:

functionmain_1()

if(session:ready()==true) then

digits=session:playAndGetDigits(1,1,3,5000,"#",

"ivr/homemenu.wav",error_say, "^0$")

if(digits=="0") then

session:recordFile("/tmp/ RecordTest_1.2.3.wav")

end

end

--函数执行

session:answer()

main_1()

测试案例中通话时长10s,第5s按下0按键,文件时长5s,单声道。

【FreeSWITCH】录音功能调试报告-2相关推荐

  1. FreeSWITCH开启录音功能

    FreeSwitch录音功能默认是关闭的,需要修改配置开启录音功能. 首先备份freeswitch/conf/dialplan/default.xml . 然后编辑default.xml ,在 < ...

  2. 第十二章 HTTAPI – FreeSWITCH向Webserver寻问下一步操作

    HTTAPI允许FreeSWITCH向webserver询问如何处理呼叫,还可以在执行之后再次询问.因此,它实际上是一种高层次的动态协议,FreeSWITCH向webserver发送呼叫的所有相关信息 ...

  3. SIP电话(一)之程控交换机-FreeSWITCH的使用总结

    最近由于项目需要一直在研究Sip电话,Sip电话是基于sip协议的实现voip即网络电话的的功能.那么问题来了?我们打电话都是使用某动,某通,某信的电话卡,这种电话卡是在全国范围内收费的gms卡,如果 ...

  4. freeswitch 录音录像

    freeswitch支持录音和录像功能,录音功能主要是通过mod_sndfile.mod_shout等模块实现的,录像模块是通过mod_mp4v2和mod_av模块实现. mod_sndfile录制w ...

  5. freeswitch录音

    freeswitch 录音录像 freeswitch支持录音和录像功能,录音功能主要是通过mod_sndfile.mod_shout等模块实现的,录像模块是通过mod_mp4v2和mod_av模块实现 ...

  6. 使用Opensips和FreeSwitch搭建万级别的高可用软交换架构

    最近因为项目的原因,需要提供一个支持万级别以上,支持多应用的软交换服务端架构,对以前的架构做了一个调整,写一篇文章总结下. 新的架构主要解决了一下几个问题: 单套要支持1w左右并发的呼叫 完全的高可用 ...

  7. [freeswitch]mod_dptools功能总结(updating)

    mod_dptools功能总结 前言 freeSWITCH的mod_dptools模块各功能总结,这里只是整理下功能,具体用法参考官方wiki answer "接通".建立aleg ...

  8. Freeswitch操作基本配置

    1.SIP 协议 2. hangup_after_bridge = true 设置该变量,告诉系统如果当前有一个桥接成功的通话,挂断当前通话. 3.Freeswitch 监听电话: mod_spy 是 ...

  9. FreeSwitch 的初始化及其模块加载过程

    FS 主函数main() Freeswitch的主函数是在文件switch.c中定义的,该文件的260行是整个程序的入口,主函数主要完成的功能是包括,命令行解析,初始化apr库,构建全局内存池,模块加 ...

  10. FreeSWITCH快速录音

    一.背景 测试人员反映FreeSWITCH录音不及时,需要大约5秒的时间才能捕获到RTP流. 二.原因及解决 查了下资料,FreeSWITCH默认的录音参数配置是开启缓冲的, 即RTP流大小到达655 ...

最新文章

  1. 【VMCloud云平台】SCCM(三)初始配置
  2. piwik的安装与配置
  3. pytorch强化学习训练倒摆小车
  4. 面向对象第四单元(UML)总结体会课程总结
  5. openstack 使用集锦
  6. JZOJ 3853. 【NOIP2014八校联考第2场第2试9.28】帮助Bsny(help)
  7. linux退出python环境_Linux中的python虚拟环境
  8. matlab连续投影算法SPA使用示例
  9. excel两列数据对比找不同_Excel找出不同数据
  10. 笔记本电脑插耳机后耳机无声音有外放情况,咋办??
  11. Word的”交叉引用“和”插入题注“快捷键设置
  12. linux 卸载 sdcc,Linux sdcc安装
  13. 微信公众号商城前景分析
  14. win10商店打不开_win10应用商店的卸载和安装
  15. pdf怎么删除其中一页与添加新页面
  16. vue解析excel文件(使用xlsx)
  17. 啊,CET6----六级高频词2
  18. linux命令简化,Linux ls 命令实现(简化版)
  19. 非接触CPU卡与非接触IC卡的区别是什么?
  20. 《最高人民法院最高人民检察院关于办理非法利用信息网络、帮助信息网络犯罪活动等刑事案件适用法律若干问题的解释》

热门文章

  1. apt-get 与 yum 的区别
  2. 《Entity Framework 6 Recipes》中文翻译系列 (24) ------ 第五章 加载实体和导航属性之查询内存对象...
  3. TableView载入WebView的一些小技巧 By 徐
  4. C#获取屏幕大小或任务栏大小
  5. Linux课程---3、Linux远程登录和传输(操作Linux服务器软件)
  6. sass-RGB颜色函数-RGB()颜色函数
  7. 【转】Java的package和import机制
  8. GitHub上README写法暨markdown语法解读
  9. 第一堂TCP/IP课
  10. 迷你博客突然走红 至今尚无商业模式