Вы находитесь на странице: 1из 27

Asterisk, Sangoma A101 y OpenR2

Mayo 2011 Gabriel Bozada <gabriel@demerzel.org> http://www.trantoriano.net

Instalaremos Asterisk, DAHDI, OpenR2 y WANPIPE para congurar un enlace telefnico E1 de o TELMEX en Mxico, sera la tercera gu rpida que hago cada una con distintas tarjetas, Digium y e a a OpenVox. El sistema operativo que utilizaremos sera Linux Red Hat Enterprise Linux 5.6 para arquitectura de 64 bits, el equipo donde desarrollaremos las pruebas es un HP Proliant ML150, una tarjeta Sangoma A101 1-port T1/E1/J1 y conectores para los coaxiales para la conversin a RJ45. Instalaremos el o sistema y utilizaremos unicamente paquetes que vienen junto con los discos de instalacin, no usaremos o yum para instalar ni actualizar paquetes principalmente para vericar los paquetes que son necesarios para compilar asterisk, dahdi y wanpipe (puedes utilizar CentOS por aquello de la licencia de RedHat). No cubriremos la instalacin de Red Hat hay demasiada informacin en la red para consultar solo o o hacemos mencin que se instala sin entorno grco y dems aplicaciones no necesarias para un servio a a dor de las caracter sticas mencionadas. Los paquetes los tomaremos y los instalaremos usando la imagen ISO de RHEL montndolo en un directorio para instalarlos mediante RPM, ya que tenemos instalado a todo el sistema operativo y conectado adecuadamente a una red con acceso a Internet procederemos a lo siguiente: Crearemos un directorio denominado IPBX dentro de /usr/src que sera nuestro directorio de instalacin, dentro de el crearemos otro directorio denominado Disco donde montaremos la ISO de o instalacin de Red Hat, para acceder a los paquetes. o
[root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma ~]# mkdir /usr/src/IPBX ~]# cd /usr/src/IPBX/ IPBX]# mkdir Disco IPBX]# mount -t iso9660 -o loop rhel-server-5.6-x86_64-dvd.iso Disco/ IPBX]# cd Disco/Server/

