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

Elastix Certified Engineer Curse

18 al 22 de Mayo de 2009
Barcelona

Quin da la clase ?

Ronda de presentaciones:
A fin de saber quien somos cada uno, es muy interesante que comentemos cada uno de los asistentes:

- Nombre, Empresa (si se es empresa) - Conocimientos de Linux (experiencia prctica, compilaciones ?) - Experiencia en telefona (montaje centralitas, lineas, etc) - Conocimientos de Asterisk (Nivel Elastix, Asterisk compilado, nada...) - Objetivo de la asistencia al curso (instalacion propia, abrir nueva lnea de negocio, etc)

Evitemos interrupciones:
Durante el curso os pedimos que los telfonos mviles se mantengan apagados, a fin de evitar interrupciones en la clase. Entendemos que es difcil cuando se trata de vuestra empresa, pero a menos que sea algo muy urgente, no puede esperar a la prxima pausa ?

Acceso a Internet en el Aula:


Para aquellos que lo precisen, se dispondr de acceso a Internet en el Aula en las paradas para caf y fuera del horario de la clase. Se ruega no usar este acceso durante las clases.

Comidas:
La comida est coordinada por el profesor del Curso. Se dispondr de 2 horas para comer (de 14 a 16 horas).

LUNES
09:00 Introduccin Telefona a

MARTES
la Configuracin de Elastix

MIRCOLES
Bsica Interconexin con Elastix remotos Calidad de Voz Protocolos SIP y RTP Diagnostico de problemas

JUEVES
Fax

VIERNES
Mdulo Call Center

Introduccin a la VOIP AMI y AGI Linux para Administradores de Elastix Fundamentos de Asterisk 11:00 Coffe-Break 11:30 Instalacin Tarjetas Analgicas y montaje red telefnica 14:00 Comida 16:00 Instalacion de Elastix Comida Ruteo de Llamadas Tarificacin y Reportes en Elastix 17.30 18:00 Coffe-Break Elastix Overview Coffe-Break Funcionamiento interno de FreePBX Fin da Coffe-Break Configuracin de telfono IP Configuracin de Hardware

Sintetizacin y Extendiendo Elastix reconocimiento de Voz Desempeo Seguridad Coffe-Break Seguridad Coffe-Break Compilacin de Asterisk Virtualizacin

Coffe-Break Plan de marcado avanzado

Comida Email System

Comida Debugging

Comida

Examen de Certificacin

Coffe-Break

Coffe-Break

Mensajeria Instantnea DUNDI Fin da Fin dia Fin dia

19:00 Fin da

Pgina web del Curso en Palosanto http://uio.palosanto.com Conectar con vuestro usuario y contrasea para tener acceso al material del curso: ccastillo jmartin dperez rlozano jsanchez abuendia Tsanchez Asato agouveia Password: elastix (pide cambio en primer login)

Lunes Introduccin a la Telefona Introduccin a la Voz sobre IP Linux para Administradores de Elastix Fundamentos de Asterisk Instalacin de Elastix Elastix Overview

Introduccin a la telefona

Antes de la telefona
Mtodos precarios para alcanzar mayores distancias como seales de humo o silvidos. Emisarios o mensajeros. A veces moran en el intento. Servicio postal. Telgrafo. Las comunicaciones no eran prcticas antes de la aparicin de la telefona.

Breve historia: Mediados siglo 19


En 1849 Antonio Meucci hace una demostracin de un dispositivo capaz de transmitir voz en La Habana. En 1854 hace otra en New York. En 1860 el alemn Johann Philipp Reis construye una especie de telfono basado en la idea original de Charles Bourseul. Un par de aos ms tarde Innocenzo Manzetti construye el esperado telgrafo parlante que l mismo haba visionado ya en 1844, pero no se interesa en patentarlo.

Ilustracin del telfono de Reis

Breve historia: Las patentes


En 1871 Meucci suscribi un documento de aviso de patente pero no pudo terminar el trmite por su condicin econmica. En 1875 Alexander Graham Bell logra patentar un aparato similar y es el primero en hacerlo. Pocas horas despus de Bell, otro inventor llamado Elisha Gray, tambin trata de patentar un invento similar. Bell y Gray entran en una batalla legal que finalmente Bell gana.

Breve historia: Bell prospera


Bell trata de vender su patente a Western Union pero no se interesan. Bell prospera por su propia cuenta. En 1886, ya existan ms de 150,000 abonados telefnicos en los Estados Unidos. En un principio Bell fue casi exclusivamente la nica compaa en explotar la tecnologa debido a sus patentes.

Breve historia: Desarrollo tecnologa


En 1891 se invent un telfono automtico que permita marcar directamente. En 1947, cientficos de Bell inventan el transistor y cambian el curso de la historia de la humanidad. En 1948 ganan el Premio Nobel por su trabajo. En los aos 60s se lanzan los primeros satlites de comunicaciones y las comunicaciones entre continentes se facilitan.

Principios transmisin de voz


Ondas acsticas que viajan a travs del aire a la velocidad del sonido, esto es a 1,244 Km/h (o 340 m/s). Se atenan rpidamente por lo que no llegan a grandes distancias. Es preferible transportar la seal de voz sobre ondas elctricas, cuya atenuacin se puede controlar sobre un cable conductor y se puede llegar a grandes distancias. La transformacin se hace mediante un dispositivo llamado micrfono.

La voz humana (1)


La voz ocupa un amplio espectro de frecuencias que van de graves a agudos en un rango aproximado de 20Hz a 20kHz. Para transmitir voz "entendible" no es necesario transmitir todas las frecuencias sino un rango mucho menor. Los telfonos comerciales solo transmiten un rango aproximado de 400Hz a 4kHz.

La voz humana (2)

