FreeSwitch SIP(1):linux下编译安装v1.4

来源:互联网 发布:sql where语句 1,4 编辑:程序博客网 时间:2024/05/01 20:55

本文,原文连接: http://blog.csdn.net/freewebsys/article/details/46546205 ,转载请注明出处!

1,关于FreeSwitch

FreeSWITCH 是一个电话的软交换解决方案,包括一个软电话和软交换机用以提供语音和聊天的产品驱动。FreeSWITCH 可以用作交换机引擎、PBX、多媒体网关以及多媒体服务器等。

FreeSWITCH 支持多种通讯技术标准,包括 SIP, H.323, IAX2 以及 GoogleTalk ,可以方便的与其他开源的PBX系统进行对接,例如 sipX, OpenPBX, Bayonne, YATE 或者 Asterisk.

FreeSWITCH 支持许多高级的 SIP 特性,例如 presence/BLF/SLA 、TCP TLS 和 sRTP,它还可以用来作为类似于 SBC (Session Border Controller) 的透明代理。

参考:http://www.oschina.net/p/freeswitch

2,安装

代码迁移过,不在github了。操作系统式centos6,(centos7 操作系统也类似)

https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse

centos6 安装
https://freeswitch.org/confluence/display/FREESWITCH/CentOS+6
首先安装依赖:

yum install 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

这里遇到一个问题,不能直接下载master代码,编译不过去,依赖一个libyuv库。使用1.4版本进行编译。

git clone -b v1.4 https://freeswitch.org/stash/scm/fs/freeswitch.git# The -j argument spawns multiple threads to speed the build process ./bootstrap.sh -j./configure -Cmake && make installmake sounds-installmake moh-install

安装成功:

