centos7编译安装freeswitch软电话交换软件并实现通话

centos7编译安装freeswitch,并实现通话

环境

centos7.9(最小安装的)

freeswitch1.10.5源码

安装

编译环境安装

由于centos7使用最小安装,需要安装的软件有点多

yum install -y https://files.freeswitch.org/repo/yum/centos-release/freeswitch-release-repo-0-1.noarch.rpm epel-release

yum install -y yum-utils --enablerepo=extras

yum install -y yum-plugin-ovl centos-release-scl rpmdevtools yum-utils git wget vim devtoolset-7-gcc* devtoolset-7 libtiff-devel cmake3 libatomic unixODBC unixODBC-devel.x86_64 postgresql-libs postgresql-devel libpqxx-devel

yum install -y gcc-c++ autoconf automake libtool python ncurses-devel zlib-devel libjpeg-devel openssl-devel e2fsprogs-devel sqlite-devel libcurl-devel pcre-devel speex-devel ldns-devel libedit-devel libxml2-devel libyuv-devel libvpx-devel libvpx2* libdb4* libidn-devel unbound-devel libuuid-devel lua-devel libsndfile-devel yasm-devel

下载准备源码文件

由于github官网不能稳定访问 此处使用镜像网址github.com.cnpmjs.org,也可通过其他途径下载源码文件

cd /usr/local/src
git clone -b v1.10.5 https://github.com.cnpmjs.org/signalwire/freeswitch.git freeswitch

cd /usr/local/src/freeswitch
git clone https://github.com.cnpmjs.org/freeswitch/spandsp.git
git clone https://github.com.cnpmjs.org/freeswitch/sofia-sip.git
git clone https://github.com.cnpmjs.org/signalwire/libks.git

编译安装

安装libks

cd /usr/local/src/freeswitch/libks
cmake3 .
make -j32
make install -j32

安装spandsp

cd /usr/local/src/freeswitch/spandsp
./bootstrap.sh -j32
./configure
make -j32
make install -j32
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:${PKG_CONFIG_PATH}
ldconfig

安装sofia

cd /usr/local/src/freeswitch/sofia-sip
./bootstrap.sh -j32
./configure
make -j32
make install -j32
ldconfig

cd /usr/local/src/freeswitch
./bootstrap.sh -j32
vim modules.conf
#根据需要注释不需要的功能

./configure --enable-portable-binary --prefix=/opt/freeswitch-test --with-gnu-ld --with-python --with-openssl --enable-core-odbc-support --enable-zrtp
make -j32
make install -j32

启动测试

启动

/opt/freeswitch/bin/freeswitch
/opt/freeswitch/bin/freeswitch -nc #后台启动

客户端连接

/opt/freeswitch/bin/fs_cli

注册

注册-做为落地网关

以注册到vos落地为例

1 vos新建动态落地,并记录网关名称和配置密码

2 新建freeswitch配置文件
cat /opt/freeswitch/etc/freeswitch/sip_profiles/external/test.xml











cat /opt/freeswitch/etc/freeswitch/sip_profiles/external.xml
如下部分需要自定义:




3 启动fs,按f5并查看注册状态
如下,已正常注册到vos,

4 在拨号计划external-xxx中指定中继线路信息,即可将来自vos的呼叫送往指定线路。
cat /opt/freeswitch/etc/freeswitch/dialplan/ext.xml











注册-做为对接网关
posted @ 2022-03-16 17:21  tangshow  阅读(988)  评论(0)    收藏  举报