sábado, 14 de marzo de 2009

LINEAS Y ANEXOS: CANALES ZAP - SIP – IAX

-Backup de archivos importantes
–Creación Extensiones SIP – IAX2
–Configuración de una Tarjeta Analógica
–Configuración de una Tarjeta Digital
–Cambio de Idioma a Español

BACKUP ARCHIVOS IMPORTANTES

Para realizar el backup de los archivos mas importantes:
Ejecutar:

cp /etc/zaptel.conf /etc/zaptel.conf.old
cp /etc/asterisk/sip.conf /etc/asterisk/sip.conf.sample
cp /etc/asterisk/iax.conf /etc/asterisk/iax.conf.sample
cp /etc/asterisk/extensions.conf /etc/asterisk/extensions.conf.sample
cp /etc/asterisk/zapata.conf /etc/asterisk/zapata.conf.sample
cp /etc/asterisk/features.conf /etc/asterisk/features.conf.sample
cp /etc/asterisk/meetme.conf /etc/asterisk/meetme.conf.sample


CREACION DE EXTENSIONES SIP


Las extensiones sip se crean y configuran dentro del archivo “sip.conf”

Podemos eliminar el archivo de configuración que carga asterisk samples, y crear nuestro archivo de cero.

Minimamente deberemos colocar lo siguiente dentro del archivo:

[general]
port=5060
bindaddr=0.0.0.0
context=default

Luego podremos continuar con nuestra configuración personalizada

Luego debemos empezar a configurar nuestras extensiones

Editar el archivo sip.conf

;Anexos

[201]
type=friend
username=201
secret=1234
callerid=<201>
context=from-internal
disallow=all
allow=ulaw
allow=gsm
host=dynamic
dtmfmode=rfc2833
canreinvite=no

En la imagen anterior se pueden apreciar los siguientes parámetros:

[201], numero de la extensión

Type=friend, nos indica el tipo de extensión (friend, user, peer).

Username=201; numero de la extensión

Secret=1234; sirve para asignar la contraseña de la extensión.

Callerid=<201>; aquí se coloca el identificador de llamada de la extensión.

Context=from-internal; aquí se define el contexto al cual pertenece la extensión

Disallow=all, desactiva todos los codec

Allow=ulaw & gsm, activa únicamente los codecs ulaw y gsm

Host=dynamic, permite que esta extensión pueda registrarse desde cualquier dirección IP

EJERCICIO

Crear 5 extensiones del rango 201 al 205 para los siguientes usuarios
- Mark Spencer <201>
- Bill Gates <202>
- Steves Jobs <203>
- Linus Torvalds<204>
- Kevin Mitnick <205>

Considerar las siguientes características para todos los usuarios:
Type=friend
Username=según_corresponda
Secret=102030
Callerid=según_corresponda
Context=from-internal
Nat=never
Canreinvite=no
Disallow=all
Allow=ullaw
Host=dynamic
Dtmfmode=rfc2833

TEMPLATES DE CONFIGURACION

Tomando como referencia el ejemplo anterior vamos a mostrar como podemos simplificar la creación de las extensiones con el uso de templates, los cuales permiten simplificar los parámetros comunes en un grupo de extensiones

[settings](!) ; el signo de admiración indica a asterisk que este es un template
Type=friend
Secret=102030
Context=from-internal
Nat=never
Canreinvite=no
Disallow=all
Allow=ullaw
Host=dynamic
Dtmfmode=rfc2833

Ahora las demás extensiones solo deberán hacer referencia al template que se ha creado para ellas.

[201](settings)
Username=201
Callerid=Mark Spencer <201>

[202](settings)
Username=202
Callerid=Bill Gates <202>

[203](settings)
Username=203
Callerid=Steve Jobs <203>

……

[20n](settings)
Username=203
Callerid=xxxxx yyyy <20n>

CODECS

Los codecs están basados en algoritmos de compresión, existen varios tipos de codec para cada formato y tipo de medio (mp3, MPEG, JPEG, GIF, MP4, etc.). Sin embargo nosotros vamos a centrarnos en codecs diseñados para comprimir la voz.

Codec G711a / G711u
Codec GSM
Codec G729
Codec G723.1


