在测试Asterisk之前,用户需要安装测试需要的测试单元工具。一些链接可能失效,如果有安装问题,建议读者到官方论坛或者邮件列表获得技术支持。
安装必要支持包
- 可工作的linux系统,基本的linux, Subversion和Asterisk技术背景。
- 安装好的linux发布版本,建议用户最好使用常用的系统发布版本。
- 安装Git
- 安装SVN (PJSUA Installation 安装步骤需要SVN安装支持。)
安装 Asterisk 必要支持包
首先,用户在安装asterisk之前,检查必要的支持包,下载asterisk源代码,切换到相应源代码路径:.
- 通过终端独立asterisk系统,执行以下命令:1 2 3 4 5 6 $ mkdir -p ~/asterisk/src $ cd ~/asterisk/src $ git clone https://gerrit.asterisk.org/asterisk $ cd contrib $ cd scripts $ sudo ./install_prereq install
- 安装完成必要的支持包以后,会显示安装成功的提示。1 2 3 ###################################### ## install completed successfully ###################################### 在此基本使用时,install_prereq 没有支持SQLite3 package,用户需要注意。如果在Asterisk ./configure 执行脚本失败的话,用户执行安装命令 install sqlite-devel
- 执行以下命令:1 2 3 4 5 $ cd ../../ $ ./configure --enable-dev-mode $ make $ sudo make install $ asterisk -cvvvg
- 验证asterisk启动状态:1 CLI> core stop now 如果安装asterisk时,系统用户权限不是root 用户的话,Asterisk可能找不到libasteriskssl.so.1,在 /usr/lib路径下检查是否包含了此安装包,如果没有的话,在此路径下激活支持包 "sudo ldconfig"。
第三方工具包安装
Install spandsp
如果需要传真支持的话,用户需要安装spandsp。
- 安装 libtiff1 $ sudo yum install libtiff-devel
- 下载源代码: http://soft-switch.org/downloads/spandsp,可能有最新版本更新,下载最近版本。
- 安装spandsp,假设安装的是以下版本。1 2 3 4 5 6 $ cd ~/Downloads/ $ tar -xzf spandsp-0.0.6 $ cd spandsp-0.0.6 $ ./configure $ make $ sudo make install
spandsp 安装在/usr/local/lib。如果没有安装在此路径的话,res_fax_spandsp可能不会加载成功,当然也导致测试失败。
安装libsrtp
如果支持SRTP,用户需要安装此支持包:
1 2 3 4 5 6 7 $ wget http://srtp.sourceforge.net/srtp-1.4.2.tgz $ tar xvf srtp-1.4.2.tgz $ cd srtp $ ./configure CFLAGS=-fPIC --prefix=/usr $ make $ make runtest $ sudo make install
安装 Asterisk Test Suite必要支持包
执行以下命令执行Asterisk Test Suite下载:
1 2 3 $ mkdir -p ~/asterisk/testsuite $ cd ~/asterisk/testsuite $ git clone https://gerrit.asterisk.org/testsuite
下载完成后开始安装各种必要支持包。
ASTTest 安装流程
- 输入以下命令:1 2 3 $ cd asttest $ make $ sudo make install
- 验证安装状态:1 2 3 4 $ asttest asttest: missing arguments -- specify at least one test directory Usage: ....
- 完成后,返回Test Suite directory路径:1 $ cd ..
第三方支持包
我们需要一些支持包,需要安装这些支持包:
- lua-devel
- lua
- python-twisted
- libpcap-devel
- python-yaml
- python-devel
- python-construct
StarPY 安装
StarPY是一个封装程序支持AMI,可以支持大量的测试。他依赖于Python测试单元。
- 执行以下命令:1 2 3 4 $ cd addons $ make update $ cd starpy $ sudo python setup.py install
- 完成后返回testsuite路径:1 $ cd ../..
SIPp 安装
如果要安装SIPp的话,需要下载源代码,然后进行编译流程,当然也需要pcap和openssl支持。要求安装的当前最低版本是3.4.1。
- 输入命令:1 2 3 4 5 6 7 $ mkdir sipp $ cd sipp $ wget https://github.com/SIPp/sipp/archive/v3.4.1.tar.gz $ tar -zxvf v3.4.1.tar.gz $ cd sipp-3.4.1 $ ./configure --with-pcap --with-openssl $ sudo make install默认安装环境下,sipp安装在/usr/local/bin。如果需要安装在 /usr/bin,通过命令配置'–prefix=/usr'。
- 验证安装状态:1 2 3 $ sipp -v SIPp v3.4.1-TLS-PCAP-RTPSTREAM ...
- 完成后返回testsuite路径:1 $ cd ../..
PJSUA 安装流程
如果用户在asterisk环境下安装好了pjsip的话,可以不用执行此步骤。安装pjsip可以通过 --with-pjproject-bundled编译pjsip。
- 输入命令:1 2 3 4 5 $ svn co http://svn.pjsip.org/repos/pjproject/trunk pjproject $ cd pjproject $ ./configure CFLAGS=-fPIC $ cp pjlib/include/pj/config_site_sample.h pjlib/include/pj/config_site.h $ vim pjlib/include/pj/config_site.h
- 增加一行代码:1 #define PJ_HAS_IPV6 1
- 修改后保存此文件。
- 继续执行安装流程:1 2 $ make dep $ make
- 拷贝执行文件:1 $ sudo cp pjsip-apps/bin/pjsua-x86_64-unknown-linux-gnu /usr/sbin/pjsua
- 验证pjsua执行状态:1 2 3 4 $ pjsua ... You have 0 active call >>>
- 输入 q 退出。
- 安装 pjsua Python bindings1 sudo make -C pjsip-apps/src/python install
- 返回testsuite路径:1 $ cd ~/asterisk/testsuite
验证Test Suite安装状态
如果用户没有执行”make samples“,用户需要在/etc/asterisk路径下创建一个asterisk.conf,保证测试单元可以工作。
- 输入命令:1 $ ./runtests.py -l
- 验证测试单元状态和依赖关系,确认都是成功状态。
本文暂时没有评论,来添加一个吧(●'◡'●)