miércoles, 26 de noviembre de 2014

Configurar Adaptador E1 en Elastix

El adaptador E1 de voz consiste en una Linea Digital ISDN que permite tener acceso telefonico dando la capacidad de contar con 30 canales telefonicos de 64 Kbps cada uno, permitiendo asignar 100 o mas numeros telefonicos por enlace. Los 30 canales de acceso del E1 son compartidos por todos los numeros telefonicos asignados al mismo, por lo que todas las llamadas entrantes o salientes de cualquiera de las extensiones asignadas podran ser atendidas directamente mientras exista un canal disponible, permitiendo acceso directo desde el exterior a cada una de las extensiones por medio de un número telefónico (DID). El acceso E1 goza de servicios suplementarios como Caller ID, desvio de llamadas, marcacion abreviada, etc. Este tipo de enlace es ideal para las empresas que manejan grandes cantidades de trafico, independientemente este sea entrante o saliente, como Call Centers, bancos, grandes multinacionales, empresas de tele mercadeo, etc.
Los fabricantes de tarjetas E1 para plataformas Asterisk- Elastix mas reconocidos son:
- Digium
- Sangoma
- OpenVox
Cada uno de los fabricantes ofrecen tarjetas E1 con 1 puerto (30 canales), 2 puertos (60 canales), 4 puertos (120 canales) y 8 puertos (240 canales) , incluso Sangoma ofrece un modelo con 16 puertos (480 canales), en interfaz PCI o PCI Express.
Los aspectos tecnicos mas importantes a considerar para la seleccion de una tarjeta E1 son:
1.- El tipo de interfaz PCI o PCI Express, dependera del modelo de la computadora a utilizar como servidor
2.- Que incorpore hardware para cancelacion de eco, se recomienda que lo incluya.
3.- La cantidad de puertos E1 incluidos, comprar lo que se va a utilizar ya que esto complica la configuracion.
4.- Soporte para los 3 estandares digitales T1/E1/J1 aunque solo se use uno, lo determina el proveedor
5.- Que soporte los estandares de decodificacion de linea: HDB3, AMI, B8ZS, aunque solo se use uno.
6.- Tipos de Tramas (Framing): CRC-4, Non CRC4, ESF, SF, D4. lo determina el proveedor telefonico.
Los 3 primeros aspectos son los mas importantes, deben estar muy seguros que tipo de bus PCI tiene la computadora que utilizaran como servidor Elastix, para no tener la sorpresa que al momento de instalar la tarjeta esta no sea compatible con su computadora. Con relacion al cancelador de eco por hardware es muy recomendable que la tarjeta E1 lo tenga de lo contrario tendran que hacerlo por medio de software lo que complica la configuracion ademas de sobrecargar en procesamiento al CPU, esto se vuelve critico cuando la densidad de puertos es superior a 60 canales (2 E1), degradando el rendimiento del sistema. Las tarjetas que no incorporan cancelador de eco por hardware son mas baratas, tomar en cuenta este detalle porque si compran una tarjeta por su precio lo mas probable es que no incorpore esta funcion. En cuanto a la cantidad de puertos E1, no es que sea mala idea comprar una con mas puertos de los que se van a utilizar porque es probable que un futuro se utilice, el problema se presenta al momento de configurarla ya que en algunas ocaciones en especial con la marca Sangoma esta se complica ya que se tienen que configurar los puertos aunque no se utilice, ademas se recomienta al puerto libre colocarle un adaptador loopback para que no quede alarmado.

Procedimiento de configuracion de tarjeta E1 en Elastix

