5-FreeSwitch-freeswitch开启录音和使用

一、开启/usr/local/freeswitch/conf/dialplan 后面的default添加配置

freeswitch开启录音(FreeSwitch录音功能默认是关闭的,需要修改配置开启录音功能。)

在这里插入图片描述

 <extension name="Local_Extension">
      <condition field="destination_number" expression="^(10[01][0-9])$">
     <!-- 添加-->

在这里插入图片描述

	<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="$${base_dir}/recordings/archive/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav"/>

二、在freeswitch重新加载(F6)或者 reloadxml

在这里插入图片描述

三、使用录音

3.1单腿录音

方法一:API

originate user/1000 &record (位置/名称.wav)

方法二:拨号计划

<action application="record" data="位置/名称.wav">

3.2两条腿录音API

3.2.1 方法一:API

开始
uuid_record <channel_uuid> start 位置/名称.wav  
停止
uuid_record <channel_uuid> stop 位置/名称.wav

停止所有
stop all

3.2.2 方法二:拨号计划(241)

<action application="record_session" data="位置/名称.wav">

3.2.3 两条混为一条声道 -c 1

sox 位置/名称.wav -c 1 位置/名称2.wav

四、立体声

4.1.1 方法一:API

uuid_setvar <channel_uuid>  RECORD_STEREO true

4.1.2 方法二:拨号计划(设置通道变量)

	<action application="set" data="RECORD_STEREO=true">
	<action application="record_session" data="位置/名称.wav">

五、录音相关变量(242)

### FreeSWITCH 录音配置与实现方法 #### 配置录音功能的基础设置 为了启用FreeSWITCH录音功能,需编辑`/usr/local/freeswitch/conf/dialplan/default`下的配置文件,在此位置添加必要的配置项来激活录音能力[^2]。 #### 修改拨号计划以支持录音操作 在拨号计划 `dialplan.xml` 中加入特定的动作标签 `<action>` 来定义录音行为。具体来说,可以通过如下方式指定录音路径以及命名规则: ```xml <action application="record_session" data="/tmp/${strftime(%Y-%m-%d)}/${caller_id_number}_${destination_number}.wav"/> <!-- 设置两个变量,用于将通话记录保存到数据库 --> <action application="set" data="recordfile=/tmp/${strftime(%Y-%m-%d)}/${caller_id_number}_${destination_number}.wav"/> <action application="set" data="recordname=${caller_id_number}_${destination_number}.wav"/> ``` 上述XML片段展示了如何利用内置的应用程序指令完成录音会话,并设置了相应的环境变量以便后续处理[^4]。 #### 调整CTI模块参数控制录音时机 对于希望在呼叫建立之前就开始录制的情况,则可以在CCAdmin界面内调整mod_cti的相关选项。“RECORD_ANSWER_REQ=false”的设定决定了是否允许未接通状态下的录音活动发生[^3]。 #### 关键组件协作机制概述 整个录音流程的成功执行离不开几个核心模块之间的紧密配合——包括但不限于负责SIP协议栈管理的`mod_sofia`、提供JSON接口服务的`mod_fs_json`,当然还有专门用来捕捉语音流并将其持久化的`mod_record`。这些组成部分共同作用确保了从初始化至最终存档各阶段工作的顺利开展[^1]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码浪人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值