freeswitch折腾笔记1--SIP中继对接

freeswitch与各种设备对接的成功配置,需要的请参考,有错误的地方请指导。

1、对接华为softco

中继配置

\sip_profiles\external\

<include>
<gateway name="softco5816"> 
 <param name="proxy" value="172.16.100.248:5060"/>
 <param name="realm" value="172.16.100.248"/>
   <param name="register" value="false"/>
   <param name="rtp-autofix-timing" value="false"/>
   <param name="caller-id-in-from" value="true"/>
   <param name="from-domain" value="huawei"/>
</gateway>
</include>

拨号规则

出局

\conf\dialplan\default\

<include>
  <extension name="to5816">
    <condition field="destination_number" expression="^9(\d+)$">   --加拨9至softco
    <action application="bridge" data="sofia/gateway/softco5816/$1"/>
    </condition>
  </extension>
</include>

softco侧配置对端SIP端口为5080

2、对接网络电话提供商

中继配置

\sip_profiles\external\

<include>
    <gateway name="sip_isp">
      <param name="username" value="username"/>
      <param name="password" value="password"/>
      <param name="realm" value="sip.isp.com"/>
      <param name="from-domain" value="sip.isp.com"/> 
    </gateway>
</include>

拨号规则

\conf\dialplan\default\

<include>
  <extension name="sip_isp_outbound">
    <condition field="destination_number" expression="^(1\d{10})$">
    <action application="bridge" data="sofia/gateway/sip_isp/$1"/>
    </condition>
  </extension>
</include>

3、深圳电信IMS对接

中继配置

\sip_profiles\external\

<include>
<gateway name="gd_ims">
<param name="username" value="+8675512345678"/>
<param name="from-user" value="+8675512345678"/>
<param name="realm" value="116.31.226.17"/>
<param name="auth-username" value="[email protected]cims.cn"/>
<param name="proxy" value="gd.ctcims.cn"/>
<param name="from-domain" value="gd.ctcims.cn"/>
<param name="register-proxy" value="116.31.226.17"/>
<param name="outbound-proxy" value="bac01.sz.gd.ctcims.cn"/>
<param name="password" value="password"/>
<param name="register" value="true"/>
<param name="expire-seconds" value="3600"/>
<param name="retry-seconds" value="30"/>
<param name="ping" value="25"/>
<param name="context" value="public"/>
<param name="sip-ip" value="$${local_ip_v4}"/>
</gateway>
</include>
<!-- realm:域名 -->
<!-- username:认证的用户名 -->
<!-- password:认证的密码 -->
<!-- from-user:指定在SIP消息中的源用户信息,没有配置则默认和username相同 -->
<!-- from-domain:是指定域,它们会影响SIP中的“From”头域。 -->
<!-- regitster-proxy:表示注册的地址 -->
<!-- outbound-proxy:表示呼出时指向的地址,这里其实和注册地址是一致的 -->
<!-- register:是否注册 -->
<!-- expire-seconds:注册的间隔时间 -->

拨号规则

出局

\conf\dialplan\default\

<include>
  <extension name="gd_ims_out">
    <condition field="destination_number" expression="^9(\d+)$">     <!-- 加9出局 -->
    <action application="export" data="nolocal:execute_on_answer=start_dtmf"/>  <!-- 解决不能二次拨号 ,在openwrt可能导致不能呼出-->
    <action application="set" data="effective_caller_id_number=+8675512345678"/><!-- 主叫号码 -->
    <action application="set" data="effective_caller_id_name=eSpace7950"/> <!-- 主叫设备名 -->
    <action application="bridge" data="sofia/gateway/gd_ims/[email protected]"/>  <!-- 在openwrt需要添加“@目的IP(域名可能不行)”-->
    </condition>
  </extension>
</include>

拨号规则

入局

\conf\dialplan\public\

<include>
  <extension name="ims_in_1">
  <!-- 转接不成功转语音信箱 -->
  <condition field="destination_number" expression="8675512345678$">
  <action application="set" data="call_timeout=30"/>
  <action application="set" data="hangup_after_bridge=true"/>
  <action application="set" data="continue_on_fail=true"/>
  <action application="transfer" data="1002 XML default"/>
  <action application="answer"/>
  <action application="sleep" data="1000"/>
  <action application="bridge" data="loopback/app=voicemail:default ${domain_name} 1002"/>
  </condition>
  </extension>
</include>

4、对接华为UAP6600

中继配置

\sip_profiles\external\

<include>
<gateway name="TO_UAP6600_trunk">
<param name="username" value="sf-tech"/>
<param name="realm" value="10.202.57.1"/>
<param name="proxy" value="10.202.57.1:5060"/>
<param name="from-domain" value="10.202.90.18"/>  <!--本地IP/域 -->
<param name="register" value="false"/>
<param name="expire-seconds" value="3600"/>
<param name="retry-seconds" value="30"/>
<param name="context" value="public"/>
</gateway>
</include>

拨号规则

出局

\conf\dialplan\default\

<include>
  <extension name="TO_UAP6600_trunk_OUT">
    <condition field="destination_number" expression="^9(\d+)$">     <!-- 加9出局 -->
    <action application="set" data="sip_h_X-accountcode=${accountcode}"/>
    <action application="set" data="call_direction=outbound"/>
    <action application="set" data="hangup_after_bridge=true"/>
    <action application="set" data="effective_caller_id_name=${caller_id_name}"/> <!-- 主叫设备名 -->
    <action application="set" data="effective_caller_id_number=${caller_id_number}"/> <!-- 主叫号码 -->
    <action application="set" data="inherit_codec=true"/>
    <action application="set" data="ignore_display_updates=true"/>
    <action application="set" data="callee_id_number=$1"/>
    <action application="set" data="continue_on_fail=true"/>
    <action application="set" data="dtmf_type=info"/>  <!-- 解决不能二次拨号-->
    <action application="export" data="nolocal:execute_on_answer=start_dtmf"/>  <!-- 解决不能二次拨号-->
    <action application="bridge" data="sofia/gateway/TO_UAP6600_trunk/$1"/>  <!-- -->
    </condition>
  </extension>
