分享

随心所欲:用Asterisk组建自己的电话应答机(1/2)

 偷乐图书管 2014-06-26

  笔者也接触过不少的数字电话应答机,但我现在对这种现有的成品机器相当失望了,一般那些从商店中购买的机器都还是可以使用,但就是不能完全满足我的要求。通常,它们的产品质量与语音质量从来都没有达到正常应有的水平,其功能也从来没有设置得很完善或完全从用户的角度出发考虑,要不就是仅只提供几种少得可怜的功能,而且笔者对这些功能都没有一点兴趣。并且,由于每一种数字电话应答机的工作方式与操作方法都是不相同的,因此我得随时把它们的用户手册带在身旁,免得在万一的情况下我需要它完成一个简单的功能而自己又忘记怎么做了了,例如像替换它的信息或设置多个语音邮箱等。

  在使用了一段时间并不能使自己满意的这样一些应答机后,笔者终于忍不住了,最后决定来组建一台自己的数字电话应答机。这听起来好像有点天方夜谭的样子,单凭你这几刷子,似乎是一个不可能完成的任务,不过现在我们有了一款功能强大,好像还有点稀奇古怪,但正好能够达到这样目的软件,即被称之为Asterisk的PBX软件,有了它之后,我们的所有想法都能变成现实,不过还得感谢Digium公司的Mark Spencer。众所周知,Asterisk是一款应用在VoIP领域的PBX系统软件,它可提供许多的电信功能,甚至还可把你的计算机变成一台电信的电话交换机。由于它在完成作为一台简单的应答机这一角色时具有谁也不可否认的巨大威力,它完全符合我的所有目标(见表1所列),并且随着我需求的进一步增长,它还可可提供基本上无限制的扩展空间。

短期任务
长远任务
1.      可使用标准的模拟电话线工作。
2.      可作为一台独立的设备,而不需要运行在我主要的工作站计算机上。
3.      具备像一台普通的应答机一样把语音邮件存储下来的功能。
4.      当有新的语音邮件到达时发送email通知用户
5.      有记录呼叫者ID的功能。
1.      可允许我从一个web页面中来查看呼叫者ID记录。
2.      可连接到一个VoIP服务提供商,以来进行比较便宜的长途通话。
3.      如果有语音邮件等待接收,提供有清晰的铃声有提示用户。
4.      可把它放置在一个小巧的外壳中。
5.      通过扩展,可在我的家中组建一个VoIP电话网络。
表1:设计目标

  注意:如果要使用Asterisk这款软件,想对它进行配置来适合自己的要求,就得在提示符状态下使用命令方式来编辑不同的配置文件,因此界面可不是很友好的。不过你也可以使用另外一款界面更加友好些的软件:Asterisk@Home(AAH)来组建你自己的应答系统,至于AAH的介绍请大家参阅相关的资料。

  这个过程中,所有事情的第一步就是来挑选运行Asterisk完成这一工作的操作系统和硬件系统。由于Asterisk使用GPL许可证,因此我的想法就是为了系统上能够保持一致,尽量地使用那些开放源代码的软件,也即就是说使用Linux。但笔者可不是这方面的专家,对Linux并不是很在行,我只是大致熟悉Debian的发行版本,因此笔者就决定安装这种操作系统。可能很多的读者并不是使用Linux操作系统的用户,在这儿我要提醒大家的是,在Linux中,一个重要的方面就是要时刻记住它的命令是严格区分大小写的。

  我们最先要做的事是创建一张可引导的安装光盘,由于我并不想要有太多的软件包含在其中,能简则简,那最好的选择就是Debian了,从其网站上下载一个稳定的正式版本下来就行了,我们可下载一个正式的命名为sarge的netinst ISO映像文件。我选择的是i386发行版本,因为笔者使用的绝大多数计算机都是Intel的兼容产品。这个ISO映像文件仅只能108 Mb,很快就下载过来了,再把这个映像烧制成一张光盘就OK了,就不用笔者在这啰嗦了吧。

  在经过一番仔细的研究后,我发现使用这样一套系统所需要的硬件设备是没有什么特殊要求的,可以说对硬件的要求很低了,几乎只要是一台标准的PC就能够胜任这个工作。唯一一个比较特别一点的硬件设备是我需要一个FOX(Foreign Exchange Office)接口,以用来连接PSTN电话线。要达到这个要求有大量的设备可用,不过我只想让所使用到的每一个设备都尽可能地便宜,因此我到处寻找看有没有这方面的便宜货可卖,幸运的是,在一家购物网站上,笔者找到了一款单端口的X100P PCI卡可被用在Digium的系统上,并且价格也便宜,只有15美元左右,还包括送货的运费在内,就选它了。

  小知识:

  FXO:Foreign Exchange Office,外部交换局。一种话音接口,它是中央交换局交换机和数字电话交换系统之间的一个中继端连接。相对于中心局而言,它模拟一台PABX分机,可实现一部普通电话机与一部多路复用器的连接。一般与局用机或上一级交换机的分机端口对接,给上一级交换机提供一个出局路由,能实现环路远程汇接功能。FXO无馈电,输入模拟信号,连接局端来的电话线、PBX内线。

  而计算机,那就更简单了,我自己把以前不用的一些配件拿出来组装了一台,主要系统是一块Athlon 850的CPU,一块技嘉的主板,384 MB内存(一根256 MB加一根128 MB),一个10 GB的硬盘和一个CD-ROM光驱,并且使用的是一块ATI的PCI接口显卡,由于技嘉的这块主板上并没有集成网卡,还插了一块10/100 PCI网卡在上面。

  安装Debian Sarge

  把这台电脑装配好,插上电源键盘,网线和电话线,把前面提到刻录的那张Debian “sarge”可引导光盘放到这台计算机的光驱内,开始启动机器。一旦Debian开始引导后,在它等待用户输入的引导屏幕中的提示符下,我们输入如下的内容:

