最经在玩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问题和解决方法也会及时的更新。

FreeSWITCH异常原因总结的更多相关文章

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

    Java ConcurrentModificationException异常原因和解决方法 在前面一篇文章中提到,对Vector.ArrayList在迭代的时候如果同时对其进行修改就会抛出java.u ...

  2. HttpClient的CircularRedirectException异常原因及解决办法

    HttpClient的CircularRedirectException异常原因及解决办法 这两天在使用我自己爬虫抓取网页的时候总是出现 org.apache.http.client.ClientPr ...

  3. Java并发编程:Java ConcurrentModificationException异常原因和解决方法

    Java ConcurrentModificationException异常原因和解决方法 在前面一篇文章中提到,对Vector.ArrayList在迭代的时候如果同时对其进行修改就会抛出java.u ...

  4. 【转】Java ConcurrentModificationException异常原因和解决方法

    原文网址:http://www.cnblogs.com/dolphin0520/p/3933551.html Java ConcurrentModificationException异常原因和解决方法 ...

  5. 修改List报ConcurrentModificationException异常原因分析

    使用迭代器遍历List的时候修改List报ConcurrentModificationException异常原因分析 在使用Iterator来迭代遍历List的时候如果修改该List对象,则会报jav ...

  6. 关于fasterxml-jackson发生Can not deserialize instance of异常原因验证

    关于fasterxml-jackson发生Can not deserialize instance of异常原因验证 这两天线上有大量的java.lang.IllegalArgumentExcepti ...

  7. 9、Java ConcurrentModificationException异常原因和解决方法

    Java ConcurrentModificationException异常原因和解决方法 在前面一篇文章中提到,对Vector.ArrayList在迭代的时候如果同时对其进行修改就会抛出java.u ...

  8. mysql主从同步异常原因及恢复

    mysql主从同步异常原因及恢复 前言 mysql数据库做主从复制,不仅可以为数据库的数据做实时备份,保证数据的完整性,还能做为读写分离,提升数据库的整体性能.但是,mysql主从复制经常会因为某些原 ...

  9. R文件丢失异常原因汇总

    引言: R文件丢失异常在java开发中是个比较常见的异常,造成这个异常的原因可能非常微小,但是给Android开发者们造成的麻烦可是巨大的,当程序员们费尽千辛万苦,找到自己错在哪里的时候,绝对会对自己 ...

随机推荐

  1. 【1】【leetcode-127】单词接龙word-ladder

    (不会,经典广度优先搜索) 给定两个单词(beginWord 和 endWord)和一个字典,找到从 beginWord 到 endWord 的最短转换序列的长度.转换需遵循如下规则: 每次转换只能改 ...

  2. HDU 1098(条件满足 数学)

    题意是问是否存在非负整数 a,使得任取非负整数 x,f(x) 能够被 65 整除,其中 f(x) = 5*x^13 + 13*x^5 + k*a*x,如存在,输出 a 的最小值,如不存在,输出 no. ...

  3. 流媒体技术学习笔记之(十八)互联网草案HTTP直播流2017年5月

    原文地址:https://tools.ietf.org/html/draft-pantos-http-live-streaming-23 1.HTTP直播流介绍 HTTP实时流媒体提供了一个可靠的,成 ...

  4. 解析ArcGis拓扑——检查的流程,以面重叠检查为例

    最简单的面重叠错误检查是使用“地理处理”——“面相交”进行检查,其结果是重叠部分提取而成的新面要素类.本例不讲述此种方法. step1 准备待拓扑检查数据 名词: 数据库 DataBase→顾名思义, ...

  5. vue 移动端日期选择组件 vue-mobile-calendar

    vue-mobile-calendar cnpm install vue-mobile-calendar -S import Vue from 'vue' import Calendar from ' ...

  6. Linux文件权限设置

    基本概念 https://linux.cn/article-7418-1.html#3_8880 用户管理 文件权限设置 -添加用户账户08% -理解 /etc/passwd 中的内容12% -理解 ...

  7. 四十一、Linux 线程——线程同步之条件变量

    41.1 概念 41.1.1 条件变量的介绍 互斥锁的缺点是它只有两种状态:锁定和非锁定 条件变量通过允许线程阻塞和等待另一个线程发送信号的方法弥补了互斥锁的不足 条件变量内部是一个等待队列,放置等待 ...

  8. WebSocket起航 JavaScript客户端和Server通信

    Message  =>JSON  => Move 客户端发给服务器总是Move  server.send(JSON.stringify({row: row, column: column} ...

  9. 【noip 2015】提高组

    先扔一份写的超级详细的题解.   -Day1-    -Day2- (感觉自己并没有什么写题解的必要啊……做点补充好了,顺便扔代码 D1T1.神奇的幻方 题目链接 #include<cstdio ...

  10. 拦截对该服务器所有的http请求

    一:拦截对该服务器所有的http请求. 在config 中加, <system.webServer> <modules> <add name="HttpAuth ...