您想了解如何在Ubuntu Linux上配置Asterisk语音邮件功能吗? 在本教程中,我们将向您展示如何安装Asterisk VoIP服务器,如何配置SIP扩展以及如何在Ubuntu Linux 16上启用语音邮件功能。

Ubuntu 17无法编译所需的软件包。

硬件列表:

以下部分介绍了用于创建Asterisk教程的设备列表。

上面列出的每件硬件都可以在亚马逊网站上找到。

Asterisk Playlist:

在此页面中,我们提供了与Ubuntu Linux相关的视频列表快速访问。

不要忘记订阅我们的YouTube频道 FKIT.

星号相关教程:

在这个页面上,我们可以快速访问与Asterisk相关的教程列表。

教程 – Linux上的Asterisk安装

在Linux控制台上,使用以下命令设置正确的时区。

# dpkg-reconfigure tzdata

安装Ntpdate软件包并立即设置正确的日期和时间。

# apt-get install ntpdate
# ntpdate pool.ntp.br

在我们的示例中,Ntpdate命令用于使用巴西服务器pool.ntp.br设置正确的日期和时间

我们来安装NTP服务。

# apt-get install ntp

NTP是将保持我们的服务器更新的服务。

使用命令date检查在Ubuntu Linux上配置的日期和时间。

# date

如果系统显示正确的日期和时间,这意味着您正确执行了所有步骤。

使用以下命令安装所需的软件包。

# apt-get update
# apt-get install linux-headers-`uname -r`
# apt-get install build-essential

下载,编译和安装DAHDI软件包。

# mkdir /downloads
# cd /downloads
# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
# tar -zxvf dahdi-linux-complete-current.tar.gz
# cd dahdi-linux-complete-2.11.1+2.11.1/
# make all
# make install

下载,编译并安装LIBPRI软件包。

# cd /downloads
# wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz
# tar -zxvf libpri-current.tar.gz
# cd libpri-1.6.0
# make all
# make install

下载Asterisk软件并安装所需的软件包。

# cd /downloads
# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz
# tar -zxvf asterisk-15-current.tar.gz
# cd asterisk-15.4.0/contrib/scripts/
# ./install_prereq install

编译并安装ASTERISK软件。

# cd /downloads/asterisk-15.4.0
# ./configure
# make menuselect
# make
# make install

make menuselect命令将打开一个菜单,您可以在其中选择应该安装的模块。

如果您不知道该怎么做,请保留默认模块并单击保存并退出按钮。

使用以下命令来安装配置文件示例:

# make samples

使用以下命令来安装配置文件:

# make config
# make install-logrotate

使用以下命令启动星号服务:

# /etc/init.d/asterisk start

教程 – 星号VoiceMail

完成Asterisk安装后,我们需要创建Sip扩展。

删除sip.conf配置文件的内容。

# echo > /etc/asterisk/sip.conf

编辑sip.conf配置文件。

# vi /etc/asterisk/sip.conf

这里是文件内容。

[general]

allowguest=no
srvlookup=no
udpbindaddr=0.0.0.0
tcpenable=no
canreinvite = no
dtmfmode=auto

;

[ramal-voip](!)

type=friend
context=INTERNO
host=dynamic
disallow=all
allow=ulaw
allow=alaw
allow=g729

;

[100](ramal-voip)

secret=pass100
callerid=”Vegeto” <100>

;

[200](ramal-voip)

secret=pass200
callerid=”Kakarot” <200>

接下来,我们需要创建拨号计划。

删除extensions.conf配置文件的内容

# echo > /etc/asterisk/extensions.conf

编辑extensions.conf配置文件。

# vi /etc/asterisk/extensions.conf

这里是文件内容。

[general]

[INTERNO]

;
;VOICEMAIL MENU
;
exten => 500,1,VoiceMailMain()
exten => 500,2,HangUp()
exten => 500,3,PlayBack(vm-goodbye)
exten => 500,4,HangUp()
;
; EXTENSION 100 + VOICEMAIL (FOR TEST ONLY)
;
exten => 100,1,Dial(SIP/100,5)
exten => 100,2,VoiceMail(100)
;
; EXTENSION 200 (FOR TEST ONLY)
;
exten => 200,1,Dial(SIP/200)

在我们的示例中,分机100将在5秒后将未应答的呼叫重定向到语音邮件。

在我们的例子中,分机200没有语音信箱。

在我们的例子中,如果有任何分机拨号500,它将被发送到语音信箱菜单。

删除voicemail.conf配置文件的内容。

# echo > /etc/asterisk/voicemail.conf

编辑voicemail.conf配置文件。

# vi /etc/asterisk/voicemail.conf

这里是文件内容。

[general]

format=wav
maxmsg=100
maxsecs=60
minsecs=3
skipms=3000
maxsilence=10
silencethreshold=128
maxlogins=3

[default]

100 => 777,Prince Vegeto,vegeto.blue@gmail.com

在我们的示例中,分机100被配置为使用语音信箱密码777。

在我们的示例中,扩展100被配置为使用电子邮件vegeto.blue@gmail.com。

您应手动重新启动Asterisk并验证服务状态。

# service asterisk stop
# service asterisk start
# service asterisk status

以下是Asterisk服务状态输出的示例。

● asterisk.service – LSB: Asterisk PBX
Loaded: loaded (/etc/init.d/asterisk; bad; vendor preset: enabled)
Active: active (running) since Thu 2018-05-03 11:16:27 -03; 4s ago
Docs: man:systemd-sysv-generator(8)
Process: 28268 ExecStop=/etc/init.d/asterisk stop (code=exited, status=0/SUCCESS)
Process: 28318 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS)
Tasks: 82
Memory: 34.1M
CPU: 645ms
CGroup: /system.slice/asterisk.service
└─28332 /usr/sbin/asterisk

现在,您可以使用SIP VoIP客户端连接到Asterisk服务器。

我喜欢使用Zoiper VoIP客户端。

•用户名 – 100
•密码 – pass100
•主机 – 星号服务器IP地址
•域 – 星号服务器IP地址

有时间测试你的Asterisk安装。

使用您应该拨打100分机的200分机并留言。

使用100分机并拨打500分机来访问语音信箱菜单。

输入777密码后,您将能够听到语音信箱。

语音邮件消息需要至少3秒才能被接受。

如果要调试星号通信,请停止Asterisk服务并使用以下命令启动它。

# service asterisk stop
# asterisk -vvvvvv -g -dddddd -c