在 Ubuntu 上安装 Asterisk

简介: 与许多VoIP爱好者一样,我也是从Asterisk开始的,只是没怎么深入。

与许多VoIP爱好者一样,我也是从Asterisk开始的,只是没怎么深入。


其实在ubuntu上安装Asterisk很简单,apt-get 就搞定了

apt-get install asterisk

参考了下面一篇文章,但没搞那么复杂

wiki.ubuntu.com/AsteriskOnU…

由于没有FXO和FXS的硬件,只好用VoIP试试了。

Ubuntu自已带了Ekiga,可以使用SIP。

ubuntu中,asterisk服务以asterisk用户的身份运行,所以,可以用root或asterisk的身份登录的控制台:

sudo su asterisk asterisk -rvvv

就可以看到调试信息了。

配置文件都在/etc/asterisk下: 配置sip.conf

先将sip.conf备份一下子, Ubuntu自己带的有些复杂了,呵呵,对于新手来说,太长了。

mv sip.conf sip.conf.old

touch sip.conf


cat sip.conf


[general]

bindport=5061 [1000] type=friend context=phones host=dynamic

[1001] type=friend context=phones host=dynamic

以上只是简单配置,不安全。设了两个号码 1000和1000,呵呵,主要是照asterisk的书上说的。注意,我把系统默认的端口从5060改成了5061,因为ekiga也要监听5060端口,会有冲突。

再配extensions.conf:记着先备份一下原来的啊

``

cat extensions.conf


[globals]

[general] autofallthrough=yes

[default] exten => s,1,Verbose(1|Unrouted call handler) exten => s,n,answer() exten => s,n,Wait(1) exten => s,n,Playback(tt-weasels) exten => s,n,Hangup() [incoming_calls]

[internal] exten => 500,1,Verbose(1|Echo test application) exten => 500,n,answer() exten => 500,n,Echo() exten => 500,n,Hangup()

[phones] include => internal

好了,切换到asterisk控制台,运行

CLI> sip reload

CLI> dialplan reload

就可以了。打开ekiga,新建一个账户:

账户名称:随便起

注册商:127.0.0.1:5061

用户: 1000

密码:空着就行了

连接sip:500@127.0.0.1:5061 试试,如果成功,(保证你的耳机mic等好用先),你说话,就可以在耳机听到自己的声音了。

接下来再配置一个分机:extensions.conf 1001。 注意,里面的1002在下一步才用到,先配置上吧。

exten => 1000,1,NoOp() exten => 1000,2,Monitor(wav,myfilename) exten => 1000,n,Dial(SIP/1000,30) exten => 1000,n,Playback(the-party-you-are-calling&is-curntly-unavail) exten => 1000,n,Hangup()

exten => 1001,1,NoOp() exten => 1001,n,Dial(SIP/1001,30) exten => 1001,n,Playback(the-party-you-are-calling&is-curntly-unavail) exten => 1001,n,Hangup()

exten => 1002,1,NoOp() exten => 1002,n,Dial(IAX2/idefisk,30) exten => 1002,n,Playback(the-party-you-are-calling&is-curntly-unavail) exten => 1002,n,Hangup()

配置好后,到控制台,打上

CLI> dialplan reload

就可以了。

但是,一台机器上不能测试两个分机(主要是mic不能重用),如果在你的局域网上有其它机器,就可以在其它机器上登录进行测试,只是需要将127.0.0.0改为你真实的ip地址,然后,就可以呼叫

sip:1000@你的IP:5061

或者:

sip:1001@你的IP:5061了。同时,在控制台上可以看到详细呼叫信息。

但我实验没有成功,能听到回铃音,也能听到提示音,但建立建话后听不到声音,不知道原因。(我是用另一台笔记本连交叉线测试的)。

设置iax。iax是另一种协议,可以使用kiax软件电话连.

apt-get install kiax

或者 apt-get install iaxcomm也可以,但未测试

配置iax.conf

``

cat iax.conf


[general] autokill=yes

[idefisk] type=friend host=dynamic context=phones

完成后到控制台下:

CLI>module reload chan_iax2.so

就可以了。(因为dialplan上面已经配了,就是1002那个分机号码)

现在,启动kiax,添加个账户(比SIP简单),然后直接呼叫1000或1001都可以,能正常建立通话,也能彼此听到声音。

后来,从淘宝上买了一张Asterisk兼容卡,还连上了我的办公室电话呢。

相关文章
|
4天前
|
Ubuntu Linux
在Linux (Ubuntu 16) 下安装LabVIEW
在Linux (Ubuntu 16) 下安装LabVIEW
22 0
|
11天前
|
Ubuntu
在Ubuntu上安装JetBrains Toolbox并解决libfuse.so.2依赖问题
在Ubuntu上安装JetBrains Toolbox并解决libfuse.so.2依赖问题
17 3
|
12天前
|
消息中间件 Ubuntu 数据安全/隐私保护
Ubuntu上安装RabbitMQ
Ubuntu上安装RabbitMQ
14 1
|
12天前
|
Ubuntu Docker 容器
ubuntu安装docker
ubuntu安装docker
148 1
|
19天前
|
Ubuntu PHP Apache
蓝易云 - 如何在Ubuntu 22.04上安装PHP8.1并设置本地开发环境
以上就是在Ubuntu 22.04上安装PHP 8.1并设置本地开发环境的步骤。
26 2
|
20天前
|
缓存 Ubuntu 应用服务中间件
Ubuntu 22.04 上安装、配置和使用 Nginx 可以分为几个简单的步骤
Ubuntu 22.04 上安装、配置和使用 Nginx 可以分为几个简单的步骤
|
3天前
|
Ubuntu 关系型数据库 MySQL
MySQL5.7在Ubuntu安装[单机软件],第一步登录root,sudo su -
MySQL5.7在Ubuntu安装[单机软件],第一步登录root,sudo su -
|
3天前
|
Ubuntu 关系型数据库 MySQL
|
3天前
|
Ubuntu 持续交付 Docker
如何在 Ubuntu 20.04 上安装 Docker和DockerCompose
如何在 Ubuntu 20.04 上安装 Docker和DockerCompose
55 0
|
26天前
|
Ubuntu Java
蓝易云 - ubuntu22安装和部署Kettle8.2
现在你应该可以看到Kettle的图形界面了。这就完成了Ubuntu 22上Kettle 8.2的安装和部署。
21 1