----------------------------------------------------------------------Libraries have been installed in:   /usr/local/freeswitch/modIf you ever happen to want to link against installed librariesin a given directory, LIBDIR, you must either use libtool, andspecify the full pathname of the library, or use the `-LLIBDIR'flag during linking and do at least one of the following:   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable     during execution   - add LIBDIR to the `LD_RUN_PATH' environment variable     during linking   - use the `-Wl,-rpath -Wl,LIBDIR' linker flag   - have your system administrator add LIBDIR to `/etc/ld.so.conf'See any operating system documentation about shared libraries formore information, such as the ld(1) and ld.so(8) manual pages.----------------------------------------------------------------------make[5]: Leaving directory `/data/freeswitch/src/mod/xml_int/mod_xml_scgi'make[4]: Leaving directory `/data/freeswitch/src/mod/xml_int/mod_xml_scgi'make[3]: Leaving directory `/data/freeswitch/src/mod'make[3]: Entering directory `/data/freeswitch/src'make[4]: Entering directory `/data/freeswitch/src'make[4]: Nothing to be done for `install-exec-am'.make[4]: Nothing to be done for `install-data-am'.make[4]: Leaving directory `/data/freeswitch/src'make[3]: Leaving directory `/data/freeswitch/src'make[2]: Leaving directory `/data/freeswitch/src'Making install in buildmake[2]: Entering directory `/data/freeswitch/build' +---------- FreeSWITCH install Complete ----------+ + FreeSWITCH has been successfully installed.     + +                                                 + +       Install sounds:                           + +       (uhd-sounds includes hd-sounds, sounds)   + +       (hd-sounds includes sounds)               + +       ------------------------------------      + +                make cd-sounds-install           + +                make cd-moh-install              + +                                                 + +                make uhd-sounds-install          + +                make uhd-moh-install             + +                                                 + +                make hd-sounds-install           + +                make hd-moh-install              + +                                                 + +                make sounds-install              + +                make moh-install                 + +                                                 + +       Install non english sounds:               + +       replace XX with language                  + +       (ru : Russian)                            + +       (fr : French)                             + +       ------------------------------------      + +                make cd-sounds-XX-install        + +                make uhd-sounds-XX-install       + +                make hd-sounds-XX-install        + +                make sounds-XX-install           + +                                                 + +       Upgrade to latest:                        + +       ----------------------------------        + +                make current                     + +                                                 + +       Rebuild all:                              + +       ----------------------------------        + +                make sure                        + +                                                 + +       Install/Re-install default config:        + +       ----------------------------------        + +                make samples                     + +                                                 + +                                                 + +       Additional resources:                     + +       ----------------------------------        + +       https://www.freeswitch.org                + +       https://freeswitch.org/confluence         + +       https://freeswitch.org/jira               + +       http://lists.freeswitch.org               + +                                                 + +       irc.freenode.net / #freeswitch            + +                                                 + +       Register For ClueCon:                     + +       ----------------------------------        + +       https://www.cluecon.com                   + +                                                 + +-------------------------------------------------+.=======================================================================================================.|    ____ _             ____                                                                            ||   / ___| |_   _  ___ / ___|___  _ __                                                                  ||  | |   | | | | |/ _ \ |   / _ \| '_ \                                                                 ||  | |___| | |_| |  __/ |__| (_) | | | |                                                                ||   \____|_|\__,_|\___|\____\___/|_| |_|                                                                ||                                                                                                       ||   _____    _            _                          ____             __                                ||  |_   _|__| | ___ _ __ | |__   ___  _ __  _   _   / ___|___  _ __  / _| ___ _ __ ___ _ __   ___ ___   ||    | |/ _ \ |/ _ \ '_ \| '_ \ / _ \| '_ \| | | | | |   / _ \| '_ \| |_ / _ \ '__/ _ \ '_ \ / __/ _ \  ||    | |  __/ |  __/ |_) | | | | (_) | | | | |_| | | |__| (_) | | | |  _|  __/ | |  __/ | | | (_|  __/  ||    |_|\___|_|\___| .__/|_| |_|\___/|_| |_|\__, |  \____\___/|_| |_|_|  \___|_|  \___|_| |_|\___\___|  ||                  |_|                      |___/                                                       ||   _____                           _                         _                                         ||  | ____|_   _____ _ __ _   _     / \  _   _  __ _ _   _ ___| |_                                       ||  |  _| \ \ / / _ \ '__| | | |   / _ \| | | |/ _` | | | / __| __|                                      ||  | |___ \ V /  __/ |  | |_| |  / ___ \ |_| | (_| | |_| \__ \ |_                                       ||  |_____| \_/ \___|_|   \__, | /_/   \_\__,_|\__, |\__,_|___/\__|                                      ||                        |___/                |___/                                                     ||                                       ____ _             ____                                         ||  __      ____      ____      __      / ___| |_   _  ___ / ___|___  _ __         ___ ___  _ __ ___     ||  \ \ /\ / /\ \ /\ / /\ \ /\ / /     | |   | | | | |/ _ \ |   / _ \| '_ \       / __/ _ \| '_ ` _ \    ||   \ V  V /  \ V  V /  \ V  V /   _  | |___| | |_| |  __/ |__| (_) | | | |  _  | (_| (_) | | | | | |   ||    \_/\_/    \_/\_/    \_/\_/   (_)  \____|_|\__,_|\___|\____\___/|_| |_| (_)  \___\___/|_| |_| |_|   ||                                                                                                       |.=======================================================================================================.Checking module integrity in target [/usr/local/freeswitch/mod]make[2]: Leaving directory `/data/freeswitch/build'make[1]: Leaving directory `/data/freeswitch'

3,增加系统服务,启动服务

增加系统服务,并启动

#拷贝centos6 服务文件cp build/freeswitch.init.redhat  /etc/init.d/freeswitchchmod 750 /etc/init.d/freeswitchchkconfig --add freeswitchchkconfig --levels 35 freeswitch on#增加用户useradd --system --home-dir /usr/local/freeswitch -G daemon freeswitch#设置权限chown -R freeswitch:daemon /usr/local/freeswitch/ chmod -R 770 /usr/local/freeswitch/chmod -R 750 /usr/local/freeswitch/bin/*#创建run目录mkdir /var/run/freeswitchchown -R freeswitch:daemon v1.4#配置二进制文件ln -s /usr/local/freeswitch/bin/freeswitch /usr/bin/#启动服务service freeswitch start

4,安装客户端

客户端使用x-lite。下载地址:
http://www.counterpath.com/x-lite-download/
启动后配置下服务器,freeswitch默认注册了20个账号,从1000-1019,默认密码都是1234。

配置信息,假设服务器地址是 192.168.1.100。
同样在另外一个电脑注册1001,然后就可以进行拨号了。

5,总结

本文,原文连接: http://blog.csdn.net/freewebsys/article/details/46546205 ,转载请注明出处!

freeSwitch还是非常好用的,只需要编译下,配置服务就行。
开源的需要研究透彻,主要的代码是用c写的,支持lua扩展,freeswitch支持很多功能还需要仔细研究。

0 0