如何在Ubuntu 20.04|18.04上安装 FreeSwitch

这篇具有很好参考价值的文章主要介绍了如何在Ubuntu 20.04|18.04上安装 FreeSwitch。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

PBX 是 Private Branch Exchange 的缩写。它是在组织内部使用的专用电话系统,并根据特定组织的需求进行定制。组织中的 PBX 用户可以在内部进行内部通信,也可以与外界进行外部通信。VoIP(IP 语音)、ISDN(综合业务数字网络)或模拟等渠道促进了外部通信。

使用 PBX 电话系统的优点是,您可以获得比物理线路更多的电话、用户之间的免费通话以及呼叫队列、数字接线员、呼叫转移、语音邮件和呼叫录音等大量功能。PBX 电话系统的一些示例包括 FreeSwitch、3cx、Elastix、FreePBX 和 Asterisk。

在本指南中,我们将了解如何在 Ubuntu 20.04/18.04 上安装 FreeSwitch PBX

什么是 FreeSwitch PBX?

FreeSwitch 是一个免费的开源通信平台。它支持实时通信、视频以及 IP 语音和WebRTC。它可以在 Windows、MacOS、Linux 和 FreeBSD 上运行。它用于构建具有聊天和屏幕共享的网络会议、IVR、会话边界控制器、批发最低成本路由等功能的 PBX 系统。

FreeSwitch PBX 系统有哪些功能?

  • 可在 Windows、Linux 和 FreeBSD 上运行
  • 语音应答接口
  • WebRTC 支持
  • 通话录音(立体声呼叫者/被呼叫者左/右)
  • 高性能多线程核心引擎
  • 平行狩猎
  • 连环狩猎
  • 自动服务员
  • 基本 IP/PBX 功能
  • 自定义回铃音(早期媒体)

开始部署

freeswitch1.10.7/freeswitch1.10.8安装情况应该与freeswitch1.10.9相同

部署前准备

$ sudo apt-get install libavformat-dev
$ sudo apt-get install libswscale-dev
$ sudo apt-get install libpq-dev

在 Ubuntu 20.04/18.04 上安装 FreeSwitch PBX
首先更新你的系统包

$ sudo apt -y update
$ sudo apt -y upgrade

接下来,安装在 Ubuntu 20.04/18.04 上运行 FreeSwitch PBX 所需的依赖项

$ sudo apt install -y git subversion build-essential autoconf automake libtool g++ pkg-config
	libtiff-dev libncurses5 libncurses5-dev make libjpeg-dev libtool libtool-bin
	libsqlite3-dev libpcre3-dev libspeexdsp-dev libldns-dev libedit-dev
	yasm uuid uuid-dev liblua5.2-dev libopus-dev cmake

以下软件包是可选的,但我们可以安装它们。

$ sudo apt install -y libcurl4-nss-dev libcurl4-openssl-dev libexpat1-dev
	libgnutls28-dev libtiff5-dev libx11-dev unixodbc-dev libssl-dev python-dev
	zlib1g-dev libasound2-dev libogg-dev libvorbis-dev libperl-dev libgdbm-dev libdb-dev uuid-dev libsndfile1-dev

下载源代码
freeswitch1.10.4及之后的版本freeswitch官方将spandsp 和 sofia-sip单拎出来了,需要单独拉代码编译,如果是编译1.10.4之前的freeswitch(如freeswitch1.10.2版本)不必单独拉spandsp和sofia-sip的代码,直接编译freeswitch即可

重大改动历史:
`https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Release-Notes/FreeSWITCH
	-1.10.x-Release-notes_25460878/`