Estos son los paquetes que tuve que instalar para la compilacin de wanpipe, dahdi, asterisk y openr2, o hay dependencias entre ellos por lo tanto es necesario instalarlos todos, con yum o createrepo es mas automtico sin embargo no son muchos paquetes y de esta manera uno se da cuenta de los necesarios. a
[root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh kernel-devel-2.6.18-238.el5.x86_64.rpm ncurses-devel-5.5-24.20060715.x86_64.rpm ncurses-5.5-24.20060715.x86_64.rpm * kernel-headers-2.6.18-238.el5.x86_64.rpm glibc-headers-2.5-58.x86_64.rpm glibc-devel-2.5-58.x86_64.rpm gcc-4.1.2-50.el5.x86_64.rpm flex-2.5.4a-41.fc6.x86_64.rpm patch-2.5.4-31.el5.x86_64.rpm * libtermcap-devel-2.0.8-46.1.x86_64.rpm bison-2.3-2.1.x86_64.rpm imake-1.0.2-3.x86_64.rpm autoconf-2.59-12.noarch.rpm automake-1.9.6-2.3.el5.noarch.rpm libtool-1.5.22-7.el5_4.x86_64.rpm libstdc++-devel-4.1.2-50.el5.x86_64.rpm gcc-c++-4.1.2-50.el5.x86_64.rpm

[root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma

Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]# Server]#

rpm rpm rpm rpm rpm rpm rpm rpm rpm rpm

-ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh -ivh

slang-devel-2.0.6-4.el5.x86_64.rpm newt-devel-0.52.2-15.el5.x86_64.rpm zlib-devel-1.2.3-3.x86_64.rpm libxml2-devel-2.6.26-2.1.2.8.el5_5.1.x86_64.rpm e2fsprogs-devel-1.39-23.el5_5.1.x86_64.rpm keyutils-libs-devel-1.2-1.el5.x86_64.rpm libsepol-devel-1.15.2-3.el5.x86_64.rpm libselinux-devel-1.33.4-5.7.el5.x86_64.rpm krb5-devel-1.6.1-55.el5.x86_64.rpm openssl-devel-0.9.8e-12.el5_5.7.x86_64.rpm

En el directorio de IPBX descargaremos las ultimas versiones de cada una de las aplicaciones que vamos a utilizar, para este caso usaremos Wanpipe 3.5.20, Asterisk 1.8.4, DAHDI linux 2.4.1.2, DAHDI tools 2.4.1 y OpenR2 1.3.1.
[root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma IPBX]# IPBX]# IPBX]# IPBX]# IPBX]# wget wget wget wget wget ftp://ftp.sangoma.com/linux/current_wanpipe/wanpipe-3.5.20.tgz http://downloads.asterisk.org/pub/telephony/dahdi-linux/releases/dahdi-linux-2.4.1.2.tar.gz http://downloads.asterisk.org/pub/telephony/dahdi-tools/releases/dahdi-tools-2.4.1.tar.gz http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-1.8.4.tar.gz http://openr2.googlecode.com/files/openr2-1.3.1.tar.gz

Antes que nada debemos conectar al equipo la tarjeta y vericar que se reconocida por Linux, mediante lspci vericamos que adecuadamente el sistema operativo la reconoci y nos muestra donde esta o conectada f sicamente.

Figura 1: La tarjeta en cuestin o


[root@asterisksangoma ~]# lspci | grep Net 07:00.0 Network controller: Sangoma Technologies Corp. A200/Remora FXO/FXS Analog AFT card 07:01.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5703X Gigabit Ethernet (rev 02)

Figura 2: Puerto PCI del equipo Procedemos con la instalacin de los mdulos de DAHDI y posteriormente la instalacin de Wanpipe o o o ya que vamos a utilizar DAHDI especicamos al script de instalacin el parmetro dahdi. o a
[root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma IPBX]# tar xfz dahdi-linux-2.4.1.2.tar.gz IPBX]# cd dahdi-linux-2.4.1.2 dahdi-linux-2.4.1.2]# make dahdi-linux-2.4.1.2]# make install dahdi-linux-2.4.1.2]# cd ..

[root@asterisksangoma IPBX]# tar xfz wanpipe-3.5.20.tgz [root@asterisksangoma IPBX]# cd wanpipe-3.5.20

Figura 3: CD de Wanpipe

El script de instalacin vericara los componentes necesarios como son paquetes, librer del kernel o as utilizado y el directorio de DAHDI a utilizar.
[root@asterisksangoma wanpipe-3.5.20]# ./Setup dahdi ---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ---------------------------------------------------------WANPIPE INSTALLATION FOR DAHDI You are about to install WANPIPE TDM Voice drivers for Asterisk/Dahdi framework. You will be prompted for path to DAHDI source. Wanpipe drivers will compile into dahdi WITHOUT any dahdi patching or need to recompile dahdi modules. You must have Linux Kernel Headers along with full development tools (i.e. GNU C compiler and utilities) installed in order to be able to install this product. If you have previoulsy installed WANPIPE, this release will overrite/upgrade full release without the need to uninstall first! IMPORTANT: It is always recommended to say YES to all options prompted during the install! Please visit: http://wiki.sangoma.com for more info. Would you like to install WANPIPE now? [y] (y/n) y ---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ---------------------------------------------------------Fixing file permissions... Verifying files and fixing permissions ...Done Checking for C developement tools ...(gcc) OK Checking for C++ developement tools ...OK Checking for Make utility ...OK Checking for ncurses library ... OK Checking for Perl developement tools ...OK Checking for AWK ...OK Checking for FLEX ...OK Checking for Patch ...OK Checking for libtermcap-devel...OK Checking for bison...OK Checking for libtool...OK

---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ----------------------------------------------------------

Installing WANPIPE Device Drivers: Linux KERNEL To integrate WANPIPE Multi-Protocol Voice & WAN Router modules into the Linux kernel, the kernel has to be updated with latest wanpipe sources. Install will only modify existing wanpipe source that is already in the Kernel. IMPORTANT: It is always recommended to say YES to all options prompted during the install!

---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ----------------------------------------------------------

Please specify absolute path name of your linux headers/source directory Press Enter for Default: /lib/modules/2.6.18-238.el5/build #>Setting linux directory to /lib/modules/2.6.18-238.el5/build

Upgrading WANPIPE kernel documentation ...Done.

Installing WANPIPE include headers ...Done. WANPIPE device drivers upgraded successfully!

---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ---------------------------------------------------------WANPIPE KERNEL DRIVER COMPILATION The next step in WANPIPE installation involves compiling WANPIPE kernel modules. This script will compile and install WANPIPE modules into the currently running linux kernel. For greater customization you will be prompted to select which Protocol/Drivers you would like to

build into the WANPIPE kernel modules. Wanpipe Default Wanpipe Default Wanpipe Default Wanpipe Default for for for for for for for for Asterisk/Dahdi/Zaptel Asterisk/Dahdi/Zaptel Wan Routing/API Wan/IP Routing and Data API Asterisk SMG/SS7 Asterisk SS7 TDM API FreeSwitch and Voice API

Custom Compilation: -----------------Customise WANPIPE driver compilation to add only the protocols that you need. This way one can reduce the size of the WANPIPE kernel drivers. Refer to http://wiki.sangoma.com for more info

---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ----------------------------------------------------------

Please Select Compilation Mode 1. WAN Protocols Support Protocols: Frame Relay, CHDLC, PPP, ATM, X25, ADSL, TDM API Default for: Wan Routing, Data & Voice API devel. 2. TDM Voice (Dahdi/Zaptel) Support Protocols: TDMV (Dahid/Zaptel), TDM API on AFT adatpers. Default for: Asterisk & CallWeaver 3. TDM Voice (Dahid/Zaptel) + WAN Protocol Support 4. SMG (SS7) (Default for Asterisk SMG/SS7 install) 5. SMG (SS7) + TDM Voice (Dahdi/Zaptel) Default for: Asterisk SS7 + PRI 6. SMG (BRI) (Default for Asterisk SMG/BRI install) 7. SMG (BRI) + TDM Voice (Dahdi/Zaptel) Default for: Asterisk BRI + PRI + Analog 8. SMG (PRI) (Default for Asterisk SMG/PRI install) 9. SMG (PRI) + TDM Voice (Dahdi/Zaptel) Default for: Asterisk SMG/PRI + Analog 10. TDM API Protocols: TDM API on AFT adapters: Default for: FreeSwitch, Yate, Sunrise

Custom voice development 11. Custom Compilation Mode Specify protocols to be added into the WANPIPE kernel drivers. Please select (1-11) [Default: 1]: ---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ----------------------------------------------------------

Looking for zaptel/dahdi directory in /usr/src ... ------------------------------------------1 : /usr/src/IPBX/dahdi-linux-2.4.1.2 ----------------------------------------------------------------------------------m : Enter zaptel path manually (ctrl-c to Exit) Please select working zaptel directory [1-1][m]: 1 Enabling the TDM Voice Asterisk Support Dahdi HW HDLC Support Detected: Enabling DCHAN Feature Native Dahdi HW HDLC Support Detected - No patch required Dahdi source unmodified Checking for UDEV Zaptel compatibility... Enabling the AFT TE1 Support Checking for SMP support ...Enabled. Checking current processor type ...x86_64 Wan Update Flags: -DAF_WANPIPE_2612_FORCE_UPDATE -DWANPIPE_MOD_266_FORCE_UPDATE Dahdi installed, no need to add UDEV rules

-------------------------------------------------CFLAGS: gcc -Wp,-MD,.wanpipe.o.d -nostdinc -iwithprefix include -D__LINUX__ -Dlinux -D__KERNEL__ -I/usr/include/ -------------------------------------------------Checking for REGPARM kernel option ...Disabled. Compiling General WANPIPE Driver for 2.6.X Kernel .....Done.

WAN HWEC module enabled and compiled! Linking Wanpipe Driver and protocols ...Done. Updating Kernel Modules ...Done. Compilation Successful. ----------------------------------------------------------

WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ---------------------------------------------------------WANPIPE META CONFIGURATION There are two configuration files associated with WANPIPE. 1) /usr/src/IPBX/wanpipe-3.5.20/wanrouter.rc: - defines locations of important files such as lock and configuration files as well as start/stop order of multiple WANPIPE devices. 2) /usr/src/IPBX/wanpipe-3.5.20/wanpipe1.conf: - main configuration file for each WANPIPE device. - defines interfaces, hardware and protocol information. - this file can be created using the wancfg GUI utility or manually based on sample files located in /etc/wanpipe/samples. Please read the WanpipeInstallation.(pdf/txt) manual for further information.