CODEC G711
G.711 es un alto codec del estándar del índice binario (64 Kbps) ITU. Es la lengua materna de la red de teléfono digital moderna.

Aunque fue estandardizado formalmente en 1988, el codec del PCM G.711 es el abuelo de la telefonía digital. Inventado por Bell Systems e introducido en los tempranos años 70, una troncal digital T1 emplea un esquema de codificación sin comprimir de la modulación de código de pulso de 8 bits con un índice de la muestra de 8000 muestras por segundo. Esto permitió un ancho de banda máximo (teórico) de la voz de 4000 hertzios. Una troncal T1 lleva 24 canales digitales PCM multiplexados. El estándar europeo mejorado E1 lleva 30 canales.

Hay dos versiones: U-law y A-law. U-law viene del estándar T1 usado en Norteamérica y Japón. A-law viene del estándar E1 usado en el resto del mundo. La diferencia es en el método la señal análoga que es muestreada. En ambos esquemas, la señal no se muestrea linealmente, pero en una manera logarítmica. A-law proporciona una gama más dinámica en comparación con U-law. El resultado es un sonido menos “borroso”.

Usar G.711 para VoIP dará la mejor calidad de la voz; puesto que no utiliza ninguna compresión y es el mismo codec usado por la red del PSTN y las líneas del ISDN, él sonido será como usar un teléfono regular o ISDN. También tiene el delay más bajo porque no hay necesidad de la compresión, que cuesta tiempo de proceso. La desventaja es que necesita mas ancho de banda que otros codecs, hasta 84 Kbps incluyendo todo el TCP/IP de las cabeceras.
G.711 es utilizado por la mayoría de los proveedores de VoIP y se encuentra prácticamente en todos los equipos VoIP.

GSM (Global System for Mobile communications) Este codec usa la misma codificación usada para comprimir el audio en la telefonía móvil, este codec también es usado comúnmente para comunicaciones por videoconferencia y software de telefonía IP ya que consigue una compresión elevada con una calidad aceptable de audio, comúnmente voz humana.

Normalmente estos codecs se encuentran con Windows pero es posible que no se encuentren instalados en su sistema si en el proceso de instalación no eligió la opción adecuada.

CODEC GSM

GSM (Global System for Mobile communications) Este codec usa la misma codificación usada para comprimir el audio en la telefonía móvil, este codec también es usado comúnmente para comunicaciones por videoconferencia y software de telefonía IP ya que consigue una compresión elevada con una calidad aceptable de audio, comúnmente voz humana.

Normalmente estos codecs se encuentran con Windows pero es posible que no se encuentren instalados en su sistema si en el proceso de instalación no eligió la opción adecuada.

CODEC G729

El codec G.729 es un estandar de la industria que permite optimizar la codificación de la voz en paquetes de datos y así conseguir introducir más llamadas con un ancho de banda limitado, optimizando el rendimiento del uso de Voz sobre IP.

Esta tecnología, una de las más eficientes del mercado, está patentada por sus desarrolladores, Spirit DSP y su uso comercial tiene un coste. El coste es por canal concurrente.

Nota: La codificación G.729 se realiza por software, con su consiguiente carga para el procesador.

Digium, la empresa desarrolladora de Asterisk, recomienda a modo ejemplo destinar un dual Intel(R) Xeon 1.8GHz para 60 llamadas G729 concurrentes y un dual Intel(R) Xeon 2.8GHz para 80 llamadas.

CODEC G723.1

G723.1. Un standard ITU standard del tipo narrow-band audio codec que encodea el habla en una cadena de datos cada 30ms.

Consigue reducir el requerimiento de ancho de banda hasta 5kbps por canal de voz.

CONFIGURACION TARJETA ANALOGICA

Para configurar una tarjeta analógica deberemos seguir los siguientes pasos:

Paso 1:

Editar el archivo de configuración “zaptel.conf”

Ejecutar:

Vi /etc/zaptel.conf

Modificarlo de tal manera que quede como la siguiente imagen

Vi /etc/zaptel.conf



En la imagen anterior se pueden apreciar los siguientes parámetros:

Fxsks=1-2 ; significa que tenemos una tarjeta con 02 módulos FXO ubicados en los slots 1 y 2 de la tarjeta

