freeswitch配置功能二
<?xml version="1.0" encoding="utf-8"?>
<include>
<context name="default">
<!--语音会议-->
<extension name="conferences">
<condition field="destination_number" expression="^(\d{4})$" >
<action application="answer"/>
<action application="conference" data="$1-${domain_name}@default"/>
</condition>
</extension>
<!--视频会议融屏-->
<extension name="conferences">
<condition field="destination_number" expression="^(\d{5})$" >
<action application="answer"/>
<action application="set" data="video_possible=true"/>
<action application="set" data="video_initial_canvas=2"/>
<action application="set" data="video_initial_watching_canvas=2"/>
<action application="set" data="video_use_dedicated_encoder=true"/>
<action application="conference" data="$1-${domain_name}@video-mcu-stereo"/>
</condition>
</extension>
<!--通过拨号方案修改SDP信息-->
<extension name="show_info">
<condition field="destination_number" expression="^9192$">
<action application="answer"/>
<action application="info"/>
<action application="log" data="INFO ===switch_r_sdp Before:========${switch_r_sdp}"/>
<action application="set"><![CDATA[switch_r_sdp=v=0
o=- 123456 123 IN IP4 192.168.1.112
s=etmedia
c=IN IP4 192.168.1.113
t=0 0
a=X-nat:0 Unknown
m=audio 4002 RTP/AVP 18 103 102 117 3 0 8 9 118 119 104 4 101
a=rtpmap:18 G729/8000
]]>
</action>
<action application="log" data="INFO ===switch_r_sdp After:============${switch_r_sdp}"/>
<action application="sleep" data="250"/>
<action application="hangup"/>
</condition>
</extension>
<!--分机之间互通-->
<extension name="Extension">
<condition field="destination_number" expression="^(10[01][0-9])$">
<action application="set" data="bypass_media=true"/>
<action application="bridge" data="user/$1"/>
</condition>
</extension>
<!--路由到其他Freeswitch服务器上-->
<extension name="192.168.100.104">
<condition field="destination_number" expression="^0(.*)$" >
<action application="bridge" data="sofia/external/sip:$1@xxx.xxx.xxx.xxx:5090"/>
</condition>
</extension>
<!--播放菜单语音及按键菜单-->
<extension name="callin">
<condition field="destination_number" expression="^7777$" >
<action application="answer"/>
<action application="set" data="hangup_after_bridge=false"/>
<action application="playback" data="$${base_dir}/recordings/archive/2018-01-09-11-14-06_999.wav"/>
<action application="ivr" data="welcome"/>
</condition>
</extension>
<!--绕过媒体路由到其他服务器-->
<extension name="Telemcu">
<condition field="destination_number" expression="^(9\d{3})$" >
<action application="set" data="proxy_media=true"/>
<action application="bridge" data="sofia/${use_profile}/9$1@xxx.xxx.xxx.xxx:5060"/>
</condition>
</extension>
<!--IVR菜单配置-->
<extension name="incoming_call">
<condition field="destination_number" expression="^1234567890$">
<action application="answer" data=""/>
<action application="sleep" data="1000"/>
<action application="ivr" data="welcome"/>
</condition>
</extension>
<!--Group分组-->
<extension name="group_dial_cainiao">
<condition field="destination_number" expression="^2002$">
<action application="bridge" data="group/cainiao@${domain_name}"/>
</condition>
</extension>
<!--双腿录音-->
<extension name="Extension1">
<condition field="destination_number" expression="^(10[01][0-9])$">
<action application="set" data="RECORD_STEREO=true"/>
<action application="set" data="media_bug_answer_req=true"/>
<action application="export" data="execute_on_answer=record_session $${base_dir}/recordings/archive/$1-${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
<action application="bridge" data="user/$1"/>
</condition>
</extension>
<!--单腿录音-->
<extension name="Single_Leg_Record">
<condition field="destination_number" expression="^999$">
<action application="answer"/>
<action application="record" data="$${base_dir}/recordings/archive/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}.wav"/>
</condition>
</extension>
<!--播放音乐文件-->
<extension name="play_wav">
<condition field="destination_number" expression="^911$">
<action application="answer"/>
<action application="playback" data="$${base_dir}/recordings/archive/2018-01-09-11-14-06_999.wav"/>
</condition>
</extension>
<!--顺振-->
<extension name="group_dial_seq">
<condition field="destination_number" expression="^9000$">
<action application="bridge" data="user/1004@xxx.xxx.xxx.xxx|user/1000@xxx.xxx.xxx.xxx"/>
</condition>
</extension>
<!--同振-->
<extension name="group_dial_sim">
<condition field="destination_number" expression="^2000$">
<action application="bridge" data="sofia/internal/1000@xxx.xxx.xxx.xxx,sofia/sip/1001@xxx.xxx.xxx.xxx"/>
</condition>
</extension>
<!--测试几个APP-->
<extension name="Show Channel Variable">
<condition field="destination_number" expression="^1235$">
<action application="answer"/>
<action application="info" data=""/>
<action application="sleep" data="5000"/>
<action application="hangup"/>
</condition>
</extension>
<!--录像-->
<extension name="Local_video">
<condition field="destination_number" expression="^10086$">
<action application="set" data="call_timeout=30"/>
<action application="set" data="record_concat_video=true"/>
<action application="set" data="RECORD_STEREO=true"/>
<action application="set" data="enable_file_write_buffering=false"/>
<action application="export" data="execute_on_answer=record_session $${base_dir}/recordings/archive/10086.fsv"/>
<action application="bridge" data="user/1004"/>
</condition>
</extension>
<!--录像-->
<extension name="voide_record">
<condition field="destination_number" expression="^9193$">
<action application="answer"/>
<action application="record_fsv" data="/home/${strftime(%Y-%m-%d-%H-%M-%S)}.fsv"/>
</condition>
</extension>
<!--播放录像-->
<extension name="voide_playback">
<condition field="destination_number" expression="^9194$">
<action application="answer"/>
<action application="play_fsv" data="/tmp/test.fsv"/>
</condition>
</extension>
<!--不阻塞录音-->
<extension name="Double_Leg_Record">
<condition field="destination_number" expression="^(10[01][0-9])$">
<action application="set" data="RECORD_STEREO=true"/>
<action application="record_session" data="/tmp/$1.wav"/>
<action application="bridge" data="user/$1@${domain_name}"/>
</condition>
</extension>
<!--呼叫停泊电话分配-->
<extension name="park">
<condition field="destination_number" expression="^5900$">
<action application="set" data="fifo_muisc=$${hold_music}"/>
<action application="fifo" data="5900@${domain_name} in"/>
</condition>
</extension>
<!--呼叫取出-->
<extension name="unpark">
<condition field="destination_number" expression="^5901$">
<action application="answer"/>
<action application="fifo" data="5900@${domain_name} out nowait"/>
</condition>
</extension>
<X-PRE-PROCESS cmd="include" data="default/*.xml"/>
</context>
</include>
freeswitch配置功能二的更多相关文章
- 第一次使用Android Studio时你应该知道的一切配置(二):新建一个属于自己的工程并安装Genymotion模拟器
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- 第1章 开发环境安装和配置(二)安装JDK、SDK、NDK
原文 第1章 开发环境安装和配置(二)安装JDK.SDK.NDK 无论是用C#和VS2015开发Androd App还是用Java和Eclipse开发Androd App,都需要先安装JDK和Andr ...
- EasyNVR网页H5无插件播放摄像机视频功能二次开发之直播通道接口保活示例代码
背景需求 随着雪亮工程.明厨亮灶.手机看店.智慧幼儿园监控等行业开始将传统的安防摄像头进行互联网.微信直播,我们知道摄像头直播的春天了.将安防摄像头或NVR上的视频流转成互联网直播常用的RTMP.HT ...
- SpringBoot自动化配置之二:自动配置(AutoConfigure)原理、EnableAutoConfiguration、condition
自动配置绝对算得上是Spring Boot的最大亮点,完美的展示了CoC约定优于配置: Spring Boot能自动配置Spring各种子项目(Spring MVC, Spring Security, ...
- 使用 EPPlus 封装的 excel 表格导入功能 (二) delegate 委托 --永远滴神
使用 EPPlus 封装的 excel 表格导入功能 (二) delegate 委托 --永远滴神 前言 接上一篇 使用 EPPlus 封装的 excel 表格导入功能 (一) 前一篇的是大概能用但是 ...
- WCF学习之旅—WCF4.0中的简化配置功能(十五)
六 WCF4.0中的简化配置功能 WCF4.0为了简化服务配置,提供了默认的终结点.绑定和服务行为.也就是说,在开发WCF服务程序的时候,即使我们不提供显示的 服务终结点,WCF框架也能为我们的服务提 ...
- 【Big Data】HADOOP集群的配置(二)
Hadoop集群的配置(二) 摘要: hadoop集群配置系列文档,是笔者在实验室真机环境实验后整理而得.以便随后工作所需,做以知识整理,另则与博客园朋友分享实验成果,因为笔者在学习初期,也遇到不少问 ...
- 阿里云服务器Linux CentOS安装配置(二)yum安装svn
阿里云服务器Linux CentOS安装配置(二)yum安装svn 1.secureCRT连接服务器 2.先创建一个文件夹,用来按自己的习惯来,用来存放数据 mkdir /data 3.yum安装sv ...
- P6 EPPM R16.1安装与配置指南(二)
P6 EPPM R16.1安装与配置指南(一) http://www.cnblogs.com/endv/p/5634620.html P6 EPPM R16.1安装与配置指南(二) 环境变量配置 新建 ...
随机推荐
- SpringBoot之AOP
AOP:面向切面编程,相当于OOP面向对象编程. Spring的AOP的存在目的是为了解耦,AOP可以让一组类共享相同的行为. Spring支持AspectJ的注解切面编程: (1)使用@Aspect ...
- 【转】PO/POJO/BO/DTO/VO的区别
PO :persistent object持久对象 1 .有时也被称为Data对象,对应数据库中的entity,可以简单认为一个PO对应数据库中的一条记录. 2 .在hibernate持久化框架中 ...
- Ubuntu18.04: GPU Driver 390.116 + CUDA9.0 + cuDNN7 + tensorflow 和pytorch环境搭建
1.close nouveau 终端输入:sudo gedit /etc/modprobe.d/blacklist.conf 末尾加两行 blacklist nouveau options nouve ...
- element-ui <el-input> 注册keyup事件,即键盘enter.
<template> <!-- 需求:keyup事件一般用在input中,在input框中输入内容,用户点击键盘的enter,执行搜索 --> <div class=&q ...
- jsp页面怎么引入js
人老了,容易忘记事情,再此记录 这里需要注意的是js文件夹要直接放在WebRoot或者WebContent文件夹下面,不要放在WEB-INF下面.因为TomCat对WEB-INF这个文件夹下面的资源是 ...
- 第二课 ---git时光穿梭(版本回退)
1. git status 掌握仓库当前的状态. 2. git diff 查看修改的内容部分. //版本回退: 1.查看更新的历史记录. git log git log --pretty=o ...
- sql习题及答案
sql习题:http://www.cnblogs.com/wupeiqi/articles/5729934.html 习题答案参考:https://www.cnblogs.com/wupeiqi/ar ...
- Mdate时间插件
在做移动端的页面时,用户报名某个活动,需要填写她的出生日期,这时可以用Mdate插件来完成,已达到更好的用户体验 操作很简单,效果也不错,是滑动选择时间的,也有回调函数方便我们使用.只需要在页面中引入 ...
- Ubuntu18下sudo apt install xxx出现问题
当执行sudo apt install rpm时失败(apt-get也失败),输出如下报错信息: E: Could not get lock /var/lib/dpkg/lock - open (11 ...
- centos 7添加硬盘及LVM扩容
一堆概念 分区工具 fdisk:支持MBR,对GPT支持的不好 parted:支持GPT partprobe(centos 5/6).partx(centos 7)通知内核强制重读磁盘分区表 分区表 ...