El micrfono
Transforma la presin de las ondas mecnicas que viajan por el aire en ondas elctricas. El micrfono de carbn fue muy usado en telfonos analgicos. Contena granitos de carbn dentro de una cpsula. Micrfono electromagntico es muy usado hoy en da. Tambin el micrfono de electret es muy usado en telfonos.

Esquema micrfono dinmico

1) Ondas de voz, 2) Diafragma, 3) Bobina, 4) Ncleo ferromagntico, 5) Corriente inducida

Ancho de banda
Trmino muy ambiguo. Es una medida de la cantidad de informacin que podemos transmitir por un medio por unidad de tiempo. Una medida comn para expresar el ancho de banda es bits por segundo. Esta medida tambin equivale a bits/s, bps o baudios. Por ejemplo, se usa para medir la capacidad de un enlace de datos. Ej. Enlace a Internet. Lo podemos ver abreviado como BW por sus siglas en ingls.

Digitalizacin de voz (1)


Convertir la onda elctrica analgica en una seal digital. Es decir que pueda ser traducida a unos y ceros. En la prctica digitalizar la voz no es otra cosa que tomar muestras de la amplitud de la seal a intervalos regulares. La frecuencia de estos intervalos se calcula mediante el teorema de Nyquist. La voz digitalizada es ms inmune al ruido. La calidad es mejor.

Digitalizacin de voz (2)

Teorema de Nyquist
Establece la mnima frecuencia de muestreo para que la onda se pueda reconstruir en destino igual a la original. Nyquist slo determina una frecuencia mnima. Tericamente los valores muestreados deben ser exactos, pero en la prctica esto se redondea a un nmero finito de bits. Esta frecuencia mnima es 2 veces el ancho de banda que se quiere muestrear: fm 2 BW Por ejemplo, si en el telfono se transmite voz de 400Hz a 4,000Hz se necesitar mnimo el doble, es decir 8,000Hz para muestrear esa seal.

Redes orientada a circuitos (1)


Se establece un circuito dedicado o exclusivo para cada abonado. Una vez establecido el circuito, ste ya no puede ser usado por otros. Este tipo de redes es costoso. En cada circuito el retardo es constante, lo cual de cierto modo es una ventaja pues no hay jitter. Es el tipo de redes tpico de las empresas de telefona fija para con los abonados analgicos.

Redes orientadas a paquetes (1)


Por un mismo medio se puede transmitir simultneamente diferentes flujos de informacin. La informacin de los diferentes nodos se divide en paquetes, se intercalan y se envan por el mismo medio. El Internet es un ejemplo de red de paquetes. En Internet y redes IP en general los paquetes pueden llegar desordenados. Esto puede ocasionar problemas cuando se transmite voz.

Redes orientadas a paquetes (2)

La PSTN
La Red Pblica Telefnica o PSTN (por sus siglas en ingls) es esencialmente una red basada en circuitos. Tambin suele ser llamada RTPC (Red Telefnica Pblica Conmutada). Es la red donde estamos conectados los usuarios de telefona fija. Originalmente fue una red analgica pero actualmente es una red en su mayora digital; por tanto existen dos tipos de circuitos: analgicos y digitales.

Circuitos analgicos
Comnmente pares de cobre que llegan a los abonados del servicio telefnico y por donde se transmite la seal elctrica (analgica) de la voz. Por el mismo circuito se transmite la sealizacin necesaria para establecer, mantener y terminar una llamada. Tambin se transmite por aqu cierto voltaje de alimentacin de -48 Voltios.

Sealizacin analgica
Son seales analgicas que viajan por el mismo conductor que la seal de voz. Sirven para establecer, supervisar, mantener y terminar una llamada. Intercambian informacin entre el abonado y la oficina central (OC) Esisten 3 tipos: loop start, ground start y kewlstart, dependiendo de cmo se inicia una llamada. El ms comn es loop start.

S. Analgica en llamada tpica (1)


Se pueden distinguir 6 fases: colgado, descolgado, marcacin, conmutacin, timbrado, conversacin. 1) Colgado: La OC provee un voltaje DC de 48 Voltios y el telfono acta como un circuito abierto. Se conoce tambin como on-hook. 2) Descolgado: El telfono cierra el circuito poniendo una baja resistencia entre los conductores telefnicos. Cuado la OC se da cuenta enva tono de marcado.

S. Analgica en llamada tpica (2)


3) Marcacin: Puede ser por pulsos o por tonos. Los tonos son pares de frecuencias llamadas DTMFs. 4) Conmutacin: La OC analiza el nmero marcado y tratar de ubicar el circuito del nmero destino. 5) Timbrado: La OC enva una seal de ring al destino. Tambin notifica al origen con una seal de ring-back si est timbrando o seal de ocupado si el destino est hablando.

S. Analgica en llamada tpica (3)


6) Conversacin: Si el destinatario contesta se cierra el circuito telefnico.

Tonos tpicos en Sealiz. analgica


Tono
Tono de marcado (dial tone) Tono de ocupado

Caractersticas USA

Caractersticas Espaa

Dos tonos continuos de Un solo tono contnuo de 425Hz 350Hz y 440Hz mutiplexados. Dos tonos multiplexados de 480Hz y 620Hz intercalndose en 0.5 segundos de sonido y 0.5 segundos de silencio. Dos tonos multiplexados de 440Hz y 480Hz intercalndose en 2 segundos de sonido y 4 segundos de silencio. Igual que el ring tone. Un solo tono de 425Hz, intercalndose en 0.2 seg. de sonido y 0.2 seg. de silencio. Tambin existe otra cadencia de 0.5 seg. de sonido y 0.5 seg de silencio, pero es menos comn. Un solo tono de 425Hz, intercalndose en 1.5 seg. de sonido y 3 seg. de silencio. Tambin existe otra cadencia de 1 seg. de sonido y 4 seg. de silencio. Igual que el ring tone.

