【freeSwitch】——centos 7 安装教程及常见问题

简介: 【freeSwitch】——centos 7 安装教程及常见问题

引言


最近公司需要在系统中集成软电话的功能,之前我们是直接购买的蚂蚁电话,在使用了一段时间以后,会有一些问题,比如说稳定性,还有就是一些和我们自己业务相关的需要定制的功能都不能满足,所以我们需要自己搭建软电话平台,在前期调研以后我们选定freeswitch来完成,关于freeswitch的基本介绍大家自行google就可以了,在这介绍安装过程。


 1、下载源代码


     进入目录 cd /usr/local/src


    从git库中下载源代码 如果你没有安装git,执行yum install git 进行安装


   然后克隆源代码


   git clone -b v1.6 https://freeswitch.org/stash/scm/fs/freeswitch.git freeswitch


2、开始编译

 

进入freeswitch目录 cd/ freeswitch

 

运行 ./bootstrap.sh

 

如果会出现类似autoconf not found错误提示,是因为没有下载第三方依赖库。


 

freeswitch依赖的第三方库有:gcc-c++ ,wget alsa-lib-devel, autoconf ,automake ,bison ,broadvoice-devel ,bzip2 ,curl-devel, db-devel ,e2fsprogs-devel, flite-devel ,g722_1-devel, gdbm-devel, gnutls-devel ,ilbc2-devel ,ldns-devel ,libcodec2-devel ,libcurl-devel ,libedit-devel ,libidn-devel ,libjpeg-devel, libmemcached-devel, libogg-devel ,libsilk-devel,libsndfile-devel ,libtiff-devel ,libtheora-devel, libtool, libvorbis-devel ,libxml2-devel ,lua-devel ,lzo-devel ,mongo-c-driver-devel, ncurses-devel, net-snmp-devel ,openssl-devel ,opus-devel ,pcre-devel ,perl perl-ExtUtils-Embed pkgconfig portaudio-devel ,postgresql-devel, python26-devel ,python-devel ,soundtouch-devel,speex-devel, sqlite-devel ,unbound-devel, unixODBC-devel ,libuuid-devel ,which yasm zlib-devel。 


3、安装依赖库

yum install -y git gcc-c++ wget alsa-lib-devel autoconf automake bison broadvoice-devel bzip2 curl-devel db-devel e2fsprogs-devel flite-devel g722_1-devel gdbm-devel gnutls-devel ilbc2-devel ldns-devel libcodec2-devel libcurl-devel libedit-devel libidn-devel libjpeg-devel libmemcached-devel libogg-devel libsilk-devel libsndfile-devel libtiff-devel libtheora-devel libtool libvorbis-devel libxml2-devel lua-devel lzo-devel mongo-c-driver-devel ncurses-devel net-snmp-devel openssl-devel opus-devel pcre-devel perl perl-ExtUtils-Embed pkgconfig portaudio-devel postgresql-devel python26-devel python-devel soundtouch-devel speex-devel sqlite-devel unbound-devel unixODBC-devel libuuid-devel which yasm zlib-devel

4.再一次编译

 

运行 ./bootstrap.sh

 

接着运行 ./configure


如果出现以下界面,就是默认配置成功.  

20180512094858940.png


如果我们没有看到成功页面


可能是我们缺少编译环境,安装编译环境


yum install -y http://files.freeswitch.org/freeswitch-release-1-6.noarch.rpm epel-release


然后:增加mod_nuimrcp模块

编辑 vim ./build/modules.conf.in

修改 #asr_tts/mod_unimrcp  为  asr_tts/mod_unimrcp(去掉注释)


重新执行下面命令:

   

./bootstrap.sh -j
       ./configure


 5、执行make命令


如果出现以下界面,则编译成功


20180512101513822.png

我们可能会遇到如下错误

You must install libopus-dev to build mod_opus. Stop.


这是因为缺少 libopus-dev 依赖


yum install opus-devel


 然后在执行 make 命令即可


6、执行make install


   运行make install命令

   如果出现以下界面,则安装成功。


20180512101852974.png


7.启动freeswitch

 

进入cd /usr/local/freeswitch/bin/目录,然后运行 ./freeswitch命令。

 

如果出现以下界面,则运行成功。


2018051210200830.png


8.配置freeswitch在任何一个路径都可以运行


ln -sf /usr/local/freeswitch/bin/freeswitch /usr/bin/ 
ln -sf /usr/local/freeswitch/bin/fs_cli /usr/bin/


9.如果运行freeswitch出现以下错误,是因为端口被占用了。


[root@localhost ~]# freeswitch 
Cannot lock pid file /usr/local/freeswitch/run/freeswitch.pid.