Loadzone=us ; nos permite especificar el tipo de tonos para la tarjeta, en este caso tono para EEUU y normalmente son compatibles con los de Perú.

Defaultzone= es; la zona que utilizaran los dispositivos que no sean especificados explícitamente.

Paso 2:

Editar el archivo de configuración “zapata.conf”

Ejecutar:

vi /etc/asterisk/zapata.conf

Luego de haber editado el archivo reiniciar asterisk

asterisk –r
restart now

[trunkgroups]
[channels]

rxwink=300
echocancel=yes
echocancelwhenbridged=no
echotraining=800
relaxdtmf=yes
rxgain=2.0
txgain=2.7

signalling=fxs_ks
callerid=asreceived
group=0
context=from-pstn
answeronpolarityswitch=yes
hanguponpolarityswitch=yes
channel=>3

signalling=fxs_ks
callerid=asreceived
group=0
context=from-pstn
busydetect=yes
busycount=4
channel=>4



Debemos tomar en cuenta que este archivo reemplaza al viejo zapata.conf, así que la configuración será muy similar sino la misma.

En la imagen anterior se pueden apreciar los siguientes parámetros:

Language=en; significa que las voces que se cargaran por defecto serán las voces de ingles

Rxwink = 300; su valor esta en milisegundos y normalmente se deja por defecto.

Busydetect=yes; permite que la tarjeta detect el tono de ocupado en una línea.

Busycount=4, requiere que busydetect este en yes, y permite colgar la llamadas luego de escuchar 4 tonos de ocupado en este caso.

Debemos tomar en cuenta que este archivo reemplaza al viejo zapata.conf, así que la configuración será muy similar sino la misma.

En la imagen anterior se pueden apreciar los siguientes parámetros:

Echocancel=yes; permite habilitar el cancelador de eco por software.

Echocancelwhenbridged=no ; activa el cancelador de eco para las llamadas entre los puertos de la misma tarjeta, en principio este tipo de llamadas no debería requerir cancelador de eco.

Echotraining=800; tiempo en milisegundos para el entrenamiento del cancelador de eco

Relaxdtmf=yes; permite que la tarjeta detect el tono de ocupado en una línea.

Rxgain & txgain , permite incrementar la ganancia tanto de recepción como de transmisión.

En la imagen anterior se pueden apreciar los siguientes parámetros:

SPAN 1:
Signalling=fxs_ks, Tipo de señalización para módulos FXO se utiliza fxs_ks

Callerid=asreceived, indica que el caller id será transmitido tal cual es recibido.

Group=0; Asignamos un grupo para estas troncales

Context=from-pstn; asignamos un contexto aun cuando no hemos creado este contexto en extensions.conf aun.

Answeronpolarityswitch=no; activamos la detección de inversión de polaridad al contestar una llamada

Hanguponpolarityswitch=no; activamos la detección de inversión de polaridad para colgar una llamada

Channel=>1; indicamos el canal al cual se le asignaran los parámetros anteriores.

REVERSION DE POLARIDAD

Cuando instalamos Tarjetas en nuestro servidor, debemos tomar en cuenta que la detección de reversión de polaridad para la PSTN no viene activada y para evitar que las líneas se queden pegadas cuando el llamante remoto cuelgue antes que hallamos podido contestar la llamada será necesario agregar las siguientes líneas en el archivo zapata-auto.conf justo encima del parámetro “Channel” tal como muestra la siguiente imagen.
Answeronpolarityswitch=yes
Hanguponpolarityswitch=yes



REVERSION DE POLARIDAD

También podría ser necesario agregar estas dos líneas adicionales si conectamos bases celulares.

Busydetect=yes
Busycount=4


CONFIGURACION TARJETA DIGITAL

Para configurar una tarjeta digital deberemos seguir los siguientes pasos:

Paso 1:

Editar el archivo de configuración “zaptel.conf”

Ejecutar:

Vi /etc/zaptel.conf

Modificarlo de tal manera que quede como la siguiente imagen

Vi /etc/zaptel.conf



En la imagen anterior se pueden apreciar los siguientes parámetros:
span=(spannum),(timing),(LBO),(framing),(coding)