La configuracion de las tarjetas o adaptadores E1 en Elastix es un procedimiento que tiene ciertas variantes segun el fabricante de la tarjeta, las que presentan un mayor grado de dificutad es la marca Sangoma, debido a que utilizan un manejador (Driver) adicional al Dahdi llamado Wanpipe, que ya lo incorpora Elastix en sus ultimas versiones, desde el cual se realiza la configuracion, es muchas ocaciones si no se ha tenido la experiencia anteriormente con estos adaptadores Sangoma pueden ocacionar muchos dolores de cabeza su configuracion. Si no desean complicarse la vida les recomiendo que utilicen tarjetas Digium con cancelador de eco incluido ya que son las mas faciles de configurar y por ser el mismo fabricante de los creadores de Asterisk, el controlador (Dahdi) las reconoce de manera nativa.
Veamos el procedimiento:
1.- Detectar Hardware
Elastix tiene la funcionalidad que permite detectar automaticamente un nuevo hardware, lo mas recomendable es colocar la tarjeta antes de instalar el servidor, de esta manera se instala durante el proceso de instalacion, caso contrario si se agrega la tarjeta despues de instalado el servidor podemos utilizar esta funcion.
Para acceder a Detectar Hardware damos Clic siguiendo la siguiente secuencia:
Sistema >>> Hardware Detector >>> Detectar Nuevo Hardware
Procedimiento para la deteccion de Nuevo Hardware
Procedimiento para la deteccion de Nuevo Hardware
Cuando activamos la funcion Detectar Nuevo Hardware, se inicia el proceso de deteccion, por lo general toma poco tiempo (entre 1 a 2 minutos), si observan que no hay respuesta por mas de 5 minutos lo mas probable es que haya un error, esto pasa a veces con los adaptadores Sangoma, no es que el hardware este malo lo que sucede es que debemos hacer la configuracion de manera manual.
Si el nuevo hardware es detectado nos aparece una pantalla como la siguiente:
Deteccion de nuevo Hardware en Elastix
Deteccion de nuevo Hardware en Elastix

Tomar en cuenta el color de los puertos:
Estado de los puertos en Elastix
Estado de los puertos en Elastix
Si la tarjeta E1 es detectada pero aun no tiene el enlace del proveedor telefonico conectado, los puertos aparecen en color magenta.
Si la tarjeta E1 es detectada y ya tiene el enlace del proveedor telefonico conectado, los puertos aparecen en color verde.
Si la tarjeta E1 es detectada y ya tiene el enlace del proveedor telefonico conectado, pero los puertos aun aparecen en color magenta, esto significa que los puertos aun no estan  sincronizados con el enlace del proveedor, para esto se tienen que hacer las configuraciones que siguen a continuacion.
2.- Comprobar que el Hardware esta instalado
Lo que haremos a continuacion es comprobar que Elastix ha detectado la tarjeta E1, este procedimiento lo podemos hacer si al correr la deteccion automatica del Hardware esta no es exitosa, de igual manera lo podemos realizar para verificar de que manera es detectado el hardware.
Ejecutamos la siguiente secuencia de comandos desde la linea de comandos ingresando como root.

 [root@ElastixTech ~]# lspci

Buscamos una linea donde se nos indique que hay un hardware detectado con el nombre del fabricante parecida a la siguiente: Digium, Inc. Wildcard TE205P/TE207P dual-span T1/E1/J1 card.
Communication controller: Digium, Inc. Wildcard TE205P/TE207P dual-span T1/E1/J1 card 5.0V
Deteccion del Hardware en Elastix
Deteccion del Hardware en Elastix

Verificamos que el controlador DAHDI esta reconociendo los puertos de la tarjeta E1.

 [root@ElastixTech ~]# lsdahdi

Reconocimiento de los puertos del adaptador E1 por DAHDI en Elastix
Reconocimiento de los puertos del adaptador E1 por DAHDI en Elastix

 3.- Parametrizacion de los puertos E1
Ahora viene la parte mas importante que determinara como van a funcionar los puertos, para esto es necesario que el proveedor del enlace telefonico E1, nos provea la siguiente informacion basica:
1.- Quien genera el Reloj de sincronismo (Clock)
MASTER: Lo genera el cliente (La tarjeta E1 de nuestro servidor Elastix)
SLAVE: Lo genera el proveedor
 2.- Tipo de Trama (Framing)
