directorios asterisk

24
Directorios Usados por Asterisk Asterisk utiliza varios directorios en el sistema Linux para administrar los diferentes aspectos del sistema. /etc/asterisk/ Contiene los archivos de configuración del sistema. /usr/lib/asterisk/modules/ Contiene todos los módulos cargables de Asterisk (códecs, formatos y canales) /var/lib/asterisk/ Contiene la base de datos local de Asterisk. Incluye los subdirectorios: agi-bin/ Contiene scripts personalizados. firmware/ Contiene varios firmware de dispositivos compatibles con Asterisk. images/ Aplicaciones que soportan imágenes gráficas buscan dicho

Upload: amber-ward

Post on 12-Aug-2015

98 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Directorios Asterisk

Directorios Usados por Asterisk

• Asterisk utiliza varios directorios en el sistema Linux para administrar los diferentes aspectos del sistema.

/etc/asterisk/

Contiene los archivos de configuración del sistema.

/usr/lib/asterisk/modules/

Contiene todos los módulos cargables de Asterisk (códecs, formatos y canales)

/var/lib/asterisk/

Contiene la base de datos local de Asterisk. Incluye los subdirectorios:

agi-bin/

Contiene scripts personalizados.

firmware/

Contiene varios firmware de dispositivos compatibles con Asterisk.

images/

Aplicaciones que soportan imágenes gráficas buscan dicho directorio.

Page 2: Directorios Asterisk

Directorios Usados por Asterisk (cont.)

keys/

Asterisk puede utilizar sistemas de llaves pública/privada para autenticación.

mohmp3/

Cuando se configura Music on Hold (Música en Espera), las aplicaciones buscan dicho directorio.

sounds/

Todos los prompts de voz para Asterisk residen en dicho directorio.

/var/spool/asterisk/

Contiene varios subdirectorios:

dictate/

Ubicación por defecto donde la aplicación Dictate() busca archivos.

meetme/

Ubicación donde la aplicación MeetMe() guarda las grabaciones de conferencias.

system/

Es usado para almacenar datos temporalmente.

Page 3: Directorios Asterisk

Directorios Usados por Asterisk (cont.)

voicemail/

Los correos de voz y saludos con almacenados en dicho directorio.

/var/run/

Contiene la información de procesos (process ID – PID) para todos los procesos activos en el sistema, incluyendo Asterisk.

/var/log/asterisk/

Directorio donde Asterisk almacena la información de eventos.

/var/log/asterisk/cdr.csv/

Usado para almacenar los CDRs (Call Detail Records) en formato de valores separados por coma (CSV).

Page 4: Directorios Asterisk

Configuración Inicial de Asterisk

• Después de haber completado todos los pasos previos, debemos tener un sistema Asterisk funcionando.

• Aún no se pueden realizar llamadas, debido a que no se han creado aún ningún canal.

• Realizaremos la configuración de tres canales: un canal FXO, un canal PRI-E1 y un canal SIP.

Page 5: Directorios Asterisk

Trabajando con Archivos de Configuración

• Editaremos los siguientes archivos:

system.conf

Configuración de bajo nivel para las interfaces de hardware.

chan_dahdi.conf

Configuración de la interacción entre Asterisk y el hardware.

extensions.conf

El plan de marcación, que hará que se puedan realizar las llamadas.

sip.conf

Configuración del protocolo SIP.

iax.conf

Configuración del protocolo IAX.

Page 6: Directorios Asterisk

Trabajando con Archivos de Configuración (Cont.)

• Crearemos un nuevo archivo extensions.conf, e insertaremos las siguientes líneas:

[globals]

[general]

[default]

[incoming_calls]

[internal]

[phones]

include => internal

Para actualizar los últimos cambios, ejecutar:

*CLI> dialplan reload*CLI> dialplan show

Page 7: Directorios Asterisk

Configurando el Dialplan

• Expandimos el dialplan iniciado en el paso previo. No olvidar de ejecutar dialplan reload desde la consola Asterisk.

[globals]

[general]

[default]

exten => s,1,Verbose(1|Unrouted call handler)

exten => s,n,Answer()

exten => s,n,Wait(1)

exten => s,n,Playback(tt-weasels)

exten => s,n,Hangup()

Page 8: Directorios Asterisk

Configurando el Dialplan (Cont.)

[incoming_calls]

[internal]

exten => 500,1,Verbose(1|Echo test application)

exten => 500,n,Echo()

exten => 500,n,Hangup()

[phones]

include => internal