Span =1,1,0,css,hdb3,
spannum ; indica el numero del span
timing; se usa para sincronizar los dispositivos, 0,1,2
line build out, longitud del cable, normalmente este parámetro va en “0”
framming, Css, como comunicarse con el dispositivo del otro lado de la línea
coding, Hdb3, método de codificación, podría necesitar de CRC4 en el caso de los E1

bchan= 1-15,17-31, tomara cono canales de voz los canales del 1al 15 y luego del 17 al 31 (total de 30 canales)

dchan= 16; significa que el canal de señalización será el 16

Paso 2:

Editar el archivo de configuración “zapata.conf”

Ejecutar:

vi /etc/asterisk/zapata.conf

Luego de haber editado el archivo reiniciar asterisk

asterisk –r
restart now





Debemos tomar en cuenta que este archivo reemplaza al viejo zapata.conf, así que la configuración será muy similar sino la misma.

En la imagen anterior se pueden apreciar los siguientes parámetros:

Language=en; significa que las voces que se cargaran por defecto serán las voces de ingles

Rxwink = 300; su valor esta en milisegundos y normalmente se deja por defecto.

Resetinterval=never; permite establecer la reanudacion de los canales no utilizados, por defecto son 3600 segundos.

Busydetect=yes; permite que la terjeta detect el tono de ocupado en una linea.

Busycount=4, requiere que busydetect este en yes, y permite colgar la llamadas luego de escuchar 4 tonos de ocupado en este caso.

Debemos tomar en cuenta que este archivo reemplaza al viejo zapata.conf, así que la configuración será muy similar sino la misma.

En la imagen anterior se pueden apreciar los siguientes parámetros:

Echocancel=yes; permite habilitar el cancelador de eco por software.

Echocancelwhenbridged=no ; activa el cancelador de eco para las llamadas entre los puertos de la misma tarjeta, en principio este tipo de llamadas no debería requerir cancelador de eco.

Echotraining=800; tiempo en milisegundos para el entrenamiento del cancelador de eco

Relaxdtmf=yes; permite que la tarjeta detect el tono de ocupado en una línea.

Rxgain & txgain , permite incrementar la ganancia tanto de recepción como de transmisión.

En la imagen anterior se pueden apreciar los siguientes parámetros:

SPAN 1:
Signalling=pri_cpe, tipo de señalización utilizado para primarios

switchtype=euroisdn, Este parámetro solo se utiliza para las tarjetas primarias

Group=0; Asignamos un grupo para estos canales

Context=entradapri; asignamos un contexto aun cuando no hemos creado este contexto en extensions.conf aun.

bchannel=>1-15; canal de datos

dchannel => 16; canal de control o señalización


CARGANDO VOCES EN EL SERVIDOR

Lo primero que vamos a hacer es cargar los archivos con las voces, en español en este caso.

Para ello vamos a utilizar el programa winscp, para conectarnos al servidor.

Una vez conectados nos dirigimos a la siguiente ruta:
/var/lib/asterisk/sounds/

Dentro de esta carpeta encontraremos los archivos con las voces de nuestro servidor que por defecto viene en ingles.

Para instalar el idioma debemos copiar el contenido de la carpeta voces completas en español del cd dentro de la ruta

/var/lib/asterisk/sounds

De manera que se carguen los archivos en español en las respectivas rutas de manera automática

/var/lib/asterisk/sounds/es
/var/lib/asterisk/sounds/digits/es
/var/lib/asterisk/sounds/letters/es
/var/lib/asterisk/sounds/followme/es
Etc…

CONFIGURANDO ARCHIVOS PARA CAMBIAR EL IDIOMA

Es necesario cambiar tres archivos principalmente.

1./etc/asterisk/sip.conf – para cambiar el idioma a los anexos
2./etc/asterisk/iax.conf – para cambiar el idioma a los anexos
3./etc/asterisk/zapata.conf – para cambiarle el idioma a la troncal
En todos será necesario ingresar o modificar el parámetro “language” para que quede de la siguiente manera
“language = es”

FINALIZANDO LA CARGA DEL IDIOMA

Finalmente una ves modificado deberemos reiniciar el servicio de asterisk para que se ejecuten los cambios.

0 comentarios:

Publicar un comentario