Puede ser CAS o CSS para Adaptadores E1
Puede ser  AMI ami ó B8ZS b8zs para Adaptadores T1
3.- Tipo de Codificacion (Coding)
Puede ser HDB3 en E1 o AMI en T1
4.- Comprobacion de errores (CRC4)
Si el proveedor Telco, lo tiene activado se debe activar en el E1,  caso contrario no es necesario.
5.- El numero de digitos que enviara la Telco
Se utiliza principalmente para que las llamadas entrantes sean direccionadas a las extensiones con los DID correspondientes.
Para configurar estos valores se realiza en el archivo /etc/dahdi/system.conf , los parametros que se deben configurar son los siguientes:

SPAN

span=[numero de span],[origen del reloj],[longitud del cable],[framing],[coding],[crc4],[color]
[numero de espan]: Numero del Puerto E1 si es el primero 1 si es el segundo 2 se debe configurar todo esto para cada puerto.
[origen del reloj]: 0=master 1=slave
[longitud del cable] : Tamaño del cable de conexion 1= 0 – 133fts , 2=133 – 166fts
[framing]: CAS o CSS para E1 . AMI o B8ZS para T1
[coding]: HDB3 o AMI
[crc4]: (Opcional) Se debe activar solo si la Telco lo indica, caso contrario no es necesario.
[color]: (Opcional) color de alarma de estado 
Un ejemplo de esta linea es la siguiente:

span=1,1,0,ccs,hdb3

BCHAN

Determinan los canales disponibles en la E1para comunicacion telefonica No se debe usar los canales 0 y 16)
Un ejemplo de esta linea es la siguiente:

bchan=1-15,17-31

DCHAN

Indica los canales utilizados para la señalizacion o sincronismo
Un ejemplo de esta linea es la siguiente:

dchan=16

ECHOCANCELLER

Se utiliza solamente si la tarjeta E1 no tiene cancelador de eco en hardware, aunque no afecta en nada si se coloca este parametro aun teniendolo. Si vamos a activar el cancelador de eco en Elastix, se recomienda que se utilice OSLEC, se deben especificar sobre los canales en que va a funcionar.
Un ejemplo de esta linea es la siguiente:

echocanceller=oslec,1-15,17-31

 Un ejemplo completo del archivo /etc/dahdi/system.conf es el siguiente:
/etc/dahdi/system.conf
# Span 1: TE2/0/1 "T2XXP (PCI) Card 0 Span 1"
span=1,1,0,ccs,hdb3
bchan=1-15,17-31
dchan=16
echocanceller=oslec,1-15,17-31
IMPORTANTE:
Esta configuracion se debe realizar por cada puerto de la tarjeta E1, si la tarjeta tiene 2 puertos E1 se deben crear 2 SPAN uno por cada puerto, el SPAN es una agrupacion de 30+1 canales (30 para la voz y 1 para control).
El interfaz E1esta compuesto por 32 canales, sin embargo el proveedor de telefonia Telco hace uso de solo un canal para señalizacion o control, el otro no se utiliza para este proposito.
Distribucion de canales en tarjeta E1 2 puertos
Distribucion de canales en tarjeta E1 2 puertos
El numero de los canales utilizados van numerados secuencialmente en orden ascendente, por ejemplo en una tarjeta con 2 puertos E1 los canales estan distribuidos de la siguiente manera:
PUERTO 1 (SPAN 1):
Canales de voz 1-15 y 17-31
Canal de sincronismo o control 16
PUERTO 2 (SPAN 2): Canales de voz 32-46 y 48-62
Canal de sincronismo o control 47
El canal de sincronismo o control, tambien llamado de señalizacion es utilizado exclusivamente para sincronizar la separacion de las señales digitales durante la transmision de la voz, de esta manera se logra enviar 30 canales de voz equivalentes a 30 lineas telefonicas en solo 4 hilos (TX – RX).
Un ejemplo completo del archivo /etc/dahdi/system.conf con tarjeta E1 de 2 puertos es el siguiente:
/etc/dahdi/system.conf
# Span 1: TE2/0/1 "T2XXP (PCI) Card 0 Span 1"
span=1,1,0,ccs,hdb3
bchan=1-15,17-31
dchan=16
echocanceller=oslec,1-15,17-31

