Duda acerca del número de llamadas con estado NO ANSWER generadas en mi centralita Asterisk

615 views
Skip to first unread message

Miguel Alberto Sanz Pardo

unread,
Mar 16, 2015, 8:07:21 AM3/16/15
to aster...@googlegroups.com
Hola buenos días,



Desde hace un mes aprox. estoy monitoreando las estadísticas de las llamadas generadas en una centralita Asterisk que se instaló en un penal.

Por ahora nuestra centralita permite hacer lo más básico, es decir, realizar llamadas salientes a través de un proveedor de VOIP.


Mirando las estadísticas veo que se han generado:

20588 llamadas con el estado ANSWERED
29190 llamadas con el estado NO ANSWER
1322 llamadas con el estado FAILED
242 llamadas con el estado BUSY


Obviando las llamadas con estado BUSY se puede ver que el número de llamadas NO ANSWER es bastante elevado. Entiendo que el estado NO ANSWER se prroduce cuando llamas y el llamado no te contesta porque no descuelga, pero que el 50% de los intentos de llamada acaben en NO ANSWER no es muy normal ¿No?

En cuanto al dialplan no tiene ningún misterio:

[outgoing]
exten => _4278.,1,NoOp()
same => n,Dial(SIP/proveedorvoip/${EXTEN:4},30,T)
same => n,Hangup()



Me he fijado que en el caso de las llamadas con estado NO ANSWER hay por así decirlo 2 tipos de casos:

1) En la mayoría de los casos se ejecuta el comando Dial como lastapp usado, es decir; el llamante intenta llamar pero al parecer nadie responde y el llamante cuelga antes de que pasen 30 segundos  --> 24281 veces

2) En la minoría de los casos al parecer se ejecuta el comando Hangup como lastapp usado; es decir , el llamante intenta llamar pero al parecer nadie responde y al cabo de 30 segundos tal y como tengo el Dialplan se produce el colgado --> 4909 veces. No obstante en 324 ocasiones de esas 4909 veces se produce el Hangup antes de los 30 segundos,¿Esto en principio no debería de ocurrir no? Si la última app ejecutada es Hangup, ¿No se deberían de respetar los 30 segundos que indico en el dialplan?




¿Cómo lo veis? ¿Demasiadas llamadas con estado NO ANSWER, no?

Por otra parte, ¿Alguien entiende el por qué de que no se respeten los 30 segundos cuando la última app ejecutada es Hangup?




un saludo y gracias por vuestras respuestas


Miguel Sanz

Miguel Alberto Sanz Pardo

unread,
Mar 16, 2015, 1:45:51 PM3/16/15
to aster...@googlegroups.com
Por cierto, el estado FAILED ¿A qué puede ser debido exactamente?

Entiendo que algo debe de haber fallado en la llamada, pero por más que he buscado por google, por el foro y en la propia guia de Asterisk no he encontrado en sí que significa.

Entiendo los conceptos de ANSWERED, NO ANSWER, BUSY, CHANUNAVAIL y el por qué de que puedan suceder y creo entender el de CONGESTION pero el de FAILED no.

Richard Alvarez

unread,
Mar 16, 2015, 5:24:40 PM3/16/15
to asterisk-es
Aumenta tu tiempo: 

[outgoing]
exten => _4278.,1,NoOp()
same => n,Dial(SIP/proveedorvoip/${EXTEN:4},75,T)
same => n,Hangup()

Y tendras menos no answer ...



Richard Alvarez

