如何在 Raspberry Pi 上安装 Asterisk

您是否正在为您的中小型企业或家庭办公室寻找电话系统?
554 位读者喜欢这篇文章。
Raspberries with pi symbol overlay

Dwight Sipler 在 Flickr 上

您是否正在为您的中小型企业或家庭办公室寻找电话系统?我一直对可扩展的 VoIP(IP 语音)解决方案感兴趣,那时我偶然发现了在 Raspberry Pi 上实现的 Asterisk

我的好奇心被激发了,我决心尝试一下,所以我从 Asterisk 下载 了该软件,然后开始使用我的 Raspberry Pi 3 构建服务器。

开始入门

首先,我将下载的镜像文件刻录到 MicroSD 卡上;建议的最小容量为 4GB。将镜像文件传输到 MicroSD 卡并将其插入 Raspberry Pi 上相应的插槽后,我将以太网电缆连接到 Pi 和家庭路由器上的以太网端口。

接下来,我在我的 Linux 计算机上打开一个终端,输入 ssh root@192.168.1.8,这是我的服务器的 IP 地址。系统提示我以 root 用户身份登录 raspbx。默认密码是“raspberry”。(出于安全原因,如果您计划不仅仅是尝试一下,请务必更改默认设置中的密码。)

一旦我登录到 raspbx 上的 shell,我就需要准备服务器以供使用。按照网站上提供的 文档,我按照指示通过在 shell 提示符下输入 regen-hostkeys 创建了新的主机密钥。然后,我通过在 shell 提示符下输入 configure-timezone 为服务器配置了时区。我通过在提示符下输入 dpkg-reconfigure locales 配置了区域设置。我还安装了 Fail2Ban 以提供服务器安全性。

现在我准备好测试我的配置了。

测试

我退出了 raspbx shell,然后打开浏览器并将其指向我的服务器的 IP 地址。将服务器 IP 地址加载到浏览器中,我看到了一个漂亮的登录页面。

FreePBX 提供了一个非常棒的基于 Web 的开源图形用户界面,我用它来控制和配置 Asterisk(在 GitHub 上查找)。(FreePBX 在 GPL 许可下获得许可。)我用它完成了其余的配置。FreePBX 的默认登录名是 用户名:admin;密码:admin

登录后,我导航到应用程序菜单,该菜单位于显示屏的左上方。我单击菜单链接并选择了第二个选项“应用程序”,然后选择了第四个选项,标记为“扩展”。从那里,我创建了一个 New Chan_Sip 扩展。

我使用密码配置了一个 Sip 扩展用户。密码是自动生成的,或者您可以选择创建自己的密码。

现在我已经有了一个功能正常的扩展,我很想尝试一下我的新 VoIP 服务器。我下载并安装了 Yate Client,这是我在构建服务器的过程中发现的。安装 Yate 后,我想测试与服务器的连接。我发现我可以使用 Yate 连接到服务器进行回声测试,并输入 *43。当我通过客户端听到说明时,我真的很兴奋。

我决定创建另一个 Sip 扩展,以便我可以测试系统的语音邮件功能。完成之后,我再次使用 Yate 客户端呼叫该分机并留言。然后再次使用 Yate,我呼叫该分机并输入 *97 并检索了语音消息。然后我想看看是否可以使用我的新服务器呼叫外线。返回菜单,我选择了“连接”选项并添加了一条 Google Voice 线路。

Google_Voice_Connectivity

然后我返回到“连接”菜单,并将 Google Voice 添加到出站路由。

Google_Voice_outbound_route

完成通话

返回到 Yate 客户端,我输入了一条外线并成功完成了通话。

我相信这种特定的 VoIP 解决方案可以轻松地为小型办公室工作。根据 RasPBX 网站的 常见问题解答 部分,典型的 Raspberry Pi 系统可以在 Raspberry Pi 1 上支持多达 10 个并发呼叫。

Asterisk 有许多细微之处,FreePBX 软件可以轻松地利用它们。

有关 Raspberry Pi 项目上的 Asterisk 的更多信息,请关注他们的 博客。您可以在他们的网站上找到有关 FreePBX 源代码 的其他信息。

标签
User profile image.
教育家、企业家、开源倡导者、终身学习者、Python 教师。教育心理学硕士,教育领导学硕士,Linux 系统管理员。

8 条评论

很棒的文章。我有点忘记了 Asterisk,但我一直想尝试一下。现在您在我的 Pi 上如此清楚地解释了它,我可能会尝试一下。

请给我更多关于所需硬件的信息。我怀疑 RPi 没有内置声音,那么您是如何听到您的消息的。
您是否尝试过 SIP 电话?如果是,它是如何连接的?

Raspberry Pi 确实有声音,我可以很容易地听到消息。我使用 Yate 作为软电话,也尝试过 Linphone。您可以连接 SIP 电话,FreePBX 在他们的网站上列出了一些,https://www.freepbx.org/phones/

回复 作者 Alf Stockton (未验证)

您好
大约一年前我设置了这个系统,以及一个 ATA 适配器来连接我们的传统无绳电话。我们的手机通过软电话软件构成了该网络上的其他内部扩展。raspberry PBX 连接到 VoIP 服务提供商,我们保留了旧的电话号码。PBX 处理我们的语音邮件,使用其数字助理接听来电,并同时呼叫传统电话和手机以连接呼叫。这个系统非常好用。

感谢您的评论。虽然我只设置了一个测试环境并在该环境中使用 Google Voice,但我可以看到这个系统的强大功能。我确信它很容易适用于小型办公室,当然也适用于家庭。您推荐哪家 VoIP 提供商?

回复 作者 pmeyeratdatest

您好:抱歉,我没有看到 Don 的这个问题。我与一家名为 VoIP.ms 的公司签订了合同。我一直想研究的另一项服务是 SIPStation。

使用 VoIP.ms,我将我的 RaspPBX 设置为 trunk 服务,而不是端点。对于任何来电,它们都会被路由到 RaspPBX 进行处理。

在 RaspPBX 中,来电被发送到交互式语音录音,这需要一个人按 5 继续(可以将其视为语音验证码)。我通过这种方式过滤掉所有电话推销电话。通过 IVR 后,我的固定家用电话和家庭手机组成一个振铃组,该振铃组会随着来电而振铃。

总的来说,一旦我克服了弄清楚如何设置它的痛苦,它就成了一个相当免维护的系统。

回复 作者 Don Watkins

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.