linux26

  在提示符下使用这个命令来是告诉Debian的安装程序我想要使用最新的2.6版本的内核,而不是默认的2.4版本的内核。这个新的sarge安装程序运行得十分正常,速度也很快,并且我们并不需要有太多的有关Linux这方面的专业知识来使得Debian的系统运行起来。在整个的安装过程中,我选择了安装程序所提示的所有选项的默认值。在笔者的网络中有一台路由器开启了DHCP功能,故安装程序自动地从这台DHCP服务器上获得了一个动态的IP地址,但如果在你的网络中没有DHCP服务器或你想为这台机器手工指定一个静态IP地址,那在安装的过程中安装程序也会提示你输入相关的信息,只是多几个简单的安装步骤而已。或者在安装结束后,你可以输入如下的命令来配置网络参数:

man interfaces

  当安装程序进行到驱动器的分区划分阶段时,笔者选择的是删除掉整个硬盘上的内容,并把所有的文件都安装到一个分区中,并且把Grub boot loader安装到硬盘的主引导记录中。所有的安装过程都完成后,安装光盘会从光驱中自动弹出来,并且计算机也会自动地重新启动,再从硬盘引导系统。

  重新启动过程完成后,我们就进入到一个基本系统配置屏幕中,在这,需要用户完成如下的几个步骤:

  ●选择你所在地区的时区。

  ●给root用户指定一个密码。

  ●当系统提示是否要创建一个普通身份用户时,请选择取消。

  ●配置apt,这是debian的一个程序包管理工具。我选择的是HTTP这种方法,并接受它的默认镜像。

  如果在有新的语音邮件到达时你想通过email来接收通知,则需要选择:Configure the Mail Tranfer Agent(配置邮件传输代理)。不过怎样把Debian配置成一个邮件服务器跟本文的内容就扯远了,在这笔者就不再详细介绍了,各位读者可参考相关的资料,然而,如果你接受所有的默认设置值并选择“Internet site”(因特网站点)的话,那在一般情况下它还是能够正常工作的,至少笔者试了一下在我的网络环境下是可以正常地收发邮件。需要注意的是,在这你随时都可跳过这一步骤,并且在以后如果又想配置这些基本的环境参数的话,只要在命令提示符状态下输入如下命令就行了:

base-config

  最后,我们选择“Finish configuring the base system”(结束配置基本系统),很好,值得庆贺,Debian安装完成了。

  由于前面已经提到,笔者并没有在系统在创建其他的任何用户,我使用root用户登录进入,确认一下系统通过DHCP分发得到的IP地址是多少。在命令提示符下输入:

ifconfig eth0 | grep’inet addr’

  从得到的结果可看出我的IP地址是10.1.0.103,并且发现从我的工作站计算机上很容易地通过SSH来远程管理这台机器,在工作站上用户能够在同一时刻使用自己的web浏览器和打开多重SSH会话。当然,远程管理只不过是它可供选择的一个管理方式而已,只要你愿意,当然还是可以继续直接在这台Asterisk计算机上来进行操作。

  如果你准备要使用一台计算机来进行远程管理,则需要下载和安装SSH,这可通过apt来完成:

aptitude install ssh

  当然,在这我也是全盘接受了它的所有建议的默认值,它的安装过程也很顺利没有什么问题发生。
接下文

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多