Tono de timbrado (ring tone)

Tono de ring back

Estos valores son referenciales y pueden diferir en la realidad dependiendo de la ciudad o compaa telefnica que ofresca cobertura, as tambin como de la legislacin vigente. En todo caso se pueden modificar a nivel de Elastix.

DTMFs
DTMF viene del ingls Dual-Tone MultiFrecuency. Son 2 tonos mezclados. Sirven para enviar dgitos o ciertos caracteres por la lnea analgica. Enviar dos tonos es ms seguro que enviar un solo tono.

Frecuencias DTMF
1209 Hz 697Hz 770Hz 852Hz 941Hz 1336Hz 1477Hz 1633Hz

1
GHI PRS

ABC JKL TUV oper

2 5 8 0

DEF MNO WXYZ

3 6 9 #

A B C D

4 7

El telfono analgico
No hace falta explicar qu es, todos lo hemos usado. Un componente al que le prestaremos especial atencin es al convertidor de 2 a 4 hilos. Este componente mezcla el audio del micrfono (seal de ida) con el audio del audfono (seal de venida). Esto es porque el tendido telefnico es de 2 hilos, si fuera de 4 no sera necesario. Este componente, tambin llamado convertidor 2H/4H, muchas veces es culpable de introducir eco en la conversacin.

Circuitos digitales
Los circuitos digitales son los que llevan informacin digital. Realmente transportan esa informacin digital sobre portadoras analgicas. Llevan informacin digital muchas veces multiplexada, lo cual optimiza recursos. Mejoran la seal vs. ruido. Esto se traduce en una mejor calidad de audio. La unidad ms estndar es el DS-0 que representa un canal de 64Kbit/s, luego de esto vienen los mltiplos de DS-0.

Circuitos T-carrier y E-carrier (1)


T-carrier (o portadora-T) fueron diseados como nomenclatura para circuitos digitales mutiplexados Fueron desarrollados por Bell Labs hace ms de cincuenta aos. T-carrier en USA, E-carrier en Europa y J-carrier en Japn. Los ms conocidos son los famosos T1 y E1.

Circuitos T-carrier y E-carrier (2)


Un T1 es un circuito digital compuesto de 24 DS0s y tiene una capacidad de 1.544 Mbit/s. Un E1 est compuesto por 32 DS-0s y trafica 2.048 Mbit/s. Existe muchos modelos de tarjetas telefnicas digitales compatibles con Asterisk en formato E1/T1 Luego de los T1s tenemos mltiplos mayores como T2, T3, T4 y T5.

SONET y circuitos pticos


SONET (Synchronous optical networking) fue desarrollado con el objetivo de contar con una nomenclatura similar a las T-carrier pero usando la tecnologa de fibra ptica. SONET utiliza mltiplos de T3 para sus anchos de banda y su circuito base es el llamado OC-1. Luego del OC-1 tenemos los OC-3, OC-12, OC24, OC-48, entre otros.

Sealizacin digital (1)


Al igual que en la comunicacin analgica es necesario sealizar la llamada para establecer, supervizar y colgarla. Los protocolos se pueden agrupar en dos grupos llamados CAS (Channel Associated Signaling) y CCS (Common Channel Signaling). Los protocolos CAS transmiten la informacin de sealizacin junto con la data. Los protocolos CSS transmiten la informacin de sealizacin en un canal distinto a la data.

Sealizacin digital (2)


Los protocolos CCS ofrecen algunas ventajas sobre los del tipo CAS. En el grupo CAS hay dos que nos interesan: Robbed bit y R2. En el grupo CSS se encuentra un importante protocolo llamado ISDN y es el que ms se usa en Asterisk sobre circuitos digitales.

ISDN (1)
ISDN (Integrated Services Digital Network) nos permite transmitir voz y datos simultneamente sobre pares telefnicos de cobre con calidad superior a las lneas telefnicas analgicas. Existen dos variaciones llamadas BRI y PRI. BRI (Basic Rate Interface) es para usuarios finales y est compuesto de 2 canales de datos de 64Kbit/s cada uno, ms uno de sealizacin de 16Kbit/s. En total 144Kbit/s. Los canales de datos se denominan canales B y los de sealizacin canales D.

ISDN (2)
PRI (Primary Rate Interface) se usa para empresas y contiene muchos canales B. En USA PRI tiene 23 canales tipo B y un canal D (23B+D), todos de 64Kbps, lo que da un total de 1,536Kbps. En Europa PRI tiene 30 canales tipo B y un canal D (30B+D), todos de 64 Kbps, lo que da un total de 1,984 Kbps.

Introduccin a la VoIP

Qu es VoIP?
La voz sobre IP o VoIP consiste en transmitir voz sobre protocolo IP. El concepto es muy amplio y existen muchas alternativas de protocolos. Es una verdadera sopa de protocolos. La voz se paquetiza para poder ser transmitida en una red IP. El protocolo IP no fue diseado especficamente para transportar voz.

VoIP: Una sopa de protocolos

Protocolo IP
Uno de los protocolos ms conocidos. Su nombre viene de Internet Protocol. Este protocolo ofrece un servicio sin garantas tambin llamado del mejor esfuerzo. Los paquetes pueden llegar en desorden y son reordenados en destino. Inclusive paquetes se pueden perder en el viaje. Este desorden y prdida de paquetes puede afectar la calidad de voz. Pese a todo se han encontrado maneras inteligentes de resolver estos problemas lo mejor posible.

Direccin IP (1)
Es un nmero nico que identifica a un host conectado a una red IP. Consta de 32 bits o 4 octetos. En la prctica se usa una notacin donde cada octeto se traduce a decimal y se separa con un punto. Un ejemplo de direccin IP es 130.5.5.26 Una direccin IP est compuesta por dos partes, una identifica al host y la otra identifica a la red a la cual pertenece dicho host. Para encontrar estas partes se utiliza otro parmetro llamado mscara de red.

