最经在玩FreeSWITCH的时候,遇到很多的问题,特此总结一下,希望以后不要犯类似的错误了:

  1、Client端无法注册,但是FS运行正常?

    解决办法:查看防火墙是否关闭。/etc/init.d/iptables stop ,这条指令的仅仅是在运行FS的时候关闭一次防火墙,如果想每次开机都关闭防火墙,使用chkconfig iptables off。

  2、打开FS的WebSOCKET功能?

    解决办法:在/usr/local/freeswitch/conf/sip_profiles/internal.xml中去掉WS的注释即可,该行代码为:<param name="ws-binding" value=":5066"/>

  3、修改完FS之后,发现FS并没有按照自己修改的方式进行?

    解决办法:在fs_cli 中输入reloadxml,或者重新开启FreeSWITCH。

  4、开启FreeSWITCH的常用方法有哪些?

    A、/usr/local/freeswitch/bin/freeswtich -nonat

    B、/etc/init.d/freeswitch start

    C、service freeswitch start

  5、如何让FS实现媒体流和SIP信令分开传输,即媒体流实现P2P,SIP信令来维持通话过程的建立?

    解决办法:设置FS为媒体绕行方式,默认的是流媒体(RTP包)和SIP 信令是在一起传输,都经过FS,目的是FS做监控或者录音录影的功能。

           要让RTP 和SIP 分离,只要在/usr/local/freeswitch/conf/dialplan/default.xml中的Local_Extension中添加如下的代码即可。

          <action application="set" data="bypass_media=true"/>
          <action application="bridge" data="user/${dialed_extension}@${domain_name}"/>

  6、在fs_cli中使用show calls,或者使用 sofia status profile internal reg查看注册账号是,发现已经注销的账号还没有及时更新?

  原因:FreeSWITCH分为内核部分(FS Core)和外围两部分。内核使用其内部的队列、哈希表以及外部的SQL数据库,当前,系统的核心数据库使用SQLite,默认村放在db/core.db。

  使用外部数据库的好处是:查询数据不用锁定内存数据结构。这样不仅能提供性能,而且降低了死锁的风险,保证了系统的稳定。

     系统对数据库操作做了优化,在高并发状态时,核心会尽量将几百条 SQL 一齐执行,这大大提高了性能。show calls 等都是直接从数据库中读取内容并显示,所以在低并发的状态下执行就显得稍微有点慢。

  7、从SDP协议应该看到的讯息:(2013/12/25)

    A、所要描述的RTP的IP以及端口PORT;

    B、编码器的种类,以及是否支持视频;

    C、是否支持按键功能

注:很多情况下呼叫不成功都是因为SDP协商不成功导致的

  以上是近期遇见问题的一个小结,以后的FS问题和解决方法也会及时的更新。

转载于:https://www.cnblogs.com/logo-fox/p/3465288.html

FreeSWITCH异常原因总结相关推荐

  1. java.lang.NullPointerException异常原因及解决

    java.lang.NullPointerException异常原因是因为创建了一个引用类型的变量却没有指向任何对象而又去通过这个引用类型变量加点的形式去访问非静态的方法及属性. 给出三种情况, 第一 ...

  2. Springboot 抛出Failed to determine a suitable driver class异常原因

    Springboot 抛出Failed to determine a suitable driver class异常原因 参考文章: (1)Springboot 抛出Failed to determi ...

  3. Mapped Statements collection does not contain value for 之运行异常原因

    Mapped Statements collection does not contain value for 之运行异常原因 参考文章: (1)Mapped Statements collectio ...

  4. java.util.ConcurrentModificationException异常原因及解决方法

    java.util.ConcurrentModificationException异常原因及解决方法 参考文章: (1)java.util.ConcurrentModificationExceptio ...

  5. Java ConcurrentModificationException异常原因和解决方法

    Java ConcurrentModificationException异常原因和解决方法 参考文章: (1)Java ConcurrentModificationException异常原因和解决方法 ...

  6. 05-Prohibited package name: java异常原因

    Prohibited package name: java异常原因 今天用eclipse创建了一个java project,然后建了一个名为"java"的文件夹,当启动里面的主函数 ...

  7. Android异常总结---1.异常原因: java.lang.IllegalArgumentException: URI: content://com.android.contacts/con

    1.异常原因: java.lang.IllegalArgumentException: URI: content://com.android.contacts/contacts1/data, call ...

  8. Java并发--ConcurrentModificationException(并发修改异常)异常原因和解决方法

    Java并发--ConcurrentModificationException(并发修改异常)异常原因和解决方法 参考文章: (1)Java并发--ConcurrentModificationExce ...

  9. c#堆栈跟踪;c#异常原因查找打印;c#打印错误日志

    #region 创建错误日志         /// <summary>         /// 创建错误日志         /// </summary>         p ...

最新文章

  1. iOS字体换算 PS的字体大小 =iOS上字体大小
  2. redis延迟队列 实现_灵感来袭,基于Redis的分布式延迟队列(续)
  3. [JDK8]性能优化之使用LongAdder替换AtomicLong
  4. matlab摆线等时性程序,摆的等时性实验报告.doc
  5. 三种常用SoC片上总线的分析与比较 (Z)
  6. 今天试了一下iscroll
  7. YBTOJ洛谷P4869:出现位置(线性基)
  8. 网页缩放与窗口缩放_功能缩放—不同的Scikit-Learn缩放器的效果:深入研究
  9. 全国计算机等级考试职称,全国职称计算机考试与全国计算机等级考试有什么不同?...
  10. 卷积神经网络CNN算法原理
  11. WPF Image Binding Uri Source 失败解决办法
  12. Android Location API跟踪您当前的位置
  13. lightning接口_苹果、安卓充电接口有望统一,欧盟重压下,苹果将不得不妥协
  14. matlab 带通滤波结果不对,带通滤波 matlab
  15. EVIEWS 学习基本操作+数据输入 01
  16. sql 中distinct和group by
  17. 知识付费小程序源码可开激励广告流量主+虚拟资源变现+附带视频教程
  18. 软件架构-Nosql之redis
  19. sqlserver drop image类型的列不释放空间问题处理
  20. 小桥流水秒赞kyuan版 无后门

热门文章

  1. 静态布局、自适应布局、流式布局、响应式布局、弹性布局简析、BFC
  2. [经典算法] 八枚硬币
  3. hadoop中MapReduce中压缩的使用及4种压缩格式的特征的比较
  4. s3c6410学习笔记-烧写uboot+构建文件系统
  5. 动态绑定 dgvlist 列
  6. 让bat异常之后不直接关闭窗口的办法.
  7. redis系列之数据库与缓存数据一致性解决方案
  8. JAVA大文件上传断点续传解决方案
  9. REST API 基于ACCESS TOKEN 的权限解决方案
  10. 解决MyEclipse2015启动时:Java was started but returned exit code=1问题