---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ---------------------------------------------------------WANPIPE UTILITIES SETUP WANPIPE utilities are used to: 1) create configuration files: for Zaptel and Asterisk /usr/sbin/wancfg_zaptel #Zaptel and Asterisk /usr/sbin/wancfg_dahdi #Dahdi and Asterisk /usr/sbin/wancfg_smg #BRI/SS7, Zaptel and Asterisk /usr/sbin/wancfg_tdmapi #TDM API 2) create WANPIPE WAN/IP configuration files. (/usr/sbin/wancfg) 3) start,stop,restart individual/all devices and interfaces. (/usr/sbin/wanrouter) 4) debug line, protocol and driver problems. (/usr/sbin/wanpipemon) 5) aid in WANPIPE API development (/etc/wanpipe/api) Refer to the WanpipeInstallation.(pdf/txt) for more information.

Compiling WANPIPE Utilities ...Done.

Compiling WANPIPE WanCfg Utility ...Done.

Compiling WANPIPE LibSangoma API library ...Done.

Compiling WANPIPE LibStelephony API library ...Done.

Compiling WANPIPE API Development Utilities ...Done. Compiling WANPIPE HWEC Utilities ...Done.

WANPIPE Environment Setup Complete !!! Installing Installing Installing Installing Installing Installing Installing Installing Installing Installing WANPIPE Files ... ! WANPIPE Utilities in /usr/sbin wanrouter.rc in /etc/wanpipe wanpipe libraries in /etc/wanpipe firmware in /etc/wanpipe/firmware documentation in /usr/share/doc/wanpipe sample api code in /etc/wanpipe/api AFT Firmware update utility in /etc/wanpipe/util driver headers in /etc/wanpipe/api/include/linux Hardware Echo Cancel Utilites

---------------------------------------------------------WANPIPE v3.5.20 Installation Script Copyright (c) 1995-2010, Sangoma Technologies Inc. ---------------------------------------------------------WANPIPE INSTALLATON: COMPLETE WANPIPE installation is now complete. WANPIPE kernel drivers and configuration/debug utilities have been compiled and installed. 1) Proceed to configure the WANPIPE drivers: Asterisk/Zaptel : /usr/sbin/wancfg_zaptel Asterisk/Dahdi : /usr/sbin/wancfg_dahdi TDM API : /usr/sbin/wancfg_tdmapi SMG SS7/BRI/PRI : /usr/sbin/wancfg_smg WAN Routing/API : /usr/sbin/wancfg 2) Use the /usr/sbin/wanrouter startup script to start and stop the router. (eg: wanrouter start) 3) To uninstall WANPIPE package run ./Setup remove Please read http://wiki.sangoma.com for further instructions.

Wanpipe / Zaptel Configuration ============================== wancfg_zaptel configurator can create all wanpipe config files for ZAPTEL including /etc/zaptel.conf file. Optionally: the configurator can also create Asterisk zapata.conf ----------------------------------------------------Would you like to configure wanpipe devices for DAHDI? (y/n) n Wanpipe Installation Complete ----------------------------Please proceed to configure wanpipe user /usr/sbin/wancfg_dahdi

