深圳开源通信有限公司 OpenVox A2410P/AE2410P 用户手册 A2410P AE2410P 日期 :2010/9/27 版本 :1.1 1
深圳开源通信有限公司 OpenVox-Best Cost Effective Asterisk Cards 广东省深圳市福田区沙嘴路金地工业区 127 栋 3 楼 电话 :0755-82535461 0755-82545095 0755-82535362 传真 :0755-82535174 业务邮箱 :sales@openvox.cn 技术支持邮箱 :support@openvox.cn 上班时间 : 周一至周五早上 9:00- 至下午 6:00, 节假日除外 (GMT+8 北京时间 ) Thank You for Choosing OpenVox Products! 2
目录 第一章概述... 4 第二章硬件介绍... 5 第三章安装与配置... 7 第四章 Elastix 页面配置... 16 第五章技术支持... 23 第六章参考... 23 3
第一章概述 1. A2410P/AE2410P 是什么 A2410P 是一个模块化的模拟电话产品,AE2410P 在 A2410P 的基础上增加了一个 Octasic 硬件回声消除模块 它是为建立 IP PBX 而设计的 A2410P/AE2410P 须使用 FX O400 或 FXS400 来组成一个可行的系统 AE2410P 具有回声消除模块, 这个模块也是必须与 FXO400 或 FXS400 一起使用的 2. 什么是 Asterisk Asterisk 是一个开放源代码的软件 VoIP PBX 系统, 它是一个运行在 Linux 环境下的纯软件实施方案 Asterisk 是一种功能非常齐全的应用程序, 提供了许多电信功能, 能够把你的 x86 机器变成你自己的交换机, 还能够当作一台企业级的商用交换机 Asterisk 让人激动的事情是它在小企业预算可承受的范围内提供了商业交换机的功能和可伸缩性 Asterisk 的通道维护着 VoIP 和 PSTN 上的各种形式的链接, 包含的 VoIP 协议有 SIP IAX MGCP 和 H.323 4
106.8mm A2410P/AE2410 安装配置说明 第二章硬件介绍 模块 1 模块 2 模块 3 模块 4 模块 5 模块 6 312.0mm 通道 1-4 通道 5-8 通道 9-12 通道 13-16 通道 17-20 通道 21-24 回声消除模块 V1.1 电源插口 (12V) 如上图所示 :A2410P/AE2410P 有六个模块, 每个模块 (FXS400/FXO400) 分别对应 一个 RJ45 接口 一个 RJ45 接口有八条线路, 每两条线为一路电话, 只要接上分线盒就可 以分出四路电话 下面是 A2410P/AE2410P 的 RJ45 口的线路组合方式 : 5
这个黑色的盒子就是分线器, 负责把 RJ45 口出来的线路分成四路 RJ11 电话, 线路的顺序和通道的顺序一致 6
第三章安装与配置 操作环境 : Elastix 1.6 Dahdi-linux-complete-2.2.0.2+2.2.0 Asterisk:1.4.26.1 OpenVox A2410P/AE2410P 3FXS+3FXO 一 把 A2410P/AE2410P 的卡插入 PCI 插槽, 接好电源 二 启动 Elastix 1.6, 进入系统, 在命令行输入命令 : # lspci -vvv 检查输出结果, 查看系统是否识别 A2410P/AE2410P, 如下图红线标识表示识别 : 01:01.0 Communication controller: Unknown device 1b74:2410 (rev 01) Subsystem: Unknown device 1b74:0001 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Steppin g- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort- <MAb ort- >SERR- <PERR- Latency: 64, Cache Line Size: 16 bytes Interrupt: pin A routed to IRQ 50 Region 0: Memory at dcd00000 (32-bit, non-prefetchable) [size=1m] 三 下载驱动程序 请注意 : 下载的 Dahdi 版本一定要与 elastix 系统里 Dahdi 版本一致 (1) 查看 Dahdi 驱动版本 : # modinfo /lib/modules/ unme -r /dahdi/dahdi.ko 此处看到的 Dahdi 版本为 :2.2.0.2, 则需下载 dahdi-linux-complete-2.2.0.2+2.2.0 (2) 下载 Dahdi 驱动程序和 A2410P/AE2410P 驱动程序, 将 A2410P/AE2410P 驱动程序下载至 dahdi-linux-complete-2.2.0.2+2.2.0/linux/drivers/dahdi/ 目录下 : # cd /usr/src # wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/rel eases/dahdi-linux-complete-2.2.0.2+2.2.0.tar.gz # tar -zxvf dahdi-linux-complete-2.2.0.2+2.2.0 # cd /usr/src/dahdi-linux-complete-2.2.0.2+2.2.0/linux/drivers/dahdi/ # wget http://downloads.openvox.cn/pub/drivers/dahdi-patches/a2410p/opvx a24xx_dahdi-linux.tar.gz # tar -zxvf opvxa24xx_dahdi-linux.tar.gz (3) 如果是 AE2410P, 则还需下载并安装 firmware: # cd /usr/src # wget http://downloads.openvox.cn/pub/firmwares/opvx-dahdi-fw-oct6114-0 32-1.07.01.tar.gz 7
安装 firmware: # tar -zxvf opvx-dahdi-fw-oct6114-032-1.07.01.tar.gz # cp dahdi-fw-oct6114-032.bin /lib/firmware/ # mkdir /usr/lib/hotplug/firmware/ # mv dahdi-fw-oct6114-032.bin /usr/lib/hotplug/firmware/ 四 修改配置文件 (1) 修改 /usr/src/dahdi-xx/linux/build_tools/live_dahdi #vi /usr/src/dahdi-xx/linux/build_tools/live_dahdi 添加以下所示红色标识的字符 : MODULES_LOAD="$MODULES_LOAD xpp/xpp_usb" ;; wctdm24xxp wct4xxp wcte12xp wctc4xp opvxa24xx) MODULES_LOAD="$MODULES_LOAD $mod/$mod" (2) 修改 /usr/src/dahdi-xx/linux/drivers/dahdi/kbuild #vi /usr/src/dahdi-xx/linux/drivers/dahdi/kbuild 添加以下所示红色标识的一行 : obj-$(dahdi_build_all)$(config_dahdi_wct4xxp) obj-$(dahdi_build_all)$(config_dahdi_wct4xxp) obj-$(dahdi_build_all)$(config_dahdi_wctc4xxp) += wct4xxp/ += opvxa24xx/ += wctc4xxp/ (3) 修改 /usr/src/dahdi-xx/linux/drivers/dahdi/kconfig # vi /usr/src/dahdi-xx/linux/drivers/dahdi/kconfig 添加以下所示红色标识的语句 : config DAHDI_WCT4XXP tristate "Digium Wildcard dual- and quad-t1/e1/j1 Support" depends on DAHDI && PCI default DAHDI ---help--- This driver provides support for the following Digium Wildcard products: * TE205/206/207/210/211/212P (PCI/PCI-X) * TE220 (PCI-E) * TE405/406/407/410/411/412P (PCI/PCI-X) * TE420 (PCI-E) To compile this driver as a module, choose M here: the module will be called wct4xxp. If unsure, say Y. config DAHDI_OPVXA24XX tristate "OpenVox 24 ports analog card Support" depends on DAHDI && PCI default DAHDI ---help--- This driver provides support for the following OpenVox Wildcard products: 8
* A2410P (PCI) To compile this driver as a module, choose M here: the module will be called opvxa24xx. If unsure, say Y. (4) 修改 /usr/src/dahdi-xx/tools/xpp/perl_modules/dahdi/hardware/pci.pm # vi /usr/src/dahdi-xx/tools/xpp/perl_modules/dahdi/hardware/pci.pm 添加以下所示红色标识语句 : # from opvxa24xx '1b74:2410' => { DRIVER => 'opvxa24xx', DESCRIPTION => 'OpenVox A2410P' }, # from wctdm24xxp 'd161:2400' => { DRIVER => 'wctdm24xxp', DESCRIPTION => 'Wildcard TDM2400P' }, 'd161:0800' => { DRIVER => 'wctdm24xxp', DESCRIPTION => 'Wildcard TDM800P' }, (5) 修改 /usr/src/dahdi-xx/tools/xpp/perl_modules/dahdi/chans.pm #vi /usr/src/dahdi-xx/tools/xpp/perl_modules/dahdi/chans.pm 添加以下所示红色标识语句 : my $dahdi_cfg = $ENV{DAHDI_CFG} '/usr/sbin/dahdi_cfg'; sub probe_type($) { my $self = shift; my $fqn = $self->fqn; my $num = $self->num; my $type; if($fqn =~ m:wctdm/ WRTDM/ OPVXA1200/ OPVXA24XX/:) { my %maybe; undef %maybe; foreach my $sig (qw(fxo fxs)) { my $cmd = "echo ${sig}ks=$num $dahdi_cfg -c /dev/fd/0"; } $maybe{$sig} = system("$cmd >/dev/null 2>&1") == 0; (6) 修改 /usr/src/dahdi-xx/tools/modules.sample #vi /usr/src/dahdi-xx/tools/modules.sample 添加以下所示红色标识语句 : # Digium TE205P/TE207P/TE210P/TE212P: PCI dual-port T1/E1/J1 # Digium TE405P/TE407P/TE410P/TE412P: PCI quad-port T1/E1/J1 # Digium TE220: PCI-Express dual-port T1/E1/J1 # Digium TE420: PCI-Express quad-port T1/E1/J1 wct4xxp # OpenVox A2410P: up to 24 analog ports opvxa24xx 9
(7) 修改 /usr/src/dahdi-xx/tools/blacklist.sample # vi /usr/src/dahdi-xx/tools/blacklist.sample 添加以下所示红色标识语句 : blacklist wctdm blacklist opvxa24xx blacklist wctc4xxp blacklist wcb4xxp 五 编译安装开始编译 Dahdi, 输入 : # cd /usr/src/ dahdi-linux-complete-2.2.0.2+2.2.0 #./configure # make # make install # make config 六 加载驱动输入命令 # asterisk -r, 在 CLI 输入 stop now, 停止 asterisk # service dahdi stop # modprobe dahdi # modprobe opvxa24xx opermode=china 输入命令 :# dmesg 如果使用的是 AE2410P, 从下面的输出中可以找到 EC 模块 OpenVox A2410P version: 1.0 Module 0: Installed -- AUTO FXO (CHINA mode) Module 1: Installed -- AUTO FXO (CHINA mode) Module 2: Installed -- AUTO FXO (CHINA mode) Module 3: Installed -- AUTO FXO (CHINA mode) Module 4: Installed -- AUTO FXS/DPO Module 5: Installed -- AUTO FXS/DPO Module 6: Installed -- AUTO FXS/DPO Module 7: Installed -- AUTO FXS/DPO Module 8: Installed -- AUTO FXO (CHINA mode) Module 9: Installed -- AUTO FXO (CHINA mode) Module 10: Installed -- AUTO FXO (CHINA mode) Module 11: Installed -- AUTO FXO (CHINA mode) Module 12: Installed -- AUTO FXS/DPO Module 13: Installed -- AUTO FXS/DPO Module 14: Installed -- AUTO FXS/DPO Module 15: Installed -- AUTO FXS/DPO Module 16: Installed -- AUTO FXO (CHINA mode) Module 17: Installed -- AUTO FXO (CHINA mode) Module 18: Installed -- AUTO FXO (CHINA mode) Module 19: Installed -- AUTO FXO (CHINA mode) Module 20: Installed -- AUTO FXS/DPO Module 21: Installed -- AUTO FXS/DPO Module 22: Installed -- AUTO FXS/DPO Module 23: Installed -- AUTO FXS/DPO VPM450: echo cancellation supports 32 channels VPM450: echo cancellation for 32 channels VPM450: hardware DTMF disabled. VPM450: Present and operational servicing 1 span(s) 10
修改配置文件 /etc/dahdi/genconf_parameter: 如果是 A2410P, 则 echo_can mg2; 如果是 AE2410P, 则 echo_can none 然后再运行下面的命令 : # dahdi_genconf 运行这个命令后, 如果上面有报 error, 请认真查看报错的具体信息, 系统会自动给出解决问题的命令, 用户可以根据该命令进行解决, 然后再次运行, 如无报错, 则可进行下一步 此命令会自动生成 /etc/dahdi/system.conf 和 /etc/asterisk/dahdi-channels.conf 两个文件 chan_dahdi.conf,dahdi-channels.conf,extensions.conf 三者关系图 : chan_dahdi.conf #include dahdi-channels.conf dahdi-channels.conf dahdi-channel.conf 指明了每个通道在 extensions.conf( 拨号规则配置文件 ) 中所对应的 context 如左图所示对应的关系 [from-pstn] exten=>s,1,answers(); exten=>s,2,playback(xx); [from-internel] exten=>400,1,dial(dahdi/5); exten=>400,2,hangup(); extensions.conf 11
system.conf 文件如下 :(system.conf 文件是 A2410P/AE2410P 的基本通道配置文件 ) # Autogenerated by /usr/sbin/dahdi_genconf on Thu Jul 22 00:56:58 2010 # If you edit this file and execute /usr/sbin/dahdi_genconf again, # your manual changes will be LOST. # Dahdi Configuration File # # This file is parsed by the Dahdi Configurator, dahdi_cfg # # Span 1: OPVXA24XX/24 "OpenVox A2410 Board 25" (MASTER) fxsks=1 fxsks=2 fxsks=3 fxsks=4 fxoks=5 fxoks=6 fxoks=7 fxoks=8. 其他内容省略.. # Global data loadzone defaultzone = us = us dahdi-channels.conf 文件如下 : ; Autogenerated by /usr/sbin/dahdi_genconf on Thu Jul 22 00:56:58 2010 ; If you edit this file and execute /usr/sbin/dahdi_genconf again, ; your manual changes will be LOST. ; Dahdi Channels Configurations (chan_dahdi.conf) ; ; This is not intended to be a complete chan_dahdi.conf. Rather, it is intended ; to be #include-d by /etc/chan_dahdi.conf that will include the global settings ; ; Span 1: OPVXA24XX/24 "OpenVox A2410 Board 25" (MASTER) ;;; line="1 OPVXA24XX/24/0" signalling=fxs_ks callerid=asreceived group=0 context=from-pstn channel => 1 // 通道 1 callerid= group= context=default ;;; line="2 OPVXA24XX/24/1" signalling=fxs_ks callerid=asreceived group=0 context=from-pstn channel => 2 // 通道 2 callerid= group= context=default. // 定义拨号规则的 context, 必须要 // 与 /etc/asterisk/extensions.conf 的 context 相对应 // 定义拨号规则的 context, 必须要 // 与 /etc/asterisk/extensions.conf 的 context 相对应 12
;;; line="5 OPVXA24XX/24/4" signalling=fxo_ks callerid="channel 5" <4005> mailbox=4005 group=5 context=from-internal channel => 5 // 通道 5 callerid= mailbox= group= context=default ;;; line="6 OPVXA24XX/24/5" signalling=fxo_ks callerid="channel 6" <4006> mailbox=4006 group=5 context=from-internal channel => 6 // 通道 6 callerid= mailbox= group= context=default // 定义拨号规则的 context, 必须要 // 与 /etc/asterisk/extensions.conf 的 context 相对应 // 定义拨号规则的 context, 必须要 // 与 /etc/asterisk/extensions.conf 的 context 相对应 检查自动生成的配置是否和自己 A2410P/AE2410P 一致, 如果不一致则需要修改, 注 意 FXS 口使用 FXO 信令,FXO 口用 FXS 信令 改为中国制式 ( 国内用户如果不改的话可能会有问题 ): 修改 system.conf 的以下两项 : loadzone = cn defaultzone = cn 修改 asterisk/indications.conf: country=cn 运行命令 :# dahdi_cfg vvvv 执行到这里安装就算完成了 七 启动 Asterisk, 运行下面命令 : asterisk -vvvvgc( 如果 asterisk 已启动, 可输入 asterisk -r) 进入 CLI 后输入 dahdi show channels, 如果能看到模块, 表示安装已经基本完成 : *CLI> dahdi show channels Chan Extension Context Language MOH Interpret Blocked State Pseudeo default default In service 1 from-pstn default In service 2 from-pstn default In service 3 from-pstn default In service 4 from-pstn default In service 5 from-internal default In service 6 from-internal default In service 13
7 from-internal default In service 8 from-internal default In service 9 from-pstn default In service 10 from-pstn default In service 11 from-pstn default In service 12 from-pstn default In service 13 from-internal default In service 14 from-internal default In service 15 from-internal default In service 16 from-internal default In service 17 from-pstn default In service 18 from-pstn default In service 19 from-pstn default In service 20 from-pstn default In service 21 from-internal default In service 22 from-internal default In service 23 from-internal default In service 24 from-internal default In service 下面是其中一个通道的状态 如果是 AE2410P, 则可以看到 EC 状态为 ON, 否则为 OFF *CLI> dahdi show channel 3 Channel: 3 File Descriptor: 17 Span: 1 Extension: Dialing: no Context: from-pstn Caller ID: Calling TON: 0 Caller ID name: Destroy: 0 InAlarm: 0 Signalling Type: FXS Kewlstart Radio: 0 Owner: DAHDI/3-1 Real: DAHDI/3-1 Callwait: <None> Threeway: <None> Confno: -1 Propagated Conference: -1 Real in conference: 0 DSP: yes Relax DTMF: no Dialing/CallwaitCAS: 0/0 Default law: ulaw Fax Handled: no Pulse phone: no Echo Cancellation: 128 taps, currently ON 14
Master Channel: 6 Actual Confinfo: Num/6, Mode/0x0009 Actual Confmute: No Hookstate (FXS only): Offhook 15
第四章 Elastix 页面配置 1. 登录 Elastix 管理页面打开浏览器输入你的 PBX 的 IP 地址, 然后输入你的用户名 :admin, 密码 :palosant o; 然后点击 Submit 按钮 : 2. 添加 extension, 实现内部分机互打 增加两个分机, 然后再将两部电话接入到 FXS 模块接口, 然后两部电话能互相呼叫 (1) 点击下面如图所示的 PBX 按钮 : (2) 点击选择下图所示的 Extensions 选项 : (3) 从下拉列表选项中, 选择 Generic Zap Device, 因为我们要设立 zap 分机, 然后 点击 Submit 按钮, 如图所示 : 16
(4) 设置用户分机 :111( 用来接收的分机号码 );Display Name:111, 如下图所示 : (5) 为你的分机指定一个通道号, 如图所示 : (6) 点击 Submit 按钮提交 : (7) 点击屏幕上方的 Apply Configuration Changes Here 栏, 如图所示 : 17
(8) 如果你使用的是 AE2410P, 则需要做以下设置, 否则可以直接跳至第 (9) 步 a. 点击右上角的 111<111> 按钮, 如下图所示 : b. 将 echocancelwhenbridged 设置为 yes, 如下图所示 : c. 点击 Submit 按钮 : d. 点击屏幕上方的 Apply Configuration Changes Here 栏, 如图所示 : (9) 按照以上步骤另外添加一个分机 :222, 添加完后就可以实现 111 与 222 互打了 3. 添加呼入路由 添加一个呼入路由, 能够帮助你接收呼入电话 (1) 点击 Inbound Routes 栏 : 18
(2) 在描述栏里输入 incoming1, 如图所示 : (3) 点击 Extensions 栏, 在下拉列表里选择一个应答来电的分机, 然后点击提交 如下图所示 : (4) 点击屏幕上方的 Apply Configuration Changes Here 栏 19
4. 设置中继 拨打外线需要设立中继 (1) 点击 Trunks 栏, 如下图所示 : (2) 点击页面右上方的 Trunk ZAP/g0 按钮, 如下图所示 : (3) 在 Outbound Caller ID 文本框内输入 trunk1, 如下图所示 : 20
(4) 点击下图所示的 Submit Changes 按钮 : (5) 点击屏幕上方的 Apply Configuration Changes Here 栏 5. 添加呼出路由 通过呼出路由, 你能呼叫外线 (1) 点击 Outbound Routes 按钮, 如下图所示 : (2) 点击 09_outside button, 在下图中, 保持默认设置, 如下图所示 : 然后点击 Submit Changes 按钮 21
在这里 Dial Patterns 用了默认的 9., 所以我们拨打外线时要加前缀 9 例如 : 如果 你要呼叫 123456, 那么你要拨号 9123456. (3) 点击屏幕上方的 Apply Configuration Changes Here 栏 22
第五章技术支持 如果您在使用 OpenVox 产品时遇到有关产品技术问题, 请先查看我们论坛上面相关的产品栏目及通过以下方式联系我们 : 1 论坛反馈问题您可以把您所遇到的技术问题发布到我们的论坛上, 我们将会在最短的时间内解决您所提出来的问题 点击进入论坛 2 电子邮件联系您还可以通过电子邮件发送您所遇到的产品技术问题到以下邮箱地址, 我们也将在最短的时间内解决您所提出来的问题 support@openvox.com.cn 第六章参考 www.openvox.cn www.digium.com www.asterisk.org www.voip-info.org www.asteriskguru.com 23