介绍:

        因为工作需要会用到FreeSWITCH做软交换,本文章主要是学习什么是FreeSWITCH?FreeSWITCH的安装。参考书籍《FreeSWITCH权威指南》

        FreeSWITCH是一个开源的电话交换平台,官方的定义为-世界上第一个跨平台的/伸缩性极好的/免费的/多协议的电话软交换平台。从技术上讲FreeSWITCH是一个B2BUA(back-to-back User Agent),用B2BUA来帮助通信的双方进行实时的语音视频通信。

        FreeSWITCH的主要特点:

                1:跨平台,可以运行于Windows,Max OSX,Linux,BSD及Solaris等诸多32/64位平台。

                2:可伸缩性,可以从一个简单的软电话客户端到运营商拥挤的软交换设备几乎无所不能。

                3:免费,使用MPL 1.1协议授权,任何人都可以免费的使用斌获取源代码,可以修改,发布,出售自己的应用

                4:支持多种通信协议(SIP,H323,Skype,Google Talk),可以与各种开源的PBX系统通信也可以与各种商业交换系统互通。

                5:可以作一个简单的交换引擎,一个PBX,一个媒体网关或媒体支持IVR的服务器,或运营商的IMS网络中担任CSCF或Application Server等。

                6:支持宽带及窄带语音编码,电话会议可以同时支持8,12,16,24,32及48kHz的语音。

        FreeSWITCH的主要功能:

                1:在线计费、预付费功能

                2:电话路由服务器

                3:语音转码服务器

                4:支持资源优先权和QoS的服务器

                5:多点会议服务器

                6:IVR、语音通知服务器

                7:VoiceMail服务器

                8:PBX应用和软交换

                9:应用层网关

                10:防火墙/NAT穿越应用

                11:私有服务器

                12:第三方呼叫控制应用

                13:业务生成环境运行时引擎

                14:会话边界控制器

                15:IMS中的S-CSCF/P-CSCF/I-CSCF

                16:SIP网间互联网关

                17:SBC及安全网关

                18:传真服务器、T.30到T.38网关

        更多关于FreeSWITCH的特点和指标,可以参考http://wiki.freeswitch.org/wiki/Specsheet

        FreeSWITCH中文网http://www.freeswitch.org.cn/,官网http://www.freeswitch.org

安装:

        话不多说,开始我们的FreeSWITCH第一次接触,安装。

        平台:linux (CentOS 7)

         1:使用命令安装:

                yum install -y http://files.freeswitch.org/freeswitch-release-1-6.noarch.rpm epel-release
                yum install -y freeswitch-config-vanilla freeswitch-lang-* freeswitch-sounds-*

                systemctl enable freeswitch    

         2:使用编译安装 

                FreeSWITCH是开源的项目,其源码在git上进行管理,可以选择特定的版本。

                git安装:yum install git

                克隆源码: git clone -b v1.6 https://freeswitch.org/stash/scm/fs/freeswitch.git freeswitch

                安装所需的依赖:yum install -y git gcc-c++ autoconf automake libtool wget 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 opus-devel libvpx-devel libvpx2* libdb4* libidn-devel unbound-devel libuuid-devel lua-devel libsndfile-devel yasm-devel libtiff-devel

                如需要特定的版本: cd freeswitch #进入源码目录

                                                git checkout -b v1.2.12 #根据一个tag检出到一个本地分支

                                                或者

                                                git checkout -b v1.4.beta #从远程分支检出一个本地分支

                                                当然也可以直接复制一个指定的分支

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

                 进入源代码目录:

                        cd freeswitch

                  编译:

                         ./bootstrap.sh

                         ./configure

                         make install 

        在进行make install 出现问题的解决方法:

                make: *** [libs/libvpx/Makefile] 错误 1,需要安装一下依赖

                        wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

                        tar zxvf yasm-1.3.0.tar.gz

                        cd yasm-1.3.0

                        ./configure --prefix=/usr/local/cellar/ffmpeg_build --disable-examples

                        make && make install

                        wget git clone https://github.com/webmproject/libvpx.git

                        cd libvpx

                        ./configure --prefix=/usr/local/cellar/ffmpeg_build --disable-examples

                        make && make install

                Makefile:899: *** You must install libopus-dev to build mod_opus。 停止。

                       git clone https://freeswitch.org/stash/scm/sd/opus.git
       cd opus
       ./autogen.sh
       ./configure
       make

       make install

                    如果一直会有该错误就

                     vim freeswitch/src/mod/codecs/mod_opus/Makefile

                    注释掉 896 897 行

                    #install: error

                    #all: error

                启动: /usr/local/freeswitch/bin/freeswitch 

                后台启动:/usr/local/freeswitch/bin/freeswitch -nc

                进入控制台:/usr/local/freeswitch/bin/fs_cli

        3:解压源码包安装   

                   wget http://files.freeswitch.org/freeswitch-1.4.0.beta6.tar.bz2

                   tar xvjf freeswitch-1.4.0.bata6.tar.bz2

                   cd freeswitch-1.4.0

                   ./configure

                    make install                

                    出现问题请看安装方法2的解决方案

        4:以跟快的方式进行安装

                    wget https://www.freeswitch.org.cn/Makefile && make install

        在安装完成并启动后,FreeSWITCH会默认生产一些号码:

默认号码及说明
号码 说明
9664 保持音乐
9191 注册ClueCon
9192 在log中显示Channel
9195 echo,回音测试,延迟5秒
9196 echo,回音测试
9197 milliwatte extension, 铃音生成
9198 TGML 铃音生成实例
9180 铃音测试,使用远端生成的回铃音
9181 铃音测试,产生英式铃音
9182 铃音测试。使用音乐当铃音,彩铃
9183 先应答,然后发送英式彩铃
9184 先应答,然后发送音乐彩铃
9178 发传真
9179 收传真
5000 实例IVR
4000 听取语音信箱
33xx 电话会议,48kHz(其中xx可为00~99,下同)
32xx 电话会议,32kHz
31xx 电话会议,16kHz
30xx 电话会议,8kHz
2000-2002 呼叫组
1000-1019 默认分机号(密码默认为1234)

连接SIP电话

         1:下载软电话:X-Lite  下载地址

         2:软电话配置

                                        FreeSWITCH学习第一课(安装和测试)

           注册成功

                                                           FreeSWITCH学习第一课(安装和测试)

            3:在使用软电话时注意需要关闭服务器的防火墙

输入9664可以听到保持音乐,如果听不到,在控制台看有没有错误提示,如有“File Net Found”之类的提示,多半是没有安装声音文件,进入FreeSWITCH源码目录执行

         make hd-sounds-install && make hd-moh-install && make samples

版权声明:本文为博主原创文章,未经博主允许不得转载。https://blog.csdn.net/qq_16121827/article/details/80381745

相关文章:

  • 2022-02-10
  • 2022-12-23
  • 2022-12-23
  • 2021-11-03
  • 2021-12-28
  • 2021-04-11
  • 2021-04-21
  • 2022-02-04
猜你喜欢
  • 2022-12-23
  • 2021-08-08
  • 2022-12-23
  • 2022-01-21
  • 2021-11-25
  • 2021-12-03
  • 2021-12-31
相关资源
相似解决方案