Direccin IP (2)
La mscara de red es un nmero binario de 32 bits que tambin se representa en una notacin similar a una direccin IP. Empieza con unos y contina as hasta alcanzar un nmero de unos igual a la porcin de la direccin IP que corresponde a la red.

Direccin IP (3)
Por tanto en el ejemplo anterior obtenemos que la direccin IP 130.5.5.26 con mscara 255.255.255.0 pertenece a la red 130.5.5.0 La mscara anterior fue una mscara de 24 bits, ya que haban 24 unos. Una vez conocida la red donde se encuentra el host que queremos ubicar ya es ms fcil encaminar los paquetes IP a su destino. Los ruteadores almacenan tablas de rutas o reglas de cmo ubicar a otras redes.

Paquetes IP (1)
Un paquete IP contiene toda la informacin necesaria para llegar a destino. Se podra dividir en dos partes: cabecera y carga til. La cabecera es la que contiene la informacin referente al paquete. Esta cabecera disminuye ligeramente la cantidad de informacin que se puede transportar ya que ocupa espacio. La carga til puede encapsular a su vez otros protocolos como por ejemplo UDP o TCP.

Paquetes IP (2)

Cabecera de un paquete IP

Direccionamiento IP
Para que los paquetes lleguen a destino es necesario de enrutadores o ruteadores. Los ruteadores son dispositivos con tablas de rutas. La tabla de rutas consta de redes destino y para cada una la direccin IP del ruteador que permite alcanzarlas. El ruteador que nos permite salida a otras redes se denomina gateway. El paquete IP que llega al ruteador se examina para ver a qu red pertenece, se elije la ruta adecuada y se lo enva para all.

Protocolo TCP (1)


Es un protocolo de transporte. Se monta sobre protocolo IP para controlar errores en la transmisin y que los paquetes sean recibidos por las aplicaciones en el mismo orden en que fueron enviados. Para llevar a cabo su misin TCP necesita acarrear informacin adicional que agrega peso al paquete. Por eso no es muy recomendado para aplicaciones de tiempo real como la voz. Sin embargo s puede servir para la sealizacin de voz.

Protocolo TCP (2)


TCP introduce el concepto de puerto. Un puerto es una abstraccin que nos permite relacionar flujos de datos con servicios de red. Por ejemplo, el puerto 80 corresponde al servicio de Web o protocolo HTTP.

Protocolo UDP
UDP (User Datagram Protocol) es otro protocolo de transporte. Divide la informacin en paquetes llamados datagramas. Se diferencia con TCP en que a este protocolo no le importa si los datos llegan con errores o inclusive si llegan o no. Por lo mismo introduce poco peso extra al paquete IP por lo que lo hace ms idneo para aplicaciones de tiempo real como la voz.

Sealizacin de VoIP
Al igual que con la telefona tradicional es necesario sealizar las llamadas VoIP. Existen algunas alternativas aqu de protocolos de sealizacin como SIP, H323, MGCP, SIP, entre otros. Los ms populares sobre Asterisk son SIP e IAX. Con respecto a SIP o H323, muchas personas confunden y piensan que la voz se transmite por este protocolo pero es slo la sealizacin.

Transporte de VoIP
El transporte de la voz se lleva a cabo por el protocolo RTP. RTP significa Realtime Transport Protocol. El protocolo RTP es quien realmente transporta el audio codificado. RTP se transporta sobre UDP. En SIP el audio se transmite por RTP una vez que se haya negociado el puerto de red entre Elastix y el endpoint o telfono.

Relacin entre protocolos

Codificacin de la voz
Para transmitir la voz adecuadamente se la codifica. Es luego de codificarla que se la monta sobre RTP. La codificacin puede servir para disminuir la probabilidad de error o tambin para minimizar el ancho de banda utilizado. Para codificar se utiliza un codec, que es un algoritmo. Existen diferentes codecs. Cada uno con sus pros y cons.

G.711
Uno de los codecs ms usados de todos los tiempos. Proviene de un estndar ITU-T que fue liberado en 1972. Viene en dos sabores llamados -Law (usado en EEUU) y a-Law (usado en Europa). Ventaja 1: Buena calidad de voz ya que usa 64kbit/s, es decir un muestreo de 8 bits a 8kHz. Ventaja 2: Ya viene habilitado en Elastix, no hay que pagar por l. Desventaja: Ocupa mucho ancho de banda. No es recomendable para conexiones con poco BW.

G.729
Tambin un codec muy popular. Licenciado por Intel. Ventajas: Una muy grande y es que comprime muy bien la voz sin deterioro significativo de la calidad. Desventaja 1: Se licencia por canal de voz. Aprox. $10 por canal. Desventaja 2: Pese a que no deteriora significativamente la voz la calidad es menor que si se usa G.711.

GSM
Tambin bueno comprimiendo voz. Est relacionado con el estndar de telefona celular GSM(Global System for Mobile communications), de all su nombre. Comprime muy bien la voz con una calidad similar a celular. Viene habilitado por defecto en Elastix. Bueno como alternativa a G.729 aunque su calidad de audio es ligeramente inferior a G.729.

Sobrecarga de protocolos (1)


Los diversos protocolos envian data adicional a la voz. Tenemos a Ethernet, IP, UDP, RTP. Eso hace que el ancho de banda real para transmitir voz sea mayor al del codec. Por ejemplo, para transmitir voz usando G.711 en teora deberamos usar 64Kbps (peso del codec) pero en realidad usamos 95.2Kbps de BW. En otros codecs ms compresores la sobrecarga es incluso ms significativa (porcentualmente hablando).

Sobrecarga de protocolos (2)

Sobrecarga de protocolos (3)


Calculemos el ancho de banda para G.711 Bytes transmitidos cada 20ms
38 + 20 + 12 + 8 + 160 = 238 bytes

