FreeSWITCH 安装

[TOC]

FreeSWITCH 安装

FreeSWITCH

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

版本

  • FreeSWITCH 1.10.1

环境

  • Ubuntu 18.04_64位

软件包

  • cmake-3.13.3-Linux-x86_64.tar.gz

  • freeswitch-1.10.1.-release.tar.xz

  • freeswitch-sounds-en-us-callie-*-1.0.52.tar.gz

  • freeswitch-sounds-music-*-1.0.52.tar.gz

  • freeswitch-sounds-zh-cn-sinmei-*-1.0.51.tar.gz

    下载地址

参考脚本

1#install freeswitch 1.10.1 for ubuntu 18.04 642# 创建ubuntu用户 3useradd -d "/home/ubuntu" -m -s "/bin/bash" ubuntu 4passwd ubuntu 5chmod u+w /etc/sudoers 6vi /etc/sudoers 7# ubuntu ALL=(ALL) ALL 8chmod u-w /etc/sudoers 9# 使用ubuntu 10mkdir soft 11# 拷贝软件包到 soft 12# ... 13# 安装依赖模块 14sudo apt-get update 15sudo apt-get install -y autoconf 16sudo apt-get install -y git 17sudo apt-get install -y libtool 18sudo apt-get install -y g++ 19sudo apt-get install -y zlib1g-dev 20sudo apt-get install -y libjpeg-dev 21sudo apt-get install -y libsqlite3-dev 22sudo apt-get install -y libcurl4-openssl-dev 23sudo apt-get install -y libpcre3-dev 24sudo apt-get install -y libspeex-dev 25sudo apt-get install -y libspeexdsp-dev 26sudo apt-get install -y libldns-dev 27sudo apt-get install -y libedit-dev 28sudo apt-get install -y libssl-dev 29sudo apt-get install -y pkg-config 30sudo apt-get install -y yasm 31sudo apt-get install -y liblua5.2-dev 32sudo apt-get install -y libopus-dev 33sudo apt-get install -y libsndfile-dev 34sudo apt-get install -y libpq-dev 35sudo apt-get install -y uuid-dev 36sudo apt-get install libtiff-dev 37sudo apt-get install libavformat-dev 38sudo apt-get install libswscale-dev 39# 创建链接 40sudo ln -s /usr/lib/x86_64-linux-gnu/liblua5.2.so.0.0.0 /usr/lib/x86_64-linux-gnu/liblua.so 41sudo mv /usr/include/lua5.2/lua* /usr/include/ 42sudo mv /usr/include/opus/opus* /usr/include/ 43sudo mv /usr/lib/x86_64-linux-gnu/libsndfile* /usr/lib/ 44sudo ldconfig -v 45# 解压并建立链接cmake 46tar xf cmake-3.13.3-Linux-x86_64.tar.gz 47sudo ln -sf /home/ubuntu/soft/cmake-3.13.3-Linux-x86_64/bin/cmake /usr/local/bin/ 48# 下载并编译libks 49git clone https://github.com/signalwire/libks.git 50cd libks 51sudo cmake . 52sudo make 53sudo make install 54cd .. 55# 下载并编译signalwire-c 56git clone https://github.com/signalwire/signalwire-c.git 57cd signalwire-c/ 58sudo cmake . 59sudo make 60sudo make install 61cd .. 62# 解压并编译freeswitch 63tar -xf freeswitch-1.10.1.-release.tar.xz 64mv freeswitch-sounds-* freeswitch-1.10.1.-release/ 65cd freeswitch-1.10.1.-release/ 66# 编辑 modules.conf 67sudo ./configure 68sudo make -j 4 69sudo make install 70sudo make cd-sounds-install 71sudo make cd-moh-install 72# 建立链接 73sudo ln -sf /usr/local/freeswitch/bin/freeswitch /usr/local/bin/ 74sudo ln -sf /usr/local/freeswitch/bin/fs_cli /usr/local/bin/ 75# 启动和关闭 76sudo freeswitch -nc 77sudo freeswitch -stop 78 79#测试拨打以下号码 80#号码 说明 81#------------- -------- 82#9664 保持音乐 83#9196 echo,回音测试 84#9195 echo,回音测试,延迟585#9197 噪音生成 86#9198 铃音生成示例 87#9180 铃音测试,生成的回铃音 88#9181 铃音测试,产生英式铃音 89#9183 先应答,然后发送英式铃音 90#9184 先应答,然后发送音乐铃音 91#5000 示例IVR 92#4000 听取语音信箱 93 94# G729转码 95cd src/mod/endpoints 96# 下载bcg729的源码 97git clone https://github.com/xadhoom/mod_bcg729.git 98mv mod_bcg729 mod_g729 99# 编译mod_g729 100cd mod_g729 101vim Makefile 102# FS_INCLUDES=/usr/local/freeswitch/include/freeswitch 103# FS_MODULES=/usr/local/freeswitch/mod 104sudo make 105sudo cp -pr mod_bcg729.so /usr/local/freeswitch/mod 106sudo vim /usr/local/freeswitch/conf/vars.xml 107# <X-PRE-PROCESS cmd="set" data="global_codec_prefs=PCMU,PCMA,G729,OPUS,G722"/> 108# <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,VP8,G729,OPUS,G722"/> 109# ... 110# <X-PRE-PROCESScmd="set"data="media_mix_inbound_outbound_codecs=true"/> 111 112sudo vim /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml 113# <!--<load module="mod_g729"/>--> 114# <load module="mod_bcg729"/> 115 116# 重启freeswitch 或者 加载模块 load mod_bcg729
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

swap空间的增减方法

(1)增大swap空间去激活swap交换区:swapoff v /dev/vg00/lvswap扩展交换lv:lvextend L 10G /dev/vg00/lvswap重新生成swap交换区:mkswap /dev/vg00/lvswap激活新生成的交换区:swapon v /dev/vg00/lvswap

FreeSWITCH 安装 - HelloWorld