Hasta aqu termina la instalacin, le dimos la opcin de que no congurara de momento los dispositivos o o esto lo haremos despus con otro script del programa instalado aparte de que al nal editaremos e manualmente nuestro archivo de conguracin. Con el comando wanrouter recin instalado vericamos o e que nuestra tarjeta sea reconocida efectivamente por wanpipe.
[root@asterisksangoma wanpipe-3.5.20]# wanrouter hwprobe ------------------------------| Wanpipe Hardware Probe Info | ------------------------------1 . AFT-A101-SH : SLOT=0 : BUS=7 : IRQ=7 : CPU=A : PORT=1 : HWEC=32 : V=37 Card Cnt: A101-2=1

Vemos que satisfactoriamente esta reconocida por la aplicacin, aqu en este punto especial introduzco o el siguiente error que se presento en diversos intentos de instalacin con otros kernel o sin la tarjeta o E1 en el puerto PCI del equipo en cuestin. o FATAL: Error inserting wanpipe (/lib/modules/2.6.18-238.el5/kernel/drivers/net/wan/wanpipe.ko): Unknown symbol in module, or unknown parameter (see dmesg) Would you like to generate /etc/asterisk/zapata.conf Iniciamos el script de conguracin tomando los pasos de un white paper denominado Running o MFC/R2 with Sangoma Wanpipe R using OpenR2 (libopenr2), para generar el archivo de conguracin de wanpipe. o
[root@asterisksangoma wanpipe-3.5.20]# wancfg_dahdi ######################################################################## # Sangoma Wanpipe # # Dahdi/Zaptel/SMG/TDMAPI/BOOT Configuration Script # # v2.39 # # Sangoma Technologies Inc. # # Copyright(c) 2009. # ######################################################################## Would you like to generate /etc/asterisk/chan_dahdi.conf 1. YES 2. NO [1-2]:1 --------------------------------------------Configuring T1/E1 cards [A101/A102/A104/A108] --------------------------------------------A101 detected on slot:0 bus:7 ----------------------------------------------------------Configuring port 1 on A101 slot:0 bus:7. ----------------------------------------------------------Select media type for AFT-A101 on port 1 [slot:0 bus:7 span:1] 1. T1 2. E1 3. Unused 4. Exit [1-4]:2

10

Configuring port 1 on 101 as E1, line coding:HDB3, framing:CRC4 1. YES - Keep these settings 2. NO - Configure line coding and framing [1-2, ENTER=YES]:1 Select clock for AFT-A101 on port 1 [slot:0 bus:7 span:1] 1. NORMAL 2. MASTER [1-2]:1 Select signalling type for AFT-A101 on port 1 [slot:0 bus:7 span:1] 1. Zaptel/Dahdi - PRI CPE 2. Zaptel/Dahdi - PRI NET 3. Zaptel/Dahdi - E & M 4. Zaptel/Dahdi - E & M Wink 5. Zaptel/Dahdi - FXS - Loop Start 6. Zaptel/Dahdi - FXS - Ground Start 7. Zaptel/Dahdi - FXS - Kewl Start 8. Zaptel/Dahdi - FX0 - Loop Start 9. Zaptel/Dahdi - FX0 - Ground Start 10. Zaptel/Dahdi - FX0 - Kewl Start 11. Sangoma SMG/sangoma_prid- PRI CPE 12. Sangoma SMG/sangoma_prid- PRI NET [1-12]:5

Would you like to enable hardware DTMF detection? 1. YES 2. NO [1-2, ENTER=YES]:1 Would you like to enable hardware fax detection? 1. YES 2. NO [1-2, ENTER=NO]:1 Configuring port 1 on AFT-A101 as a full E1 1. YES - Use all channels 2. NO - Configure for fractional [1-2, ENTER=YES]:1 Select dialplan context for AFT-A101 on port 1 1. from-pstn 2. from-internal 3. Custom [1-3]:1

Port 1 on AFT-A101 configuration complete... Press any key to continue: T1/E1 card configuration complete. Press any key to continue: -----------------------------------Configuring analog cards [A200/A400/B600/B700/B800]

11

----------------------------------------------------------------------Configuring USB devices [U100] -----------------------------------################################################################### # SUMMARY # ################################################################### 1 0 0 0 T1/E1 port(s) detected, 1 configured ISDN BRI port(s) detected, 0 configured analog card(s) detected, 0 configured usb device(s) detected, 0 configured

Configurator will create the following files: 1. Wanpipe config files in /etc/wanpipe 2. Dahdi config file /etc/dahdi/system.conf 3. Chan-Dahdi config file /etc/asterisk/chan_dahdi.conf

Your original configuration files will be saved to: 1. /etc/dahdi/system.conf.bak 2. /etc/asterisk/chan_dahdi.conf.bak

Your configuration has been saved in /etc/wanpipe/debug-2011-05-15.tgz. When requesting support, email this file to techdesk@sangoma.com

################################################################### Configuration Complete! Please select following: 1. YES - Continue 2. NO - Exit [1-2]: Dahdi and Wanpipe configuration complete: choose action 1. Save cfg: Restart Asterisk & Wanpipe now 2. Save cfg: Restart Asterisk & Wanpipe when convenient 3. Save cfg: Stop Asterisk & Wanpipe now 4. Save cfg: Stop Asterisk & Wanpipe when convenient 5. Save cfg: Save cfg only (Not Recommanded!!!) 6. Do not save cfg: Exit [1-6]:5