# Span 2: TE2/0/2 "T2XXP (PCI) Card 0 Span 2"
span=2,0,0,ccs,hdb3
bchan=32-46,48-62
dchan=47
echocanceller=oslec,32-46,48-62
De esta manera configuramos el adaptador E1 para la comunicacion con el proveedor Telco, pero aun nos falta configurar los canales para que sean reconocidos como troncales por nuestra PBX-IP Elastix.
El otro archivo que vamos a editar es /etc/asterisk/dahdi-channels.conf aqui vamos a crear agrupaciones de canales que nos van a servir de troncales digitales para la entrada y salidas de llamadas.
Se pueden configurar tantos grupos como canales se tengan, para el caso un puerto E1 tiene 30 canales efectivos para la voz, en teoria podemos crear 30 grupos o troncales, uno por canal, sin embargo esto no es nada practico debido a que la Telco envia las llamadas por cualquier canal, por esta razon lo que se hace es crear un solo grupo de canales por cada puerto E1, de esta manera nos aseguramos que las llamadas entrantes y salientes hacia un mismo proveedor podran utilizar cualquiera de los 30 canales disponibles.
Para el caso de tarjetas con 2 o mas puertos se recomienda crear un grupo o troncal de canales por cada uno de los puertos, en especial si hay mas de un proveedor de telefonia, de esta manera creamos 2 o mas grupos de troncales uno por cada proveedor.
El archivo  /etc/asterisk/dahdi-channels.conf , tiene muchas opciones las cuales no vamos a profundizar en este tutorial, lo que realmente nos importa es comprender de que manera se crean los grupos de troncales que utilizaremos para crear las rutas entrantes y salientes de llamadas.
Veamos como se realiza una agrupacion de canales de un puerto E1:
group=0 : Numero del grupo de troncales
context=from-pstn : Contexto en el que perteneceran
switchtype = euroisdn : Tipo de protocolo, tambien puede ser national o qsig existen varias opciones.
signalling = pri_cpe : Origen de la señal de reloj, pri_net para master y pri_cpe para esclavo
channel => 1-15,17-31 : Canales que formaran parte de este grupo
A continuacion un ejemplo del archivo /etc/asterisk/dahdi-channels.conf para una tarjeta E1 de 2 puertos:
/etc/asterisk/dahdi-channels.conf
[channels]
context=from-pstn
signalling=fxs_ks
rxwink=300              ; Atlas seems to use long (250ms) winks
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
faxdetect=incoming
echotraining=800
rxgain=4.0
txgain=4.0
callgroup=1
pickupgroup=1
;Uncomment these lines if you have problems with the disconection of your analog lines
;busydetect=yes
;busycount=4
immediate=no

; Span 1: TE2/0/1 "T2XXP (PCI) Card 0 Span 1" 
group=0
context=from-pstn
switchtype = euroisdn
signalling = pri_cpe
channel => 1-15,17-31

; Span 2: TE2/0/2 "T2XXP (PCI) Card 0 Span 2"
group=1
context=from-internal
switchtype = euroisdn
signalling = pri_cpe
channel => 32-46,48-62
Al terminar de editar ambos archivos la tarjeta E1 a quedado configurada, lo que viene a continuacion es dar un reset al servidor o reiniciar los servicios de Asterisk, recomiendo el reset para observar si no hay errores al levantar el servidor.
Si todo levanta bien despues del reset, lo que sigue es configurar las rutas entrantes y salientes. Esto lo explicare en otro tutorial proximamente.
Una manera de comprobar que Elastix esta reconociendo los canales de los puertos E1 es ingresar a la consola de Asterisk y ejecutar el comando dahdi show channels.
Aparecera una pantalla como la siguiente:
Verificar canales E1 en Elastix
Verificar canales E1 en Elastix



32278 total views, 14 views today

No hay comentarios:

Publicar un comentario