FreeSWITCH配置文件详解
https://blog.csdn.net/dujiajiyu/article/details/93676119
配置文件默认的目录是 /usr/local/freeswitch/conf
| conf/目录和文件 | 说明 |
| :----------------------------- | --------------------------------------------------------- |
| \|——vars.xml | 一些常用变量 |
| \|——autoload_configs | 目录、存放自动加载的配置文件 |
| \| \|——modules.conf.xml | 配置当FreeSWITCH启动时自动装载哪些模块 |
| \| \|——*.xml | 一般来说每个模块都有一个配置文件 |
| \|——dialplan | 拨号计划 |
| \| \|——default.xml | 默认的拨号计划配置、一般用于内部用户路由 |
| \| \|——public.xml | 默认的拨号计划配置、一般用于外部来话路由 |
| \|——directory | 用户目录 |
| \| \|——default | 默认的用户目录配置 |
| \| ——*.xml | SIP用户、每个用户都有一个文件 |
| \|——sip_profiles | SIP配置文件 |
| \| \|——internal.xml | 一般SIP profile、或称作一个SIP-UA、监听在本地IP及端口5060 |
| \| \|——externa.xml | 另一个SIP-UA、用作外部连接、端口5080 |
一、freeswitch.xml
freeswitch.xml文件是所有XML文件的粘合剂,它没有特别的作用,主要就是将不同的配置文件包含到不同部分(Section)中,从而生成一个大的XML配置文件
二、vars.xml
vars.xml 主要通过 X-PER-PROCESS 指令定义了一些全局变量,全局变量使用 $${var} 表示,临时变量以 ${var} 表示,在实际使用中可以通过API命令来获取全局变量的值如:global_getvar local_ip_v4,也可以通过 eval $${local_ip_v4}
三、autoload_configs目录
该目录下的各种配置文件是在系统启动的时候载入,一般来说都是模块级的配置文件,每个模块对应一个(主要并不是所有的模块都有配置文件),文件名一般以“模块名.confi.xml”的方式命名(模块名中不包含“mod_“)
启动载入根据配置文件module.conf.xml决定
四、directory目录
该目录中的配置文件决定了当FreeSWITCH作为注册服务器时,那些用户可以注册,即用于配置SIP用户
启动原理:c语言编写执行的
http://www.360doc.com/content/14/0120/14/12747488_346631095.shtml
启动过程中的常见问题及处理方案:
sofia.c:3146 Error Creating SIP UA for profile: internal-ipv6 (sip:mod_sofia@[::1]:5060;transport=udp,tcp) ATTEMPT 2 (RETRY IN 5 SEC)
主要原因是:系统不支持IPv6地址,需要让freeswitch去掉IPv6的支持
处理方案:
1.删除sip_profiles下相关的IPV6文件
2.破坏掉ipv6文件的类型,不再是xml类型即可
出现这种报错:
Cannot lock pid file /usr/local/freeswitch/run/freeswitch.pid.
导致原因是该系统还有类似的freeswitch进程在启动,导致无法启动
conf/autoload_configs/switch.conf.xml
主要设置控制台快捷键、数据库处理句柄、session会话、日志等级等
1.快捷设置
<cli-keybindings>
<key name="1" value="help"/>
<key name="2" value="status"/>
<key name="3" value="show channels"/>
<key name="4" value="show calls"/>
<key name="5" value="sofia status"/>
<key name="6" value="reloadxml"/>
<key name="7" value="console loglevel 0"/>
<key name="8" value="console loglevel 7"/>
<key name="9" value="sofia status profile internal"/>
<key name="10" value="sofia profile internal siptrace on"/>
<key name="11" value="sofia profile internal siptrace off"/>
<key name="12" value="version"/>
</cli-keybindings>
2.
<param name="max-sessions" value="1000"/> 最大连接session
<param name="sessions-per-second" value="30"/> 每秒最大
######freeswitch 作为服务器注册
Sofia 的配置文件是 conf/autoload_configs/sofia.conf.xml
<X-PRE-PROCESS cmd="include" data="../sip_profiles/*.xml"/>
所以,可以认为所有的Sofia配置文件都在conf/sip_profiles/中
浙公网安备 33010602011771号