Removing old configuration files... Copying new Wanpipe configuration files... Copying new Dahdi configuration file (/etc/dahdi/system.conf)... cp: cannot create regular file /etc/dahdi/system.conf: No such file or directory Error executing command: cp -f /etc/wanpipe/wancfg_zaptel/tmp_cfg/zaptel.conf /etc/dahdi/system.conf

12

Would you like to continue? 1. No - exit 2. YES [1-2, ENTER=No]:2

Copying new Chan-Dahdi configuration files (/etc/asterisk/chan_dahdi.conf)... cp: cannot create regular file /etc/asterisk/chan_dahdi.conf: No such file or directory Error executing command: cp -f /etc/wanpipe/wancfg_zaptel/tmp_cfg/zapata.conf /etc/asterisk/chan_dahdi.conf Would you like to continue? 1. No - exit 2. YES [1-2, ENTER=No]:2 Saving files only Current boot level is 3 Wanrouter boot scripts configuration... Removing existing wanrouter boot scripts...OK Would you like wanrouter to start on system boot? 1. YES 2. NO [1-2]:1 Verifying Dahdi boot scripts... Verifying Dahdi boot scripts...Not installed Verifying Dahdi shutdown scripts...Not installed Enabling wanrouter boot scripts ...(level:8) Enabling wanrouter shutdown scripts ...(level:91) Remvoing old smg_ctrl boot.....OK Remvoing old smg_ctrl_safe boot.....OK

Posteriormente realizaremos unos cambios en el archivo de conguracin, vamos a vericar que wano router nos muestre el dispositivo.
[root@asterisksangoma wanpipe-3.5.20]# wanrouter start Starting up device: wanpipe1 --> Loading ec image OCT6116-64S.ima... Configuring interfaces: w1g1 done. [root@asterisksangoma wanpipe-3.5.20]# wanrouter list Devices currently active: wanpipe1 [root@asterisksangoma wanpipe-3.5.20]# wanrouter status Devices currently active: wanpipe1

Wanpipe Config:

13

Device name | Protocol Map | Adapter | IRQ | Slot/IO | Ifs | CLK | Baud rate | wanpipe1 | N/A | A101/1D/A102/2D/4/4D/8| 169 | 0 | 1 | N/A | 0 Wanrouter Status: Device name | Protocol | Station | Status wanpipe1 | AFT TE1 | N/A | Disconnected | |

Instalamos las herramientas de DAHDI para usar dahdi tool.


[root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma wanpipe-3.5.20]# cd .. IPBX]# tar xfz dahdi-tools-2.4.1.tar.gz IPBX]# cd dahdi-tools-2.4.1 dahdi-tools-2.4.1]# ./configure dahdi-tools-2.4.1]# make dahdi-tools-2.4.1]# make install dahdi-tools-2.4.1]# make config dahdi-tools-2.4.1]# cd ..

Compilamos e instalamos OpenR2 segn las indicaciones del manual colocado en la pagina del autor. u
[root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma IPBX]# tar xvfz openr2-1.3.1.tar.gz IPBX]# cd openr2-1.3.1 openr2-1.3.1]# ./configure --prefix=/usr openr2-1.3.1]# make openr2-1.3.1]# make install

Por ultimo compilamos e instalamos Asterisk.


