什么是FreeSWITCH
FreeSWITCH是一个开源的电话交换平台。世界上第一个跨平台的、伸缩性极好的、免费的、多协议的电话软交换平台。
安装包
Index of /windows/installer
安装声音文件
在源代码目录下执行
1 2 3 4 5
| make sounds-install make moh-install
make cd-sounds-install make cd-moh-install
|
默认安装在/usr/local/freeswitch/sounds
下
安装路径
/usr/local/freeswitch
常用命令
bin/freeswitch
和bin/fs_cli
建立软连接
1 2
| ln -sf /usr/local/freeswitch/bin/freeswitch /usr/bin/ ln -sf /usr/local/freeswitch/bin/fs_cli /usr/bin/
|
FreeSWITCH默认号码
配置FreeSWITCH
配置文件默认放在 conf/ 下
添加网关
在conf/sip_profiles/external
创建一个网关的xml,例如gw-xxx.xml,可参考同目录下的example.xml,执行以下命令使之生效
1 2 3 4 5 6 7 8
| freeswitch> sofia profile external scan
freeswitch> sofia status
freeswitch> originate sofia/gateway/gw1/xxxxx &echo
freeswitch> sofia status profile internal reg
|
常用命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| freeswitch -nc
freeswitch -stop
freeswitch -nonat
ps aux|grep freeswitch
netstat -an | grep 5060
freeswitch> originate user/1000 &echo
freeswitch> originate user/1000 &park
freeswitch> originate user/1000 &hold
freeswitch> originate user/1001 &playback(/root/welcome.wav)
freeswitch> originate user/1001 &record(/root/voice_of_1001.wav)
freeswitch> originate user/1001 &bridge(user/1002)
|
FreeSWITCH还在conf/autoload_configs/switch.conf.xml“中定义了一些控制台快捷键。可以通过F1~F12这几个按键来使用它们,最常用的快捷键是F6(reloadxml)、F7(关闭log输出)、F8(开启debug级别的log输出)。
默认的配置如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <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>
|
fs_cli 支持很多命令行参数,例如: -x 参数,执行一条命令后退出