You are on page 1of 13

Asterisk

Registro de llamadas y logs

Santiago Alberch.Registro de llamadas Asterisk permite llevar un control exhaustivo de todas las llamadas que se han realizado o recibido. Antonio Lobo 2 . Andrés Brassara.  Es una herramienta fundamental para los proveedores en el control de facturación a clientes y para los call centers en la recolección de estadísticas.  Este control se denomina CDR: Call Detail Record (Registro de detalle de llamadas).  Julián Dunayevich. Lázaro Baca.

Lázaro Baca.Registro de llamadas     La configuración básica del CDR se encuentra en el archivo cdr. es decir. El registro del CDR utiliza por defecto el formato CSV y se escribe en el archivo: /var/log/asterisk/cdr-csv/Master. Se pueden elegir entre varios “backends”. Antonio Lobo 3 .conf Julián Dunayevich. sqlite y radius. Andrés Brassara. odbc. aunque el más utilizado es mysql que está disponible en asterisk-addons y se configura en cdr_mysql. el/los formato/s para almacenar la información. Santiago Alberch.conf.csv Otros medios de almacenamiento posibles son pgsql.

Lázaro Baca. dcontext: contexto destino. desde que fue discada hasta el corte.Registro de llamadas   Asterisk genera un CDR (registro) para cada llamada. entre ellos:         channel: nombre del canal src: número del caller ID. answer: respuesta de la llamada (fecha/hora). dst: extensión destino. Por defecto. end: fin de la llamada (fecha/hora). duration: duración de la llamada en segundos. se graban un conjunto prefijado de campos. start: comienzo de la llamada (fecha/hora). Santiago Alberch. Antonio Lobo 4 . Andrés Brassara. Julián Dunayevich.

 Para confirmar el estado del CDR desde el CLI. Santiago Alberch. Andrés Brassara. Lázaro Baca. se puede ejecutar: CLI> cdr show status  Para listar los backends disponibles: CLI> module show like cdr_ Julián Dunayevich.Registro de llamadas   billsec: duración de la llamada en segundos. Antonio Lobo 5 . fallida). no atendida. disposition: estado de la llamada (atendida. desde que fue atendida hasta el corte. ocupado.

Set(CDR(micampo)=cafe) exten => 115.Verbose(Tiempo inicio de la llamada: ${CDR(start)}) exten => 115. Santiago Alberch.n. Andrés Brassara. Antonio Lobo 6 .1. exten => 115.Registro de llamadas  Los campos del CDR son accedidos y asignados en el dialplan via la funcion CDR().1. exten => 115. más allá de los pre-definidos en el sistema.Verbose(Necesito mas ${CDR(mycustomfield)})  Para ver la documentación de la función CDR: CLI> core show function CDR Julián Dunayevich.n.Set(CDR(userfield)=zombie)  También es posible definir nuevos campos. Lázaro Baca.

Registro de llamadas  Los campos definidos por el usuario pueden ser guardados vía la utilización de los backends adaptive ODBC y cdr-custom. Andrés Brassara. el campo debe estar especificado en un mapping en el archivo de configuración (cdrcustom. sólo se debe crear una columna en la BD con el mismo nombre del campo definido. Lázaro Baca.  Para adaptive_ODBC. Santiago Alberch. Antonio Lobo 7 .conf). Julián Dunayevich. para que se almacene automáticamente.  Para cdr-custom.

Registro de llamadas Existen muchas aplicaciones que permite gestionar el CDR.  Algunas aplicaciones open source son:   Astbill: es una de las mejores aplicaciones opensource para tarificación. Lázaro Baca. Santiago Alberch. Andrés Brassara.  A2Billing Julián Dunayevich. Desarrollar una propia no es realmente muy complejo. control de cuentas y llamadas. Antonio Lobo 8 .  Areski Stat v2: se trata de una aplicación para listar y realizar estadísticas de las llamadas realizas o enviadas.

Error: mensajes indicando que ocurrió algo grave. Santiago Alberch. Julián Dunayevich. si el valor de verbosity es mayor a 3. Antonio Lobo 9 . Warning: mensajes de alerta posiblemente críticos. Debug: mensajes con información extendida.Sistema de logs  En el archivo /etc/asterisk/logger. en general utilizados por programadores. Notice: notificaciones no críticas.  Los distintos niveles de información a capturar en los logs son:      Verbose: mensajes generales sobre lo que está ocurriendo en el sistema (por ej.conf se encuentra la configuración del sistema de logging de Asterisk. muestra las instrucciones del plan de marcación). Lázaro Baca. Andrés Brassara.

..niveln Los archivos de log se crean por defecto en /var/log/asterisk/ (esto se puede cambiar /etc/asterisk/asterisk. Antonio Lobo 10 .debug.conf).. Ejemplos: debug => debug full => notice.error..Sistema de logs    En el contexto [logfiles] del archivo logger. Andrés Brassara.verbose Julián Dunayevich. la sintaxis es: archivo => nivel1.conf se indican los archivos y mensajes a loguear en c/u. Lázaro Baca.warning. Santiago Alberch.

warning. notice. Andrés Brassara.local0 => debug. Antonio Lobo 11 . error.error. Santiago Alberch.debug También se pueden enviar al syslog: syslog.* @ip_servidor Julián Dunayevich. Lázaro Baca.conf: local0.warning. verbose Configurando además en /etc/syslog. hay que definir el archivo especial console: console => notice.Sistema de logs   Para enviar a la consola.

Santiago Alberch.Sistema de logs: CLI  Los comandos relacionados con el manejo del log del CLI son:  logger reload: reabre los archivos de log del Asterisk y recarga la configuración del logger . Por ej: set verbose Julián Dunayevich.  logger rotate: rota los archivos de log y luego hace un logger reload.  logger set level <nivel de log>: cambia el nivel de logging en la consola.  core set verbose/debug <nivel>: cambia el nivel de información a mostrar en la consola. Por ej: logger set level debug.  logger mute: alterna el logging en la consola. 999. Antonio Lobo 12 . Lázaro Baca. Andrés Brassara.

com Detalles de la licencia: http://creativecommons.com lazaro. Santiago Alberch. Andrés Brassara.baca@gmail. Lázaro Baca.5 Basándose en: Irontec: contacto@irontec. Santiago Alberch. and Leif Madsen.es_AR Autores: Julián Dunayevich.com abrassara@gmail.5/deed. 2005 Julián Dunayevich.com salberch@gmail. Jim Meggelen. Andrés Brassara. Jared Smith.Attribute Non-Commercial Share-Alike 2. Antonio Lobo (cc) Creative Commons .com (CC) Asterisk.org/licenses/by-nc-sa/2.Curso elaborado por Julián Dunayevich.com antoniwolf@gmail. Lázaro Baca. Antonio Lobo 13 . The Future of Telephony. O´REILLY. Santiago Alberch y Antonio Lobo julian@dunayevich. Lázaro Baca. Andrés Brassara.