[root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma [root@asterisksangoma IPBX]# IPBX]# IPBX]# IPBX]# IPBX]# IPBX]# tar xfz asterisk-1.8.4.tar.gz cd asterisk-1.8.4 ./configure make make install make samples

Vericamos que el soporte de OpenR2 este correctamente instalado en Asterisk.


[root@asterisksangoma asterisk-1.8.4]# ldd channels/chan_dahdi.so | grep openr2 libopenr2.so.3 => /usr/lib64/libopenr2.so.3 (0x00002ab1f4dbe000)

Conguraremos DAHDI con los siguientes parmetros espec a cos para el E1 de TELMEX, son treinta canales posibles de comunicacin con el canal 16 para sealizacin. o n o
[root@asterisksangoma IPBX]# vi /etc/dahdi/system.conf span=1,1,0,cas,hdb3 cas=1-15:1101 dchan=16 cas=17-31:1101 loadzone=us defaultzone=us

Cargamos la conguracin. o

14

[root@asterisksangoma IPBX]# dahdi_cfg -vv DAHDI Tools Version - 2.4.1 DAHDI Version: 2.4.1.2 Echo Canceller(s): Configuration ====================== SPAN 1: CAS/HDB3 Build-out: 0 db (CSU)/0-133 feet (DSX-1) Channel map: Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel Channel 01: 02: 03: 04: 05: 06: 07: 08: 09: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: CAS / User (Default) (Echo Canceler: none) (Slaves: 01) CAS / User (Default) (Echo Canceler: none) (Slaves: 02) CAS / User (Default) (Echo Canceler: none) (Slaves: 03) CAS / User (Default) (Echo Canceler: none) (Slaves: 04) CAS / User (Default) (Echo Canceler: none) (Slaves: 05) CAS / User (Default) (Echo Canceler: none) (Slaves: 06) CAS / User (Default) (Echo Canceler: none) (Slaves: 07) CAS / User (Default) (Echo Canceler: none) (Slaves: 08) CAS / User (Default) (Echo Canceler: none) (Slaves: 09) CAS / User (Default) (Echo Canceler: none) (Slaves: 10) CAS / User (Default) (Echo Canceler: none) (Slaves: 11) CAS / User (Default) (Echo Canceler: none) (Slaves: 12) CAS / User (Default) (Echo Canceler: none) (Slaves: 13) CAS / User (Default) (Echo Canceler: none) (Slaves: 14) CAS / User (Default) (Echo Canceler: none) (Slaves: 15) D-channel (Default) (Echo Canceler: none) (Slaves: 16) CAS / User (Default) (Echo Canceler: none) (Slaves: 17) CAS / User (Default) (Echo Canceler: none) (Slaves: 18) CAS / User (Default) (Echo Canceler: none) (Slaves: 19) CAS / User (Default) (Echo Canceler: none) (Slaves: 20) CAS / User (Default) (Echo Canceler: none) (Slaves: 21) CAS / User (Default) (Echo Canceler: none) (Slaves: 22) CAS / User (Default) (Echo Canceler: none) (Slaves: 23) CAS / User (Default) (Echo Canceler: none) (Slaves: 24) CAS / User (Default) (Echo Canceler: none) (Slaves: 25) CAS / User (Default) (Echo Canceler: none) (Slaves: 26) CAS / User (Default) (Echo Canceler: none) (Slaves: 27) CAS / User (Default) (Echo Canceler: none) (Slaves: 28) CAS / User (Default) (Echo Canceler: none) (Slaves: 29) CAS / User (Default) (Echo Canceler: none) (Slaves: 30) CAS / User (Default) (Echo Canceler: none) (Slaves: 31)

31 channels to configure. Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan for for for for for for for for for for channel channel channel channel channel channel channel channel channel channel 1 to none 2 to none 3 to none 4 to none 5 to none 6 to none 7 to none 8 to none 9 to none 10 to none

15

Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting Setting

echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan echocan

for for for for for for for for for for for for for for for for for for for for for

channel channel channel channel channel channel channel channel channel channel channel channel channel channel channel channel channel channel channel channel channel

11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

to to to to to to to to to to to to to to to to to to to to to

none none none none none none none none none none none none none none none none none none none none none

Conguramos los parmetros con respecto a MFCR2, los DNIS, el contexto y los canales a utilizar, en a este caso de los canales uno al veintiuno (el 16 se usa sealizacin) debido a que mi E1 tiene veinte n o lineas disponibles.
[root@asterisksangoma ~]# cat /etc/asterisk/chan_dahdi.conf [channels] signalling=mfcr2 mfcr2_variant=mx mfcr2_get_ani_first=no mfcr2_max_ani=10 mfcr2_max_dnis=4 mfcr2_category=national_subscriber mfcr2_mfback_timeout=-1 mfcr2_metering_pulse_timeout=-1 ; this is for debugging purposes mfcr2_logdir=log mfcr2_logging=all ; end debugging configuration context=from-pstn group=1 restrictcid=yes hidecallerid=yes channel => 1-15 channel => 17-21

Con esto ya tenemos congurada la parte de Asterisk y DAHDI para solo recibir la seal del E1, vamos n a terminar de congurar Wanpipe. Conectar el E1 no basta para que nuestra tarjeta inmediatamente empiece a trabajar, en dado caso wanpipemon nos ayudara a identicar las posibles alarmas existentes para lograr poner en verde el led indicador del estado de nuestra tarjeta. Aqu cito la siguiente pagina: http://wiki.sangoma.com/wanpipemon-T1-E1-line-alarms-0 de la wiki de sangoma donde nos muestran la descripcin de cada una de estas alarmas, vericamos como o wanpipemon muestra las alarmas cuando no tenemos conexin alguna en la tarjeta, nota la alarma de o open circuit, loss of framing y loss of frame signal.
[root@asterisksangoma IPBX]# wanpipemon -i w1g1 -c Ta

16

***** w1g1: E1 Rx Alarms (Framer) ***** ALOS: OFF | LOS: ON RED: ON | AIS: OFF LOF: ON | RAI: OFF ***** w1g1: E1 Rx Alarms (LIU) ***** Short Circuit: OFF Open Circuit: ON Loss of Signal: ON ***** w1g1: E1 Tx Alarms ***** AIS: OFF | YEL: ON

***** w1g1: E1 Performance Monitoring Counters ***** Line Code Violation : 0 Far End Block Errors : 0 CRC4 Errors : 0 FAS Errors : 0

Rx Level : < -44db

Aqu un ejemplo de la tarjeta conectada con un loop en los coaxiales, esto con el n de comparar ciertas alarmas que van desde una mala seal enviada por el otro lado de nuestro enlace as como n cables invertidos en la conexin, la alarma es la de loss of framing. o

Figura 4: Tarjeta conectada en loop

17

[root@asterisksangoma IPBX]# wanpipemon -i w1g1 -c Ta ***** w1g1: E1 Rx Alarms (Framer) ***** ALOS: OFF | LOS: OFF RED: ON | AIS: OFF LOF: ON | RAI: OFF ***** w1g1: E1 Rx Alarms (LIU) ***** Short Circuit: OFF Open Circuit: OFF Loss of Signal: OFF ***** w1g1: E1 Tx Alarms ***** AIS: OFF | YEL: ON

***** w1g1: E1 Performance Monitoring Counters ***** Line Code Violation : 725 Far End Block Errors : 0 CRC4 Errors : 0 FAS Errors : 0

Rx Level : > -2.5db

En los logs del sistema se pueden presentar mensajes similares a los siguientes haciendo referencia al reloj, en mi caso fue por que el Rx y Tx de los coaxiales estaban invertidos en el balun, sin embargo en la FAQ de Sangoma hay mas causas posibles, tambin nota que aparecen otras alarmas diferentes e en especial la de short circuit que nos indica que los cables estn cruzados, y la de remote alarm a indication.
[root@asterisksangoma ~]# wanpipemon -i w1g1 -c Ta ***** w1g1: E1 Rx Alarms (Framer) ***** ALOS: OFF | LOS: OFF RED: ON | AIS: OFF LOF: ON | RAI: ON ***** w1g1: E1 Rx Alarms (LIU) ***** Short Circuit: ON Open Circuit: OFF Loss of Signal: OFF ***** w1g1: E1 Tx Alarms ***** AIS: OFF | YEL: ON

***** w1g1: E1 Performance Monitoring Counters ***** Line Code Violation : 826634

18

Far End Block Errors : 0 CRC4 Errors : 0 FAS Errors : 2166

Rx Level : -40db to -44db [root@asterisksangoma ~]# tail -f /var/log/messages May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:53 asterisksangoma kernel: wanec1: The May 19 20:48:54 asterisksangoma kernel: wanec1: The May 19 20:48:54 asterisksangoma kernel: wanec1: The May 19 20:48:54 asterisksangoma kernel: wanec1: The May 19 20:48:54 asterisksangoma kernel: wanec1: The

H100 slave has lost its framing CT_C8_A clock behavior does not H100 slave has lost its framing CT_C8_A clock behavior does not H100 slave has lost its framing CT_C8_A clock behavior does not H100 slave has lost its framing CT_C8_A clock behavior does not H100 slave has lost its framing CT_C8_A clock behavior does not H100 slave has lost its framing CT_C8_A clock behavior does not H100 slave has lost its framing CT_C8_A clock behavior does not H100 slave has lost its framing CT_C8_A clock behavior does not H100 slave has lost its framing

on the bus! conform to the on the bus! conform to the on the bus! conform to the on the bus! conform to the on the bus! conform to the on the bus! conform to the on the bus! conform to the on the bus! conform to the on the bus!

H.100 spec! H.100 spec! H.100 spec! H.100 spec! H.100 spec! H.100 spec! H.100 spec! H.100 spec!

En los casos anteriores el comando dahdi tool nos mostrara la alarma en la tarjeta y mientras exista Asterisk no podr usarla. a

Figura 5: dahdi tool

19

Figura 6: dahdi tool La alarma RED se quitara hasta que logremos congurar adecuadamente la tarjeta y nos deje de mostrar las dems alarmas, anteriormente conguramos con el script, necesitamos cambiar en el archivo a wanpipe1.conf dentro del directorio /etc/wanpipe, el tipo de framing a NCRC4 en vez de CRC4 y conrmar que la conguracin del reloj se encuentre en modo normal. o
FE_FRAME = NCRC4 TE_CLOCK = NORMAL

Conectamos el E1 a la tarjeta y comprobamos las alarmas en ella.


[root@asterisksangoma ~]# wanpipemon -i w1g1 -c Ta ***** w1g1: E1 Rx Alarms (Framer) ***** ALOS: OFF | LOS: OFF RED: OFF | AIS: OFF LOF: OFF | RAI: OFF ***** w1g1: E1 Rx Alarms (LIU) ***** Short Circuit: OFF Open Circuit: OFF Loss of Signal: OFF ***** w1g1: E1 Tx Alarms ***** AIS: OFF | YEL: OFF

***** w1g1: E1 Performance Monitoring Counters ***** Line Code Violation : 2620 Far End Block Errors : 0

20

CRC4 Errors : 0 FAS Errors : 1507

Rx Level : > -2.5db

Figura 7: E1 conectado

Figura 8: LED en verde

21

Satisfactoriamente no hay ninguna alarma, nuestra tarjeta se pone en verde y esta lista para recibir llamadas, conrmamos con dahdi tool.

Figura 9: dahdi tool Entramos a la consola de Asterisk y vericamos que los canales estn listos. e
asterisksangoma*CLI> Chan Variant Max ANI 1 MX 10 2 MX 10 3 MX 10 4 MX 10 5 MX 10 6 MX 10 7 MX 10 8 MX 10 9 MX 10 10 MX 10 11 MX 10 12 MX 10 13 MX 10 14 MX 10 15 MX 10 17 MX 10 18 MX 10 19 MX 10 20 MX 10 21 MX 10 asterisksangoma*CLI> mfcr2 show channels Max DNIS ANI First Immediate Accept Tx CAS 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE Rx CAS IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE

DAHDI tambin se muestra congurado adecuadamente. e


asterisksangoma*CLI> dahdi show channels Chan Extension Context Language pseudo default MOH Interpret default Blocked State In Service

22

1 from-pstn 2 from-pstn 3 from-pstn 4 from-pstn 5 from-pstn 6 from-pstn 7 from-pstn 8 from-pstn 9 from-pstn 10 from-pstn 11 from-pstn 12 from-pstn 13 from-pstn 14 from-pstn 15 from-pstn 17 from-pstn 18 from-pstn 19 from-pstn 20 from-pstn 21 from-pstn asterisksangoma*CLI>

default default default default default default default default default default default default default default default default default default default default

In In In In In In In In In In In In In In In In In In In In

Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service

Si tenemos la tarjeta con alarma los canales se nos mostraran de la siguiente manera:
asterisksangoma*CLI> dahdi show channels Chan Extension Context Language pseudo default 1 from-pstn 2 from-pstn 3 from-pstn 4 from-pstn 5 from-pstn 6 from-pstn 7 from-pstn 8 from-pstn 9 from-pstn 10 from-pstn 11 from-pstn 12 from-pstn 13 from-pstn 14 from-pstn 15 from-pstn 17 from-pstn 18 from-pstn 19 from-pstn 20 from-pstn 21 from-pstn asterisksangoma*CLI> Chan Variant Max ANI 1 MX 10 2 MX 10 3 MX 10 4 MX 10 5 MX 10 6 MX 10 7 MX 10 MOH Interpret default default default default default default default default default default default default default default default default default default default default default Blocked R R R R R R R R R R R R R R R R R R R R State In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service In Service

mfcr2 show channels Max DNIS ANI First Immediate Accept Tx CAS 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE 4 No No IDLE

Rx CAS BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK

23

8 MX 10 9 MX 10 10 MX 10 11 MX 10 12 MX 10 13 MX 10 14 MX 10 15 MX 10 17 MX 10 18 MX 10 19 MX 10 20 MX 10 21 MX 10 asterisksangoma*CLI>

4 4 4 4 4 4 4 4 4 4 4 4 4

No No No No No No No No No No No No No

No No No No No No No No No No No No No

IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE IDLE

BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK BLOCK

Conguramos rpidamente una extensin SIP 1000 con el contexto from-pstn para que pueda recibir a o las llamadas, marcamos y vemos como la llamada entra con el primer DNI y se dirige a la extensin o 1000.

Figura 10: Llamada entrante


asterisksangoma*CLI> New MFC/R2 call detected on chan 11. MFC/R2 call offered on chan 11. ANI = , DNIS = 5900, Category = National Priority Subscriber MFC/R2 call has been accepted on backward channel 11 -- Executing [5900@from-pstn:1] Dial("DAHDI/11-1", "SIP/1000") in new stack == Using SIP RTP CoS mark 5 -- Called 1000 -- SIP/1000-00000001 is ringing -- SIP/1000-00000001 answered DAHDI/11-1 == Spawn extension (from-pstn, 5900, 1) exited non-zero on DAHDI/11-1 -- Hungup DAHDI/11-1 MFC/R2 call end on channel 11

Sobre esa misma extensin realizamos una llamada de salida. o 24

asterisksangoma*CLI> == Using SIP RTP CoS mark 5 -- Executing [46028079@pruebas:1] Dial("SIP/1000-00000007", "DAHDI/g1/46028079") in new stack -- Called g1/46028079 MFC/R2 call has been accepted on forward channel 1 -- DAHDI/1-1 is ringing -- DAHDI/1-1 is making progress passing it to SIP/1000-00000007 MFC/R2 call has been answered on channel 1 -- DAHDI/1-1 answered SIP/1000-00000007 Chan 1 - Far end disconnected. Reason: Normal Clearing MFC/R2 call disconnected on channel 1 -- Hungup DAHDI/1-1 == Spawn extension (pruebas, 46028079, 1) exited non-zero on SIP/1000-00000007

Figura 11: Llamada saliente El telfono es un MITEL 5312, diseados espec e n camente para el protocolo MINET sin embargo tiene soporte para SIP, solo es cuestin de que inicie con el protocolo, y lo podremos registrar con cualquier o proxy SIP mediante su pagina web de conguracin. o Utilizamos dos tipos de conectores de coaxial a RJ45 que se muestran a continuacin: o

25

Figura 12: Conector MITEL Este conector lo utiliza el conmutador MITEL de donde tome el E1.

Figura 13: Conector K162 Y aqu el conector de la marca AC and E, 408809069 K162. De momento es todo, conguraciones mas especicas quedan fuera de esta gu quedan puntos pena, dientes como instalar una tarjeta Digium junto con la Sangoma, la instalacin de Wanpipe en Debian o que esperamos abordar en otro momento. 26

Saludos, dejo las paginas de donde se tomo la informacin. o Referencias:

http://code.google.com/p/openr2/downloads/list http://wiki.sangoma.com/wanpipemon-T1-E1-line-alarms-0 http://www.fonality.com/trixbox/forums/vendor-forums-certified/sangoma/sangoma-a101d-alarm-redon-lofo http://wiki.sangoma.com/konrads-cheat-sheet http://wiki.sangoma.com/mfcr2 http://wiki.sangoma.com/wanpipe-linux-asterisk-debugging#pri_span_debugging http://wiki.sangoma.com/wanpipe-linux-asterisk-appendix http://libopenr2.org http://code.google.com/p/openr2/downloads/list http://edocs.mitel.com/UG/EN/5312-5324_SIP7.2_UG_GA.pdf http://sangoma.com/assets/docs/misc/MFCR2_and_Sangoma_English.pdf http://demerzel.wordpress.com/2008/10/23/asterisk-y-e1-experiencias/ http://demerzel.org/?p=13

27

Вам также может понравиться