--
Este email pertenece a la lista de Asterisk-ES (http://www.asterisk-es.org)
Normas de la lista Asterisk-ES: http://comunidad.asterisk-es.org/index.php?title=Lista:normas-asterisk-es
---
Has recibido este mensaje porque estás suscrito al grupo "asterisk-es" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a asterisk-es...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a aster...@googlegroups.com.
Visita este grupo en http://groups.google.com/group/asterisk-es.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Richard Alvarez

unread,
Mar 16, 2015, 5:32:00 PM3/16/15
to asterisk-es
Tienes que ver en tu asterisk la causa de tu failed que te sale en el teléfono...



Richard Alvarez

--

Miguel Alberto Sanz Pardo

unread,
Mar 17, 2015, 4:42:35 AM3/17/15
to aster...@googlegroups.com
En la mayoría de las ocasiones en que se produjo el NO ANSWERED (24281 frente a 4909 veces) el llamante fue el que colgó en vez de mi centralita, así que aunque aumentara el tiempo de timbrado a 75 entiendo que las cifras de NO ANSWER serían bastante elevadas. Corríjeme si me confundo.


un saludo y gracias por tu colaboración

Miguel Sanz

Pepelux

unread,
Mar 17, 2015, 5:02:24 AM3/17/15
to aster...@googlegroups.com
Buenas

Verifica que el llamante escuche sonido durante el 'ringing' ... a ver si se le queda mudo el canal y por eso cuelga

Un saludo

Miguel Alberto Sanz Pardo

unread,
Mar 17, 2015, 5:33:04 AM3/17/15
to aster...@googlegroups.com
Gracias Richard, finalmente he realizado una busqueda de forma correcta (usando los términos de búsqueda adecuados) y he encontrado varios post interesantes con respecto al hang up cause, sobre todo este:



Voy a tratar de capturar el hangup cause para cada llamada, para así poder ver qué puede estar pasando.


un saludo

Miguel Sanz

Miguel Alberto Sanz Pardo

unread,
Mar 17, 2015, 5:34:12 AM3/17/15
to aster...@googlegroups.com
En cuanto pueda trataré de conseguir esta información


Gracias Jose Luis



Un saludo

Miguel Sanz

Miguel Alberto Sanz Pardo

unread,
Mar 17, 2015, 9:03:25 AM3/17/15
to aster...@googlegroups.com
He reaprovechado la macro que compartió Raúl y he dejado el código de esta manera:

[ast_hangup_causes]
;
; Sets the variable HANGUPREASON
;
exten => hc-1,1,Set(HANGUPREASON=UNALLOCATED)
exten => hc-1,n,Return()
;
exten => hc-2,1,Set(HANGUPREASON=NO_ROUTE_TRANSIT_NET)
exten => hc-2,n,Return()
;
exten => hc-3,1,Set(HANGUPREASON=NO_ROUTE_DESTINATION)
exten => hc-3,n,Return()
;
exten => hc-6,1,Set(HANGUPREASON=CHANNEL_UNACCEPTABLE)
exten => hc-6,n,Return()
;
exten => hc-7,1,Set(HANGUPREASON=CALL_AWARDED_DELIVERED)
exten => hc-7,n,Return()
;
....



[outgoing]

exten => _X.,1,NoOp()
same  => n,Dial(SIP/proveedorvoip/${EXTEN},30,T)
same  => n,Gosub(ast_hangup_causes,hc-${HANGUPCAUSE},1)
same  => n,Set(CDR(userfield)=Hangupcause:${HANGUPCAUSE} - ${HANGUPREASON})

exten => h,1,NoOp()
same  => n,Gosub(ast_hangup_causes,hc-${HANGUPCAUSE},1)
same  => n,Set(CDR(userfield)=Hangupcause:${HANGUPCAUSE} - ${HANGUPREASON})


Por ahora parece que funciona bien, en el CDR aparece un nuevo campo que indica la razón del colgado, iré revisando los FAILED y los NO ANSWER a ver si veo algo anormal en el campo HANGUP CAUSE


un saludo


Miguel Sanz

Miguel Alberto Sanz Pardo

unread,
Mar 17, 2015, 11:12:03 AM3/17/15
to aster...@googlegroups.com
A lo largo de estas últimas horas hubo varias llamadas con estado NO ANSWER y en ellas normalmente la causa de  colgado fue:


Hangupcause:0 - NOTDEFINED

He podido comprobar que ésta es justo la causa de colgado que aparece si es el usuario llamante es quien cuelga antes del tiempo definido en la app Dial(). En tal caso no se ejecuta ningún Hangup() y al llegar a la extensión h nos dice que la causa del colgado es 0 , no definida.

En caso de pasar más de 30 segundos llegamos al Hangup() y en tal caso: Hangupcause:16 - NORMAL_CLEARING

Tengo que informarme de si los usuarios del penal cuelgan por algo en concreto, como que el llamante no escuche (o tan solo escuche a veces) sonido durante el 'ringing'  , no se quede mudo el canal tal y como dice Jose Luis.



Raúl Alexis Betancor Santana

unread,
Mar 17, 2015, 11:37:46 AM3/17/15
to aster...@googlegroups.com
Captura el RTP y analízalo, o instala un HOMER


Miguel Alberto Sanz Pardo

unread,
Mar 18, 2015, 5:46:14 AM3/18/15
to aster...@googlegroups.com
Podría capturar RTP con tcpdump (por ejemplo capturar tráfico con respecto a una IP/usuario Asterisk que esté viendo que tienen muchos NO ANSWER) y luego analizarlo con wireshark por ejemplo ¿No? 

Estoy echándole un vistazo al homer y parece bastante completo, permite analizar trazas SIP, RTP e inluso RTCP. Antes de  instalarlo en la centralita del penal lo instalaré en una centralita de pruebas y lo probaré para aprender a manejarlo de forma básica. En principio con instalarlo en un pc que haga de server, desde el propio server puedo realizar las capturas y analizar lo que está pasando ¿No?  Entiendo que no hace falta que lo analice desde un pc que haga de cliente ¿No?

Miguel Alberto Sanz Pardo

unread,
May 26, 2015, 10:14:33 AM5/26/15
to aster...@googlegroups.com
Hubo algo que no comenté y que no sé si podrá estar relacionado, pero en el archivo /var/log/asterisk/messages  cada cierto tiempo aparecen warnings de este tipo:

[2015-05-24 10:42:11] WARNING[20122][C-00016a7e] app_dial.c: Unable to write frametype: 2
[2015-05-24 10:44:37] WARNING[1738][C-00016aa5] chan_sip.c: Remote host can't match request CANCEL to call '29c0cb486dcbfe81...@ses5-mmismex01.sbc1mex04'. Giving up.
[2015-05-24 10:45:46] WARNING[1738][C-00016ab7] chan_sip.c: Received response: "Forbidden" from '"TP081" <sip:55672...@ses5-mmismex01.sbc1mex04>;tag=as2bddf487'

He estado investigando acerca de estos warnings tanto en google y como por el foro pero no he encontrado nada concluyente.


¿Alguien sabe a qué pueden ser debidos estos mensajes?



Como ya comenté hay demasiadas llamadas NO ANSWER, no sé si estará estrechamente relacionado con estos warnings. Diariamente pueden llega a aparecer hasta 60-70 mensajes de warning si juntamos los 3 tipos de warning que aparecen

MarioAngeles

unread,
Jun 7, 2015, 11:01:34 PM6/7/15
to aster...@googlegroups.com
Tus llamadas son callcenter?
veo que tienes un ASR del 40% ...si son callcenter  entonces esta en el promedio pero si son normales deben estar en el 60 %como minimo.

saludos

--

Miguel Alberto Sanz Pardo

unread,
Jun 8, 2015, 3:58:44 AM6/8/15
to aster...@googlegroups.com
Hola dripper,


Como tú bien dices el Answer Seizure Ratio está en torno a un 40-50%.

El entorno es un penal en el cuál se realizan llamadas salientes sin más, entiendo que no se puede considerar call-center.


Lo que no llego a entender son los WARNINGS que van apareciendo en /var/log/asterisk/messages




un saludo y gracias por tu respuesta
Reply all
Reply to author
Forward
0 new messages