Page 9: Directorios Asterisk

Canales FXO y FXS

• La diferencia entre un canal FXO y un canal FXS es simplemente cual de los extremos de la conexión provee el tono de marcación. Un puerto FXO no genera tono de marcación, acepta uno. Un puerto FXS provee tanto tono de marcación y voltaje de timbrado para alertar de una llamada entrante. Ambas interfaces proveen comunicación bidireccional (transmitidas y recibidas en ambas direcciones simultáneamente).

Page 10: Directorios Asterisk

Canales FXO y FXS (Cont.)

• Si el servidor Asterisk tiene un puerto FXO compatible, se puede conectar una línea telefónica para ser usada para realizar y recibir llamadas telefónicas. Por el contrario, si el servidor Asterisk tiene un puerto FXS compatible, se puede conectar un teléfono para poder realizar y recibir llamadas telefónicas.

• Los puertos son definidos en la configuración por la señalización que utilizan, es decir, lo opuesto al tipo de puerto físico que son. Por lo tanto, un puerto FXO físico será definido en la configuración con señalización FXS, y un puerto FXS será definido con señalización FXO.

Page 11: Directorios Asterisk

Configuración de un canal FXO para conexión a la PSTN

• Empezaremos configurando un canal FXO.• El archivo /etc/dahdi/system.conf es usado para

configurar el hardware. La siguiente configuración mínima define un puerto FXO con señalización FXS:

fxsks=1

echocanceller=oslec,1

loadzone=us

defaultzone=us

Posibles tipos de señalización: Loop start (ls), Ground start (gs) o Kewlstart (ks); loadzone contiene configura el conjunto de información acerca de los diferentes sonidos que hace un sistema telefónico en un país particular: tono de marcación, ciclos de timbrado, tono de ocupado, otros)

Page 12: Directorios Asterisk

Configuración de un canal FXO para conexión a la PSTN (Cont.)

• Se puede verificar que el hardware y puertos fueron cargados y configurados correctamente, con el uso del programa dahdi_cfg:

dahdi_cfg -vv

DAHDI Tools Version - 2.4.0

DAHDI Version: 2.4.0

Echo Canceller(s):

Configuration

======================

Channel map:

Channel 01: FXS Kewlstart (Default) (Echo Canceler: oslec) (Slaves: 01)

1 channels to configure.

Page 13: Directorios Asterisk

Configuración de un canal FXO para conexión a la PSTN (Cont.)

• Asterisk utiliza el archivo chan_dahdi.conf para determinar las configuraciones del hardware de telefonía instalado en el sistema. El archivo chan_dahdi.conf controla las diferentes características y

funcionalidades asociados a los canales de hardware.[trunkgroups]

[channels]

usecallerid=yes

hidecallerid=no

callwaiting=no

threewaycalling=yes

transfer=yes

echocancel=yes

echotraining=yes

context=incoming

signaling=fxs_ks

channel => 1

Page 14: Directorios Asterisk

Configuración de un canal FXO para conexión a la PSTN (Cont.)

• Usaremos la aplicación Echo() para verificar que las comunicaciones bidireccionales para el canal estén trabajando. Agregaremos las siguientes líneas al archivo: /etc/asterisk/extensions.conf

[incoming]

exten => s,1,Answer()

exten => s,n,Echo()

• Llamando

Ahora que el canal FXO está configurado y conectada una línea telefónica, se puede llamar al número PSTN.

Page 15: Directorios Asterisk

Configuración de un canal PRI-E1 para conexión a la PSTN

• Empezaremos configurando un canal PRI-E1.• El archivo /etc/dahdi/system.conf es usado para

configurar el hardware. La siguiente configuración mínima define un puerto PRI-E1:

span=1,1,0,ccs,hdb3,crc4

bchan=1-15,17-31

echocanceller=mg2,1-15,17-31

hardhdlc=16

loadzone=us

defaultzone=us

Page 16: Directorios Asterisk

Configuración de un canal FXO para conexión a la PSTN (Cont.)

• Se puede verificar que el hardware y puertos fueron cargados y configurados correctamente, con el uso del programa dahdi_cfg:

dahdi_cfg -vv

DAHDI Tools Version - 2.3.0

DAHDI Version: 2.3.0.1

Echo Canceller(s): MG2

Configuration

======================

SPAN 1: CCS/HDB3 Build-out: 0 db (CSU)/0-133 feet (DSX-1)

Channel map:

Channel 01: Clear channel (Default) (Echo Canceler: mg2) (Slaves: 01)