//可直接在上述链接中下载freeswitch的tar包
1.8 -> 1.10.0: pgqsql moved out from FreeSWITCH core to its own module, mod_pgsql .
See 1.10.0 (Release date: 05 August 2019) at the bottom.
1.10.3 -> 1.10.4: SpanDSP and sofia-sip have been removed.
See 1.10.4 (Release date: 05 Aug 2020)​ below.
1.10.6 -> 1.10.7: Default behaviour change: to not skip announcement type apps on recovery, 
not hangup call on SRTP errors, 1000 maximum receiving requests per second, auth-messages
 and auth-subscriptions are enabled by default now, freeswitch.log log line prefix modified: 
 will affect fail2ban log line matching until similarly modified in fail2ban 
 (https://github.com/fail2ban/fail2ban/issues/3143).
See 1.10.7 (Release date: 24 Oct 2021)​ below.

安装spandsp、sofia-sip、libks和signalwire

// 安装spandsp
$ git clone https://github.com/freeswitch/spandsp.git
$ cd spandsp
$ ./bootstrap.sh -j
$ ./configure
$ make
$ sudo make install
$ ldconfig

// 安装sofia-sip
no usable sofia-sip; please install sofia-sip-ua devel package or equivalent
$ git clone https://github.com/freeswitch/sofia-sip.git
$ cd sofia-sip
$ ./bootstrap.sh -j
$ ./configure
$ make
$ make install0
$ ldconfig

$ sudo apt install -y cmake
$ cd /usr/src
$ sudo git clone https://github.com/signalwire/libks.git
$ cd libks
$ sudo cmake .
$ sudo make
$ sudo make install

$ cd /usr/src
$ git clone https://github.com/signalwire/signalwire-c.git
$ cd signalwire-c
$ sudo cmake .
$ sudo make
$ sudo make install

编译freeswitch前将不必要的模块编译禁用掉,如果不禁用则需要安装对应的依赖,否则会报错

$ cd /usr/local/src/freeswitch
$ vim module.conf

//将mod_signalwire和mod_av内容注释掉

$ applications/mod_signalwire
$ applications/mod_av

//mod_verto不禁用可能会编译报错You need to either install libks or disable mod_verto in modules.conf
$ endpoints/mod_verto  

开始安装freeswitch

接下来,使用 wget从 freeswitch发布页面 获取最新的 FreeSwitch 版本:

$ cd /usr/src
$ sudo wget https://files.freeswitch.org/freeswitch-releases/freeswitch-1.10.3.-release.zip
$ sudo apt -y install unzip
$ sudo unzip freeswitch-1.10.3.-release.zip
cd freeswitch-1.10.3.-release/

请注意 ,如果您尚未安装 unzip,请通过运行 apt -y install unzip安装它

$ sudo apt -y install unzip

现在运行标准安装过程

//编译freeswitch
$ cd /usr/local/src/freeswitch
$ ./bootstrap.sh  //如果是GitHub拉的代码有这一步,如果是下载tar包解压的没有这一步
$ ./configure --enable-portable-binary --prefix=/usr/local/freeswitch
	--with-gnu-ld --with-python --with-openssl
	--enable-core-odbc-support --enable-zrtp
$ make

如果在编译过程中遇到错误,您可以注释掉任何引发错误的模块或安装缺少的依赖项。就我而言,我最初注释掉了 languages/mod_lua 和 applications/mod_signalwire ,但您可以根据收到的错误注释更多内容。之后重新启动编译,如下所示:

$ sudo ./configure && sudo make clean && sudo make

如果编译成功, 接下来,安装 freeswitch:

$ sudo make install

现在编译声音

$ sudo make all cd-sounds-install cd-moh-install

安装完成

创建 simlink 以轻松使用服务。文章来源地址https://www.toymoban.com/news/detail-704932.html

$ sudo ln -s /usr/local/freeswitch/bin/freeswitch /usr/bin/
$ sudo ln

到了这里,关于如何在Ubuntu 20.04|18.04上安装 FreeSwitch的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ubuntu安装向日葵远程控制——Ubuntu18.04/20.04/22.04

    通过以下教程可以快速的安装向日葵远程控制,本教程适用于Ubuntu18.04/20.04/22.04 进入向日葵远程控制下载官网下载向日葵远程控制Linux客户端 选择图形版本安装包下载,可以看到适用于17.04及以上版本 双击deb文件,点击install进行安装 安装成功,在菜单里可以打开

    2024年02月12日
    浏览(34)
  • ubuntu20.04到ubuntu18.04安装英伟达(nvidia)显卡驱动的血泪史

    吐槽!:跟舍友在Ubuntu18.04上装了三天三夜的NVIDIA显卡驱动,真的是快装吐了(是一整天都在搞环境,找各种缺的包、看各种教程。。。差点给我气咯pi了...不过终于在第三天晚上我成功的配好了)我实验室有个2060的好看小姐姐配了一个周,我真的是佩服(严肃脸) 在这感谢

    2023年04月08日
    浏览(44)
  • Ubuntu18.04 升级Ubuntu20.04

    因项目环境需要,欲将Ubuntu18.04升级至Ubuntu20.04,参考网上其他小伙伴的方法,也遇到了一个问题,特此记录一下,希望能帮助其他有同样问题的小伙伴。 参考:第十五章 Ubuntu18.04LTS升级到20.04LTS 主要的步骤: 在执行“do-release-upgrade”时,遇到“Failed to connect to https://changel

    2024年02月02日
    浏览(42)
  • Ubuntu18.04/20.04/22.04的Apollo8.0软件包安装(免编译)

    本文主要介绍在如何使用软件包(即 deb 包)的方式来安装 Apollo,相对于源码方式安装,软件包安装方式不需要编译,更加快捷。但是对环境的支持比较单一,如果在自定义环境内安装,请移步源码安装方式 1. 安装 Ubuntu Linux 安装 Ubuntu 18.04+ 的步骤,参见 官方安装指南。 完

    2024年02月05日
    浏览(49)
  • Ubuntu:18.04/20.04使用netplan设置网络

    通常,Ubuntu的默认设置是通过DHCP服务器自动获取IP地址,这对台式机系统来说非常有用,因为它不需要任何更改。 但是,始终建议为Ubuntu服务器分配一个静态IP地址,因为该静态IP地址将在重新启动后保持不变。 Ubuntu 17.10及更高版本使用“Netplan”作为默认网络管理工具。因此

    2024年02月05日
    浏览(38)
  • [Ubuntu]apt源改为阿里源(基于Ubuntu 20.04/18.04)

    我们需要根据我们自己Ubuntu系统版本来配置对应的apt源 Ubuntu 20.04代号为:focal Ubuntu 19.04代号为:disco Ubuntu 18.04代号为:bionic Ubuntu 17.04代号为:zesty Ubuntu 16.04代号为:xenial 查看命令: ubuntu 20.04 == 发行版本代号为 focal ubuntu 18.04 == 发行版本代号为 bionic ubuntu 20.04 ubuntu 18.04

    2024年04月23日
    浏览(60)
  • 【联想PC win11系统安装Ubuntu18.04/Ubuntu20.04】全程记录安装过程,和网卡驱动、显卡驱动等安装以及后续一系列问题

    电脑为联想台式机:Lenovo IdeaCentre-GeekPro 内存:32G 磁盘:512G固态硬盘+2T机械硬盘 CPU:i7-12700 GPU:NVIDIA RTX3060 学习需要安装Ubuntu18.04和win11系统共存。 之前装过Ubuntu16.04因为内核版本太老,显卡、声卡、有线无线网卡、蓝牙驱动都没有…,直接一个毛坯房了属于是,没有显卡驱

    2024年02月04日
    浏览(86)
  • 无线网卡驱动安装 (驱动为rtl8811CU)基于NVIDIA XAVIER NX 下的ubuntu18.04 和ubuntu20.04两个不同版本

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 基于NVIDIA Xavier NX 此处是绿联AC650M,根据商家的教程,显示我ubuntu内核太高。因此不能用他们提供的驱动。 奇怪的是我在ubuntu20.04使用的方法在18.04上就不适用,因此我在这分为两个不同版本进行演示安

    2024年02月15日
    浏览(44)
  • 从头搭建Android源码编译环境(Ubuntu 18.04 / 20.04 / 22.04)

    在新安装的Ubuntu上(版本20.04LTS),完成搭建Android源码编译环境步骤如下。 顺带说一句,当前用的比较多的Ubuntu是18.04和20.04,在实际项目中一直在用,可用性和稳定性都没问题。 最新的Ubuntu22.04版本,系统默认的二进制库变化比较大,编译Android源码有问题(实测过,没细研

    2024年02月06日
    浏览(100)
  • Ubuntu 23.04、22.04、20.04、18.04国内源--阿里云、中科大、163、清华更新源(sources.list)

    Ubuntu配置文件位置:/etc/apt/sources.list 需要用root权限: 用vi、gedit、vs code等任何熟悉的编辑工具打开文件进行修改 2种修改方式 1)把原文件中:archive.ubuntu.com,替换为:archive.aliyun.com(或其他更新源网址) 2)直接复制下方的内容,覆盖原文件中的内容即可。 修改完成后,更

    2023年04月22日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包