解决办法:可以重启Linux或者关闭占用端口的进程。


10.如果freeswitch启动成功,但是linphone注册不上。


解决办法:systemctl stop firewalld.service (关闭防火墙)


11、注册成功

20180512102303982.png


小结


到此freeswitch的安装就完成了,对于freeswitch的学习刚刚开始,关于freeswitch的深入学习,会在后面的博客中介绍!

yum install -y http://files.freeswitch.org/freeswitch-release-1-6.noarch.rpm epel-release
目录
相关文章
|
3月前
|
分布式计算 Hadoop Java
Hadoop集群搭建,基于3.3.4hadoop和centos8【图文教程-从零开始搭建Hadoop集群】,常见问题解决
本文是一份详细的Hadoop集群搭建指南,基于Hadoop 3.3.4版本和CentOS 8操作系统。文章内容包括虚拟机创建、网络配置、Java与Hadoop环境搭建、克隆虚拟机、SSH免密登录设置、格式化NameNode、启动Hadoop集群以及通过UI界面查看Hadoop运行状态。同时,还提供了常见问题的解决方案。
Hadoop集群搭建,基于3.3.4hadoop和centos8【图文教程-从零开始搭建Hadoop集群】,常见问题解决
|
5月前
|
弹性计算 安全 Ubuntu
新手3分钟1Panel安装教程,使用阿里云服务器CentOS操作系统
在阿里云CentOS 7.9服务器上安装1Panel面板,包括远程连接ECS、执行安装命令、设置安装目录(默认/opt)、开启20410端口、配置安全入口和用户密码。记得在阿里云安全组中开放20410端口以访问面板。
235 0
新手3分钟1Panel安装教程,使用阿里云服务器CentOS操作系统
|
7月前
|
Kubernetes 监控 Linux
容器服务ACK常见问题之新增一台CentOS 5.4内核的节点失败如何解决
容器服务ACK(阿里云容器服务 Kubernetes 版)是阿里云提供的一种托管式Kubernetes服务,帮助用户轻松使用Kubernetes进行应用部署、管理和扩展。本汇总收集了容器服务ACK使用中的常见问题及答案,包括集群管理、应用部署、服务访问、网络配置、存储使用、安全保障等方面,旨在帮助用户快速解决使用过程中遇到的难题,提升容器管理和运维效率。
|
7月前
|
监控 Kubernetes 安全
容器服务ACK常见问题之centos系统配置失败如何解决
容器服务ACK(阿里云容器服务 Kubernetes 版)是阿里云提供的一种托管式Kubernetes服务,帮助用户轻松使用Kubernetes进行应用部署、管理和扩展。本汇总收集了容器服务ACK使用中的常见问题及答案,包括集群管理、应用部署、服务访问、网络配置、存储使用、安全保障等方面,旨在帮助用户快速解决使用过程中遇到的难题,提升容器管理和运维效率。
|
消息中间件 存储 监控
CentOS Stream 9下RabbitMQ安装教程(最新RabbitMQ安装教程)
CentOS Stream 9下RabbitMQ安装教程(最新RabbitMQ安装教程)
591 1
|
Linux 开发工具 数据安全/隐私保护
CentOS详细安装教程
本文在虚拟机上安装 CentOS Linux release 7.6.1810 版本的操作系统,仅作为安装记录。
1165 1
|
Linux 虚拟化
VMware CentOS 保姆级安装教程
VMware CentOS 保姆级安装教程
131 0
VMware CentOS 保姆级安装教程
|
Unix Linux 数据安全/隐私保护
2022CentOS下载与安装教程(最详细)
由于Linux是在Uniux系统上发展而来的,与Unix系统风格极其的相似,且能够在PC上实现多用户、多任务、多线程和多CPU特性。Linux是一个性能稳定的多用户操作系统,主要运行在Intel X86系列的CPU上面,且都支持32位和64位硬件,拥有较强的兼容性。 在Linux系统中每个发行的内核都有一个版本号,且每个版本号都是有主版本号、次版本号和修订次数组成,其格式为“主版本号.次版本号.修订次数号”,每个版本号都透露了该版本的类型,当次版本号位奇数的时候,说明该版本是一个测试版本,为偶数的时候是一个稳定的版本。
1186 2
|
Kubernetes 应用服务中间件 Linux
Centos kubeadm安装单master多node,kubernetes、k8s超详细安装教程
Centos kubeadm安装单master多node,kubernetes、k8s超详细安装教程
257 0
Centos kubeadm安装单master多node,kubernetes、k8s超详细安装教程
|
Java jenkins Linux
Centos 7 下jenkins安装教程
Centos 7 下jenkins安装教程
876 0

热门文章

最新文章