Channel 02: Clear channel (Default) (Echo Canceler: mg2) (Slaves: 02)

Channel 03: Clear channel (Default) (Echo Canceler: mg2) (Slaves: 03)

…………………………….

…………………………….

Page 17: Directorios Asterisk

Configuración de un canal PRI-E1 para conexión a la PSTN (Cont.)

• Asterisk utiliza el archivo chan_dahdi.conf para determinar las configuraciones del hardware de telefonía instalado en el sistema. El archivo chan_dahdi.conf controla las diferentes características y funcionalidades asociados a los canales de hardware.

[trunkgroups]

[channels]

usecallerid=yes

hidecallerid=no

callwaiting=no

threewaycalling=yes

transfer=yes

echocancel=yes

echotraining=yes

switchtype=euroisdn

context=incoming

signalling=pri_cpe

channel => 1-15,17-31

Page 18: Directorios Asterisk

Configuración de un canal PRI-E1 para conexión a la PSTN (Cont.)

• Usaremos la aplicación Echo() para verificar que las comunicaciones bidireccionales para el canal estén trabajando. Agregaremos las siguientes líneas al archivo: /etc/asterisk/extensions.conf

[incoming]

exten => s,1,Answer()

exten => s,n,Echo()

• Llamando

Ahora que el canal PRI-E1 está configurado y conectado a un circuito digital, se puede llamar al número PSTN.

Page 19: Directorios Asterisk

Configuración de un canal SIP para conexión a un proveedor VoIP

• Con el advenimiento de la telefonía por Internet, han surgido varias compañías de telefonía basadas en Internet. Muchos de éstos proveedores permiten conectar un sistema Asterisk a sus redes. La siguiente configuración en el archivo /etc/asterisk/sip.conf permitiría conectar a un proveedor de Telefonía IP:

[identificador_único]

host=direccion_ip_proveedor

secret=palabra_secreta

type=friend

context=incoming

insecure=invite

fromuser=identidicador_único

disallow=all

allow=códec_usado

dtmfmode=rfc2833

Page 20: Directorios Asterisk

Configuración de un canal SIP para conexión a un proveedor VoIP (Cont.)

• Ahora necesitamos configurar un parámetro adicional en la sección [general] del archivo sip.conf: register. register le dirá al proveedor donde enviar las llamadas cuando una llamada en recibida para nosotros.

• Los parámetros de register toma la siguiente forma:

register => nombre_usuario:palabra_secreta@<nombre_o_ip_proveedor>

• Se puede verificar el estado del registro en cualquier comando desde la consola de Asterisk:

*CLI> sip show peers

*CLI> sip show registry

Page 21: Directorios Asterisk

Configurando Teléfonos SIP

• El propósito de SIP es ayudar a dos puntos conversar uno con otro (si es posible, directamente). En SIP, a los puntos les llamamos user agents, de los cuales hay dos tipos: cliente y servidor.

• Configuración básica de Telefóno SIP en Asterisk

No se requiere mucha configuración en Asterisk para que trabaje un teléfono SIP.

Page 22: Directorios Asterisk

Configurando Teléfonos SIP (Cont.)

• Si escribimos lo siguientes en el archivo /etc/asterisk/sip.conf podremos registrar un teléfono SIP en el sistema:

[general]

context=default

allowoverlap=no

bindport=5060

srvlookup=yes

[authentication]

[identificador_único]

type=friend

context=phones

host=dynamic

secret=palabra_secreta

disallow=all

allow=códec_utilizado

dtmfmode=rfc2833

Page 23: Directorios Asterisk

Configurando Teléfonos SIP (Cont.)

• Deberemos agregar líneas a nuestro dialplan en el archivo extensions.conf:

[globals]

[general]

[default]

exten => s,1,Verbose(1|Unrouted call handler)

exten => s,n,Answer()

exten => s,n,Wait(1)

exten => s,n,Playback(tt-weasels)

exten => s,n,Hangup()

[incoming_calls]

exten => _X.,1,NoOp()

exten => _X.,n,Dial(SIP/1000)

Page 24: Directorios Asterisk

Configurando Teléfonos SIP (Cont.)

[internal]

exten => 1000,1,Verbose(1|Extension 1000)

exten => 1000,n,Dial(SIP/1000,30)

exten => 1000,n,Hangup()

exten => 500,1,Verbose(1|Echo test application)

exten => 500,n,Echo()

exten => 500,n,Hangup()

[phones]

include => internal

include => outgoing_calls