1、Freeswitch 配置文件

转载配置文件解读

配置文件默认的目录是 /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用户

五、ivr_memues目录

该目录下放了一些默认的IVR菜单的例子

2、freeswitch 添加用户

Freeswitch默认的20个用户(1000-1019),如果需要更多的用户,那就需要添加一个新用户,所以就涉及到了Freeswitch的配置问题。例如我们要添加一个用户叫jack ,分机号为1020,只需要到相应的目录进行复制修改,并且把effective_caller_id_name 修改为jack

2.1 增加新用户配置文件

  1. 配置文件目录
cd /usr/local/freeswitch/conf/directory
  1. 复制分机文件
touch 1020.xml
并且将1000.xml内容拷贝到1020,并且修改1000为1020即可
  1. 修改分机名
<variable name="effective_caller_id_name" value="JACK"/>

2.2 修改拨号计划(Dialplan)使其他用户可以呼叫它

  1. 进入目录
cd /usr/local/freeswitch/conf/dialplan
  1. 添加拨号记录
<extension name="Local_Extension">
      <condition field="destination_number" expression="^(10[01][0-9]|1020)$">
        <action application="export" data="dialed_extension=$1"/>
        <!-- bind_meta_app can have these args <key> [a|b|ab] [a|b|o|s] <app> -->
        <action application="bind_meta_app" data="1 b s execute_extension::dx XML features"/>

增加1020 分机号

  1. 重新加载
    然后在命令行中reload
freeswitch@loacl> reloadxml