Bits transmitidos cada 20ms


238 bytes * 8 bits/byte = 1904 bits

Bits transmitidos cada segundo


1904 bits/frame * 50 frames/seg. = 95,200 bits/segundo = 95.2Kbps!

Comparativa Codecs
Tabla de ancho de banda real para algunos codecs (usando Ethernet):
Codec G.711 G.726 * iLBC * GSM G.729A BW codec 64 kbps 32 kbps 15.2 kbps 13 kpbs 8 kpbs BW real (ethernet) 95.2 kbps 63.2 kbps 46.4 kbps 43.7 kbps 39.2 kbps

* Para estos cdec, otros anchos de banda tambin pueden ser usados.

Linux para Administradores Elastix

Introduccin

GNU/Linux es un sistema operativo de software libre Asterisk y Elastix funcionan sobre Linux Para administrar una central Elastix no es necesario ser experto en Linux pero es muy til conocer del tema

Lnea de Comandos en Linux

Es la interfase de texto entre el usuario y el sistema operativo Se puede acceder localmente Se puede acceder remotamente a travs del protocolo ssh

La informacin viaja encriptada

Ejemplo terminal linux de Elastix

Comandos Bsicos
Comando ls ls -la cd cd .. cat pwd cp mv rm tail -f archivo mkdir tar zxvf archivo.tar.gz top find vim ifconfig ps -aux reboot Descripcin Lista los archivos en el directorio actual Lista los archivos y sus atributos Cambia de directorio Cambia al directorio padre Muestra el contenido de un archivo en la pantalla Muestra la ruta actual Copia un archivo o grupo de ellos Mueve o renombra un archivo Elimina un archivo Muestra las ltimas lneas de un archivo Crea un directorio Descomprime un archivo .tar.gz Muestra un reporte en tiempo real de los procesos que se ejecutan en el sistema. Puede ser ordenado por consumo de memoria o CPU. Muy til para diagnstico Permite buscar archivos Programa para ver y editar archivos de texto plano Muestra informacin de las interfaces de red y permite modificarlas temporalmente Muestra un reporte de los procesos que se estn ejecutando en el servidor Reincia el equipo

Sistema de Archivos

Estructura de rbol de directorios Todos empiezan en la raiz -> / Directorios importantes en Elastix

/etc/asterisk: guarda la configuracin de Asterisk /var/www/html: se encuentra Elastix /var/lib/mysql: las bases de datos de mysql /var/log: los archivos de log

Permisos

Todo archivo pertenece a un usuario y a un grupo Los permisos son 3 niveles: usuario, grupo, otros Los permisos pueden ser de escritura(r), lectura(w) y ejecucin(x) Ejemplo: rwxrw-rw-rw juan elastix archivo

En este caso el archivo pertenece a juan y al grupo elastix. Los permisos para juan so de rwx, grupo elastix rw y otros rw

Permisos: Notacin Octogonal

Los permisos se pueden representar com nmeros r=4, w=2 y x=1 Ejemplos:

755=rwxrw-rw600= rw------644=rw-r--r--

RPM

Forma tradicional de instalar paquetes Se usa para instalar y desinstalar paquetes


Instalar: rpm -ivh paquete.rpm Desinstalar: rpm -e paquete Todos paquetes instalados: rpm -qa Todos los paquetes que contenga asterisk: rpm -qa | grep asterisk

Consultas sobre paquetes instalados


Rpm tiene problemas de dependencias

YUM

Maneja la instalacin de paquetes desde repositorios Los repositorios pueden estar en Internet o en la lan No existe problemas de dependencias Ejemplos de uso:

Instala paquete: yum install paquete Borra paquete: yum remove paquete Actualiza paquete: yum update paquete Actualiza todo el sistema operativo: yum update

Ejercicios

Realizar el laboratorio 3.1

Asterisk Essentials

Qu es Asterisk?
Es un sistema de telefonia basado en software libre que proporciona todas las funcionalidades que se espera de una central telefnica (PBX). Esto hace posible conectar un nmero determinado de telfonos para hacer llamadas entre s y conectar a un proveedor de VoIP PSTN, asi tambien proveedores PSTN de telefonia digital y analoga usando hardware especializado, esto es tarjetas telefonicas FXO/FXS, ISDN pri/bri, entre otras.

Breve historia de Asterisk


Asterisk fue creado por Mark Spencer quien es su principal desarrollador. Al ser Software libre, tiene tambien una amplia comunidad de desarrolladores que contribuyen a corregir errores y aadir novedades y funcionalidades. Mark haba creado en 1999 la empresa "Linux Support Services" con el objetivo de dar soporte a usuarios de Linux. Para ello necesitaba una centralita telefnica, pero ante la imposibilidad de adquirirla dados sus elevados precios, decidi construir una con un PC bajo GNU/Linux, utilizando lenguaje C.

Funcionalidad de Asterisk (1)


Asterisk puede funcionar como un sistema ip nativo o uno hibrido, manejando el ruteo de llamadas, interconectando protocolos y transcodificando medios. Tiene muchas caractersticas internas como buzn de voz, conferencias, IVRs, CDRs, distribucin automtica de llamadas, parqueo, tranferencias, captura, musica en espera, entre otras.

Funcionalidad de Asterisk (2)