</include>
时间: 2024-11-08 18:54:44

freeswitch折腾笔记1--SIP中继对接的相关文章

FreeSWITCH折腾笔记4——自己做一个TTS服务器

freeswitch原生支持的tts功能中文一般是使用的ekho,但是那合成的效果简直惨不忍睹,于是我想自己做一个TTS服务器. 首先是找到比较满意的TTS引擎,科大讯飞的效果当然是没话说,但是价格不菲,其他商业的引擎中文合成也不是很流畅,偶然发现windows7自带的合成引擎还算过得去,windows10带的合成引擎就更好了(有兴趣的可以先测试一下,直接在windows控制面板中的语音设置里面有测试,但是测试的中英文混读很蛋疼). 那么问题来了,怎么把这个引擎用到我的FS上边呢? 思路,deb

FreeSWITCH折腾笔记5——G729转码支持

FreeSWITCH默认是不支持G729转码的,但可至此G729媒体透传,因此如果两个话机有一个只支持G729时是无法进行呼叫的,同时在使用G729编码时FreeSWITCH是不能进行录音的. 当然如果商业应用的话可以购买G729的许可,10刀一通道,或者使用硬件的转码卡,价格貌似就更高了. 网络上有很多使用8000hz的源码包编译FreeSWITCH可用的G729模块,但是效果一般,我这里使用的是bcg729的源码来进行编译,转码效果比8000hz的稍好.BCG729当前最新的版本是1.0.3

FreeSWITCH折腾笔记3——数据库修改为postgresql

需要修改的配置文件: switch.conf.xml //核心表 cdr_pg_csv.conf.xml //通话记录 db.conf.xml //核心表 voicemail.conf.xml //留言相关的表 internal.xml // external.xml // fifo.conf.xml //fifo相关的表 callcenter.conf.xml //callcenter程序相关的表. 1.switch.conf.xml <param name="core-db-dsn&q

kali linux 折腾笔记

http://xiao106347.blog.163.com/blog/static/215992078201342410347137/ 这里告诉你刚刚装好kali后要做,有些也是不正确的,可能开始你就没有办法进行这一步,因为没有添加足够的正确的源 源添加参考我上一篇博文kali linux soucrse... 分享牛人的经验,也是为了备忘! kali linux 折腾笔记,码迷,mamicode.com

一处折腾笔记:Android内嵌html5加入原生微信分享的解决的方法

有一段时间没有瞎折腾了. 这周一刚上班萌主过来反映说:微信里面打开聚客宝.分享功能是能够的(这里是用微信自身的js-sdk实现的).可是在android应用里面打开点击就没反应了:接下来狡猾的丁丁在产品群里AT我说:偶们的产品设计不是一直都被技术给反压制住么?真是气死,呵呵.自己刚好有空又有兴趣,于是研究了下.没曾想竟也研究出来了.事后我对整个操作过程整理了下,方便他人也提升自己. 废话少扯.以下上干货. 我的思路是:在点击h5上的分享图标时.触发js事件,在这里面能够对当前设备的操作系统和浏览

Kali Linux 1.0 新手折腾笔记(2013.3.21更新)

rootoorotor昨天折腾了 Kali Linux 1.0,把大概的配置过程记录下来,希望对想接触或使用Kali Linux的同学有所帮助. 请注意: 1.本文为面向新手的教程,没技术含量,没事瞎折腾,感觉好玩…..如果您可以熟练使用Debian Linux或者使用过Arch Linux.Gentoo或者是自己LFS你完全可以无视本文. 2.如果您使用kali Linux只作为渗透测试之用,rootoorotor建议您在kali.org直接下载Kali Linux VMware版本在虚拟机里

MinGW 与 MSVC 生成 DLL 各种情况的折腾笔记

??本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:http://blog.csdn.net/zuishikonghuan/article/details/51918076 写这篇博客,主要是刚折腾 MinGW,相关内容网上的资料不全,而且错误很多 其实之前我根本没把这个当回事,我就想 MinGW 跟 Linux 上的 GNU 编译器不会有差别,但是事实却不是这样... 提示:所有代码均使用 __stdcall 安装 MSVC 和 M

Mac下Python折腾笔记

这几天一直折腾Python,试图修改系统自带的Python,上一篇博客的方式确实修改了系统默认的Python,但是带来一个结果svn git Xcode都挂了,因为库找不到. 后来在Mac下编译Python,结果确实也搞定了,但是各种库的编译参数太复杂,最终还是失败了. 最后一种方法,就是保留系统默认Python /System/Library/Frameworks/Python.framework/Versions/2.7 然后从python官网下载安装包进行安装 /Library/Frame

Kali Linux 新手折腾笔记

http://defcon.cn/1618.html 2014年09月29日 渗透测试 暂无评论 阅读 55,052 次 最近在折腾Kali Linux 顺便做一简单整理,至于安装就不再多扯了,估计会出现的问题上一篇文章<VMware虚拟机安装Kali Linux 遇到的问题>也有提到,包括Kali Linux和VMware Workstation 10 下载链接都有提供. Kali Linux下载链接:http://mirrors.ustc.edu.cn/kali-images/kali-2