Professional Documents
Culture Documents
[david]
type=friend
username=david secret=1234 host=192.168.1.30 context=fromiax qualify=yes
Verificacin de la configuracin con el CLI. Para ver los usuarios sip e iax:
*CLI>sip show peers
*CLI>iax show peers
Buzones de voz (Voicemail)
Uno de los servicios ms interesantes de las PBX, Asterisk implementa un sistema de
buzones de voz bastante flexible.
Algunas caractersticas de este servicio:
Ilimitados contenedores voicemail con proteccin de password, contenidos en carpetas.
Saludos diferentes para los estados busy y unavailable.
Saludos configurables.
Habilidad de asociar un telefono con varios voicemail's y un voicemail con varios
telefonos.
Posibilidad de envio al correo electrnico con el archivo de sonido como adjunto.
La configuracin se har en el archivo voicemail.conf (en /etc/asterisk/). Aqu deberemos
definir los contextos y contenedores voicemail.
A continuacin vamos a ver una configuracin bsica.
La configuracin avanzada se encuentra en el apartado Configuracin de Asterisk.
Aadir el voicemail al Dialplan
Para ello, vamos a utilizar VoiceMail().
VoiceMail() : aplicacin que enva al llamante un mensaje. El buzn debe ser especificado
como mailbox@context (el contexto por defecto es default). Si se utiliza la letra b, la
persona que llama escuchara el mensaje de ocupado. Si se usa la letra u, la persona que
llama escuchar el mensaje de no disponible (si existe).
exten => 101,1,Dial(${JOHN},10) ; despus de 10 segundos pasa al voicemail exten =>
101,n,VoiceMail(101@default,u)
Acceso al voicemail
Los usuarios pueden recuperar sus mensajes de correo de voz, cambiar sus opciones de
voz, y grabar sus saludos de voz utilizando el VoiceMailMain().
exten => 700,1, VoiceMailMain() :accedes al buzon de voz del llamante.
Marcacin por nombre de directorio
Una ltima caracterstica del sistema de correo de voz de Asterisk es la de marcacin por
nombre de directorio.
Esto se crea con Directory(). Esta aplicacin utiliza los nombres definidos en los mailbox de
voicemail.conf .
Sintaxis: Directory (voicemailcontext,context,options)
-7 voicemailcontext: El contexto voicemail para leer los nombres.
-7 context: El contexto opcional del dialplan para llamar al usuario.
-7 options: Por defecto se busca el usuario por apellido.
Con la opcin f se busca por nombre. Con la opcin e se busca por extensin.
Se solicita al usuario que introduzca
nombre/apellido/extension del empleado.
por
teclado
las
primeras
letras
2
del
=>
=>
=>
=>
Si todo el que llame va a realizar la llamada a travs del mismo canal y extensin que define
la variable JOHN ya hemos terminado sino es necesario el uso de argumentos.
Utilizacin de argumentos en macros
Vamos a pasar el canal como argumento:
exten => 101,1,Macro(voicemail,${JOHN}) [macro-voicemail]
exten => s,1,Dial(${ARG1},10)
exten => s,n,VoiceMail(${MACRO_EXTEN}@default)
4
Transferencias de llamadas
La configuracin de la transferencia de llamadas entre diversos usuarios, independientemente
de la tecnologa que usen se realiza en el archivo features.conf en /etc/asterisk/.
Hay que especificar en dicho archivo las siguientes caractersticas:
5
blindxfer => secuencia : Permite realizar una transferencia de llamada a ciegas
marcando la secuencia.
pickupexten => secuencia : Especifica la secuencia a marcar para coger una llamada de
alguien del mismo callgroup.
Para poder realizar transferencias va PBX, Asterisk debe estar a la escucha de los
tonos configurados, para ello la aplicacin Dial debe haber recibido como parmetro 't' para
permitir la transferencia en destino o 'T' para hacerlo en origen (o ambas).
CallParking
El callparking o aparcamiento de llamadas es una funcionalidad que permite transferir la
llamada a un 'parking' virtual. Pudiendo colgar sin que la llamada origen sea desconectada de
Asterisk, ya que se encontrar aparcada.
Manejo de Colas
Una llamada entrante puede ser enviada a una cola de llamadas, que ser distribuida entre
los agentes disponibles, miembros que contestan las llamadas.
Las colas se utilizan mucho en entornos tipo 'Call Center', con los canales tipo de
Agente (que hacen 'login en el sistema'). El sistema de colas se compone de:
Llamadas entrantes que son ubicadas en una cola.
-
Una estrategia sobre cmo manejar la cola y repartir las llamadas entre los miembros.
automticos.
La estructura de un Call File es la siguiente:
Channel: <channel> ; La extensin que queremos llamar.
Callerid: <callerid>
;extensin llamada.
Account: <account>
; esta llamada (CDR)
Una vez que la extensin llamada conteste tenemos que decirle a asterisk lo que tiene que
hacer. Esto tambin se define en el mismo archivo. Hay dos opciones:
Ejecutar una aplicacin:
Application: <appname> ; la aplicacin que queremos utilizar
Data: <args>
Priority: <priority>
Setvar: <var=value>
; Variables que se pueden necesitar en el ; contexto, extensin y
prioridad que definimos.
Ejemplo:
En el siguiente ejemplo: se llama al 43424444 en el canal SIP y enva la llamada al contexto
[mensajes-salida], extensin 84, Prioridad 1:
Archivo mensaje.call
Channel: SIP/43424444
MaxRetries: 2
RetryTime: 60
WaitTime: 30
Context: mensajes-salida
Extension: 84
Priority: 1
-
extensions.conf
[mensajes-salida]
8
exten
=>
84,2,Playback(vm-goodbye)
exten
=>
Sistema de logs
En el archivo /etc/asterisk/logger.conf se encuentra la configuracin del sistema de logging de
Asterisk.
Los distintos niveles de informacin a capturar en los logs son:
Verbose: mensajes generales sobre lo que est ocurriendo en el sistema (por ejemplo
si el valor de verbosity es mayor a 3, muestra las instrucciones del plan de
marcacin).
Debug: mensajes con informacin extendida, en general utilizados por
programadores.
Notice: notificaciones no crticas.
Warning: mensajes de alerta posiblemente crticos.
Error: mensajes indicando que ocurri algo grave.
En el contexto [logfiles] del archivo logger.conf se indican los archivos y mensajes a
loguear en c/u, la sintaxis es: archivo => nivel1,...,niveln
Los archivos de log se crean por defecto en /var/log/asterisk/ (esto se puede cambiar
/etc/asterisk/asterisk.conf).
En el contexto [logfiles] del archivo logger.conf se indican los archivos y mensajes a
loguear en c/u, la sintaxis es: archivo => nivel1,...,niveln
Los archivos de log se crean por defecto en /var/log/asterisk/ (esto se puede cambiar
/etc/asterisk/asterisk.conf).
Ejemplos:
debug => debug
full => notice,warning,error,debug,verbose
Para enviar a la consola, hay que definir el archivo especial console:
console => notice,warning,error,debug
Tambin se pueden enviar al syslog:
syslog.local0 => debug, warning, error, notice, verbose
Configurando adems en /etc/syslog.conf:
local0.*@ip_servidor
Los comandos relacionados con el manejo del log en el CLI son:
Reabre los archivos de log del Asterisk y recarga la configuracin del logger:
*CLI>logger reload
Rota los archivos de log y luego hace un logger reload.
*CLI>logger rtate
9
Cambia el nivel de informacin a mostrar en la consola. Por ej.: set verbose 999
*CLI>core set verbose
10
11