Asterisk tambien soporta multiples protocolos y codecs
PROTOCOLOS
IAX (Inter-Asterisk Exchange) H.323 SIP (Session Initiation Protocol) MGCP (Media Gateway Control Protocol SCCP (Cisco Skinny)

CODECS
ADPCM G.711A/U (A-Law y -Law) G.722 G.723.1 G.726 G.729 (con una licencia comercial) GSM iLBC Linear LPC-10 Speex

Funcionalidad de Asterisk (3)


Asterisk soporta diferentes sealizaciones y protocolos para la interconexion con sistemas de telefonia tradicionales.
Sealizacion
E&M E&M Wink Feature Group D FXS FXO GR-303 Loopstart Groundstart Kewlstart Soporte MF y DTMF Robbed-bit Signaling (RBS) MFC-R2 (Atravez de parches al codigo)

Protolos PRI
4ESS BRI (ISDN4Linux) DMS100 EuroISDN Lucent 5E National ISDN2 NFAS

Encendido y apagado de Asterisk


Asterisk cuenta con scripts ubicados en /etc/rc.d/init.d/asterisk y podemos iniciarlo con el comando /etc/init.d/asterisk start y detenerlo con /etc/init.d/asterisk stop. Sin embargo en elastix es recomendable manejar su inicio o apagado con el script amportal, mismo que a su vez llama a otros scripts que inician ademas otros servicios necesarios para ciertas funcionalidades Su uso es: amportal start amportal stop inicia asterisk detiene asterisk

Estructura de directorios de *

Mdulos de Asterisk
Asterisk utiliza mdulos para extender su funcionalidad. Estos mdulos residen en la carpeta /usr/lib/asterisk/modules/ y son archivos con extensin .so Es posible controlar estos modulos desde el archivo modules.conf, en la carpeta /etc/asterisk; este archivo controla cuales modulos se cargan o no (load, noload). Ademas puede controlar el orden en que se cargan con la opcion preload.

Mdulos de Asterisk
Por defecto en elastix se cargan todos los modulos que estan en /usr/lib/asterisk/modules/ a no se que sea especificado en el archivo modules.conf que no lo haga Ejemplos en el archivo modules.conf:
noload => chan_modem.so load => format_ogg_vorbis.so preload => res_config_mysql.so modulo ; Hace que no se carge el modulo. ; Hace que se carge el modulo. ; Hace que se carge primero ese

Zaptel / DAHDI
Dahdi es basicamente un conjunto de drivers para controlar hardware telefonico, estas tarjetas son como cualquier otra tarjeta de expansion de una computadora puede usar bahias PCI, puertos USB, etc. Dahdi o Zaptel tiene su propio archivo de configuracion /etc/zaptel.conf

Historia del proyecto Zaptel


En el ao 2000 Jim Dixon lanz el proyecto Zaptel bajo licencia GPL cuyo nombre era una abreviacin de Zapata Telephony Project. Lo nombr as en honor a Emiliano Zapata, hroe de la revolucin mexicana. Inicialmente Zaptel contena drivers para tarjetas Tormenta fabricadas por Zapata Telecom, pero pronto Digium comenz a mejorar los drivers y extender el soporte para nuevos modelos de hardware, entre ellos los que el mismo Digium fabricaba. Pronto Digium se convirti en el principal desarrollador de Zaptel.

Comunicacin Asterisk con Zaptel


Asterisk interactua con dahdi mediante el modulo chan_zap.so, mismo que se controla a travs del archivo dahdi.conf. En este archivo se mapean los puertos fisicos hacia canales tipo Zap, estos canales son usados por asterisk

Archivos de configuracin de *
Los archivos se encuentran en /etc/asterisk extensions.conf sip.conf iax.conf zapata.conf
Reside el plan de marcado, los archivos adicionales empiezan con extensions_. Se definen los endpoints SIP. Se definen los endpoints IAX. Archivo de configuracin para canales ZAP, se troncalizan los canales.

Plan de marcado (dialplan)


El plan de marcado se configura en el archivo extensions.conf, existen otros archivos que contienen porciones del plan de marcado: extensions_additional.conf: el plan de marcado variable escrito por FreePBX, los cambios realizados manualmente se pierden cunado FreePBX sobreescribe este archivo. extensions_custom.conf: el plan de marcado definido por el usuario, no se pierden los cambios que se realizan manualmente. Todos los archivos son de texto plano en formato definido por Asterisk. Se dividen en secciones llamadas contextos.

Dialplan: Contextos

Agrupan la lgica del plan de marcado. Pueden incluir otros contextos con la clasula include. El plan de marcado se agrupa en contextos. Se definen como agrupadores u organizadores del plan de marcado. Deben tener un nombre nico que va entre los smbolos [ ]. Existen dos contextos reservados [globals] y [general].

Dialplan: Instrucciones

Son lneas del plan de marcado. Son instrucciones llamadas extensiones. Tienen la siguiente sintaxis: Una lnea del plan de marcado es una serie de lgica del plan de marcado. Se puede crear la lgica necesaria para un marcado especfico.

exten => nombre_extension, prioridad, aplicacin

Dialplan: Instrucciones (Nombre_extension)


Es un identificador nmerico de la extensin. Se lo puede asociar al nmero de telfono. Existe una extensin particular s. La extensin s significa cualquier extensin. Esta extensin s se usa cuando el usuario que llama no ha presionado el nmero de extensin. Por ejemplo, cuando est en el IVR de bienvenida.

Dialplan: Instrucciones (Prioridad)


Indica el orden de ejecucin de una instruccin. La primera prioridad debe ser siempre 1 porque Asterisk busca esta prioridad cuando lee un contexto para ejecutarlo. Existe una prioridad especiales n. La prioridad n indica que a la prioridad de la instruccin anterior se le debe sumar uno. Sirve para facilitar la estructura del plan de marcado.

Dialplan: Instrucciones (Aplicacin)

Las aplicaciones de una plan de marcado equivalen a las funciones de un lenguaje de programacin. Permiten realizar acciones programadas en el plan de marcado. Las aplicaciones permiten realizar ejecuciones entre contextos. Pueden recibir parmetros para su ejecucin.

Dialplan: Variables (1)


Las variables en el plan de marcado equivalen a las variables de un lenguaje de programacin. Son abstracciones que almacenan informacin de naturaleza variable. Tiene la siguiente sintaxis: ${NNNN} donde NNNN es el nombre de la variable

Dialplan: Variables (2)


Pueden ser de tres tipos:

Globales: Se definen en la seccin [globals] del archivo extensions.conf, pueden ser referenciadas desde cualquier lugar del plan de marcado. De canal: Pueden ser definidas usando el comando (o aplicacin) Set. Predefinidas: Asterisk administra algunos nombres de variables con nombres predefinidos ${CALLERID}, $ {CALLERIDNAME}, ${CALLERIDNUM}, ${CHANNEL}, $ {CONTEXT}, ${EPOCH}, ${EXTEN}, ${SIPUSERAGENT}, ${UNIQUEID}, que guardan cierta informacin dependiendo del comportamiento de la llamada u otros factores.

Aplicaciones (1)
Answer Sintaxis: Answer ([delay])

Contesta un canal si este est timbrando, recibe el parmetro delay que indica el tiempo en milisegundos antes de contestar.

Background Sintaxis: Background(filename1[&filename2...][| opciones[|langoverride][|context]])

Reproduceun listado de archivos mientras Asterisk contina ejecutando el plan de marcado. Aplicacin usada para reproducir el mensaje de IVR.

Aplicaciones (2)
Playback Sintaxis: Playback(filename1[&filename2...][,options])

Reproduce archivos de audio, a diferencia de Background, no permite a Asterisk tener el control mientras no acabe de reproducir los archivos.

Hangup Sintaxis: Hangup()

Cuelga el canal y retorna -1.

Aplicaciones (3)
Goto Sintaxis: Goto([[context|]extension|]priority)

Salta la ejecucin del plan de marcado a un contexto, extensin o prioridad indicada. Si se pasa un solo parmetro se entiende que es una prioridad del mismo contexto.

Dial Sintaxis: Dial(type/identifier, timeout, options, URL)

Marca un canal especificado y lo vincula con el canal corriente.

Asterisk CLI (1)


Es el nombre de la consola de Asterisk. Lnea de comandos para controlar Asterisk directamente. Para ingresar a la consola se ejecuta el comando asterisk -r Cuando se obtiene un prompt CLI>, se pueden ejecutar comandos de Asterisk Provee informacin en tiempo real de la actividad de Asterisk.

Asterisk CLI (2)

Permite controlar el grado de detalle de la informacin, para ello se usan los comandos:

Core set debug N Core ser verbose N

Mientras mas alto sea el nivel de las variables debug N y verbose N mas detallada ser la informacin mostrada. Estos comandos se dene utilizar para tareas de diagnstico.

Laboratorio

Realizar laboratorios 4.1, 4.2, 4.3 y 4.4

Instalando Elastix

Instalando desde CD
Es muy recomendable instalar la ltima versin estable de Elastix disponible en la pgina del proyecto. Para realizar la instalacin desde CD, debemos bajarnos el archivo de imgen (con extensin iso), y grabarlo en un disco en blanco. Es importante grabar el iso usando software especializado para este propsito, muchas veces se cae en el error de descomprimir la imagen y copiar la estructura de directorios resultantes en un disco, con lo cual NO obtendremos un CD de arranque.

Instalando desde CD
Insertamos el CD de instalacin en la unidad y procedemos a encender el equipo. Es importante verificar que el computador est configurado para arrancar desde CD. Esto lo podemos verificar desde el BIOS. El instalador de Elastix aparecer en nuestra pantalla.

Para realizar una instalacin estndar basta con presionar ENTER

Instalando desde CD

Advertencia: La instalacin estndar borrar completamente el disco duro.

Instalando desde CD
El instalador nos pide seleccionar el esquema del teclado

Instalando desde CD
Seleccionamos la zona horaria adecuada.

Instalando desde CD
Ingresar la contrasea del superusuario root

Instalando desde CD
Esperar hasta que finalice la instalacin automtica de paquetes

Instalando desde CD
Al reiniciar el sistema, podemos ingresar con el usuario y contrasea de root

Inst. sobre CentOS/Red Hat


Debido a que la distro base sobre la cul est construida Elastix es CentOS, es posible instalar Elastix sobre un servidor que tenga ya instalado Red Hat, o su clon CentOS. En la seccin descargas del sitio www.elastix.org se encuentra un iso llamado CentOS2Elastix para este fin. Algo que se debe tomar muy en cuenta es que zaptel est compilado contra la versin del kernel de Elastix, que actualmente es la 2.6.18-53. Si la versin del Kernel de RedHat o Centos a nuestra disposicin es ms nueva, necesitamos hacer un downgrade, caso contrario zaptel no funcionar.

Inst. sobre CentOS/Red Hat


En caso de hacer un downgrade del kernel lo podemos hacer con el siguiente comando: rpm -ivh --oldpackage kernel-2.6.18-53.1.19.el5.i686.rpm Luego arreglar la configuracin del gestor de arranque GRUB y reiniciar el equipo antes de proseguir. A continuacin montamos el CD con la imagen descargada anteriormente o montamos directamente el archivo iso. Nos dirigimos al directorio donde est montado el instalador y lo ejecutamos: ./install

Instalacin con soft RAID


RAID hace referencia a utilizar varios discos duros en arreglo, principalmente para ofrecer redundancia de la informacin. Dependiendo el nmero de discos que se disponga y la forma en la que se configure el arreglo, se pueden obtener diferentes niveles de RAID. El que se ver a continuacin es de nivel 1, en el que intervienen dos discos duros y uno es espejo del otro.

Instalacin con soft RAID


Es preferible tratar de hacer arreglos RAID usando el hardware, en la medida de lo posible. Si nuestro servidor no tiene una controladora de discos que permita crear el arreglo podemos recurrir a hacerlo mediante el sistema operativo, sacrificando algo de rendimiento en pro de la redundancia. Esta tcnica es conocida como soft RAID. Es importante recalcar que el RAID en hardware espeja discos, a diferencia del RAID en software que espeja particiones.

Instalacin con soft RAID


Para poder particionar el disco usando soft RAID necesitamos ingresar advanced en la pantalla de bienvenida de la instalacin.

Instalacin con soft RAID


El instalador nos pide seleccionar el esquema del teclado

Instalacin con soft RAID


El instalador detectar ambos discos y nos pedir el esquema a utilizar. En nuestro caso seleccionaremos la opcin Create custom layout

Instalacin con soft RAID


Debemos crear las particiones de la siguiente forma: Se recomienda crear una particin /boot fuera del RAID (del tipo ext3) Si por ejemplo queremos crear una particin /var de 20 GB espejada, creamos una particin de 20 GB en cada disco, del tipo software RAID en lugar de usar ext3 (importante que sean del mismo tamao) Se recomienda dejar la memoria swap fuera del raid, no necesitamos espejar la memora cach A continuacin una lmina con una configuracin tpica

Instalacin con soft RAID

Instalacin con soft RAID


Para configurar el espejo de las particiones, una vez que terminamos de definir las particiones en ambos discos, debemos seleccionar la opcin RAID del particionador. En esta pantalla nos permite seleccionar las particiones que vamos a espejar, as como el sistema de archivos a emplear y punto de montaje. Incluso se pueden definir particiones spares, o de reserva, que sern usadas cuando falle alguna de las particiones del arreglo

Instalacin con soft RAID


Es importante seleccionar pares de particiones en el cuadro RAID Members

Instalacin con soft RAID


Al finalizar aparece sobre las demas particiones la configuracin del RAID. Cuando hayamos finalizado seleccionamos OK para continuar normalmente con la instalacin

Cambios en Inst. Barcelona (1)


A fin de adecuar los equipos a las necesidades de la clase, ejecutaremos los siguientes pasos sobre la instalacin completada: - rm /etc/yum.repos.d/CentOS-Base.repo - cd /etc/yum.repos.d/ - wget http://10.13.13.157/CentOS-Base.repo - yum install dbus-x11 xorg-x11-server xorg gdm - yum install gnome-session gnome-applets gnometerminal gnome-mount-nautilus-properties nautilus - yum install wireshark wireshark-gnome ekiga gdb

Cambios en Inst. Barcelona (2)


- cd /usr/src - wget http://10.13.13.157/sipp-3.1-2.el5.i386.rpm - rpm -Uvh sipp* Por ltimo cargaremos el mdulo de call center en nuestro equipo: - wget http://10.13.13.157/call_center_1.4-1.tar.gz Reboot a nuestros equipos, arranque en entorno grfico.

Laboratorios

Realizar el Laboratorio 5.1

Elastix Overview

Qu es Elastix?
Una distro de servidor de comunicaciones unificadas: telefona, fax, IM, email, colaboracin. Es Software Libre Se distribuye como una imagen ISO para quemar en CD. Incluye instalador Basada en Linux (CentOS), Asterisk, FreePBX, Hylafax, Postfix y Openfire; adems de otros paquetes de cdigo abierto. Rpido crecimiento, casi 400,000 descargas a Enero de 2009.

Servidor de Comunicaciones Unificadas?


Integracin de diferentes sistemas de comunicaciones. Por ejemplo, el telfono es contestado por Asterisk (telefona) y en caso de resultar un documento de fax le pasa el control a Hylafax (FAX) quien recibe el documento y lo enva por email a travs de Postfix a su destinatario. Mejora la productividad: ahorro de tiempo, papel, mejor acceso a la informacin compartida.

Esquema general

Breve historia del proyecto


Liberado en Marzo de 2006 por la compaa PaloSanto Solutions de Ecuador. Inicialmente no era una distro sino una interfase de reportacin para llamadas de Asterisk En Diciembre de 2006 se lanza la primera versin en formato distro. Gan popularidad por su usabilidad. En 2007 y 2008 el proyecto estuvo nominado a los premios CCA de SourceForge. Actualmente una de las distros basadas en Asterisk lider del mercado.

Licenciamiento de Elastix
Elastix es software libre licenciado bajo GPL versin 2: http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt Esto quiere decir que puede copiar, distribuir y modificar el software libremente. No existen versiones cerradas ni doble licenciamiento (como es el caso de Asterisk o MySQL). Por si todava existe la duda: Elastix puede ser descargado sin costo alguno.

Interfase Web de administracin (1)

Interfase Web de administracin (2)


Men System
Dashboard System Info Network
Network parameters DHCP server

Shutdown Hardware Detection Updates


Packages Repositories

User management
Groups Users Group permission

Backup/Restore Preferences
Language Date/Time Themes

Load Module

Interfase Web de administracin (3)


Men PBX
PBX Configuration Flash Operator Panel Voicemails Monitoring Echo Canceller Endpoint Configurator Conferences Extension Batch Tools
Asterisk CLI File Editor

Interfase Web de administracin (4)


Men FAX
Virtual Fax List New Virtual Fax Fax Master Fax Clients Fax Visor Email Template

Men Email
Domains Accounts Relay Webmail

Men IM
Openfire

Interfase Web de administracin (5)


Men Reportes
Reporte CDRs Channels Usage Billing
Rates Billing Report Destination Distribution Billing Setup

Men Extras
vTigerCRM Calling Cards Downloads SugarCRM

Men Agenda
Calendar Address Book Recordings

Asterisk Logs

Interfase Web de administracin (6)

www.elastix.org
Sitio Web oficial del proyecto. Mantenido por PaloSanto Solutions y la comunidad Elastix. Aqu podemos encontrar:
Foros Wiki (Documentacin) Chat en vivo IRC Suscripcin a listas de correo Links a descargas entre otra informacin til

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