Soporte & Consultoria

Soporte Remoto y Consultoria skype : ambiorixg12.
Nota no se brinda ningun tipo de consulta o soporte fuera del blog de forma gratuita

viernes, 9 de septiembre de 2011

Espiando llamadas en Asterisk con la aplicacion ChanSpy


Una aplicación muy interesante de Asterisk es seguramente ChanSpy. ¿Para que sirve? Esta aplicación permite espiar las extensiones. Además de eso permite hablar con la extensión espiada y de esta forma dar sugerencias/consejos/indicaciones a la la persona que se encuentra en ese canal.
Como se puede deducir por lo dicho arriba, es una aplicación que se utiliza mucho en los Call Center para monitorear los agentes y, por ejemplo, ayudarlos en sus primeros días de trabajo.
La aplicación consta de muchas opciones y su sintaxis es:

ChanSpy([chanprefix][,options])
ChanSpy: el nombre de la aplicación
chanprefix: el prefijo de los canales que queremos “espiar”
options: una o más de las opciones disponibles.
Empezamos con el primer ejemplo:
[espiar]
exten=>  100,ChanSpy(all,bq)
same => n,Hangup

Con este bloque de dialplan podremos escuchar todos los canales activos. Mientras estamos espiando los canales tenemos algunas funcionalidades que podemos utilizar:
  • la tecla * permite pasar de una canal a otro (aleatoriamente)
  • la tecla # permite variar el volumen del canal escuchado.
  • digitando un numero, si esa extensión existe en el contexto corriente, el canal será transferido a esa extensión. Si queremos indicar un contexto distinto, tendremos que asociar a la variable ${SPY_EXIT_CONTEXT} ese contexto.
Otro ejemplo:
[espiar]
exten=> 100,ChanSpy(all)
same => n,Hangup
exten => 5,1,Playback(goodbye)
same => n,Hangup

En este ejemplo si mientras se están espiando los canales se digita el numero 5, se transferirá la llamada al mismo contexto (espiar) extensión 5. Se escuchará el saludo de despedida y la llamada será terminada.
Con un contexto distinto:
[espiar]
exten=> 100,Set(SPY_EXIT_CONTEXT=espiar2)
same => n,ChanSpy(all)
same => n,Hangup

[espiar2]
exten => 5,1,Playback(goodbye)
same => n,Hangup

Tiene poco sentido espiar una extensión que no esté en una conversación. Por eso se utiliza la opción b. Cuando el sistema empieza a espiar un determinado canal, envía al canal mismo un beep. Si no queremos que la persona se entere que la estamos espiando, añadimos la opción q (quiet mode):
[espiar]
exten=>  100,ChanSpy(all,bq)
same => n,Hangup

La verdad casi nunca necesitamos espiar todas las extensiones. En un Call Center, por ejemplo, nos interesa escuchar/monitorear los agentes. Nuestro Dialplan cambiaría de la siguiente forma:
[espiar]
exten=> 100,ChanSpy(SIP/Agent,bq)
same => n,Hangup

En este caso el prefijo es SIP/Agent representa cualquier Agente conectado a una de las colas. Si se quiere escuchar solamente las conversaciones de los agentes de de una determinada cola, utilizaremos la variable ${SPYGROUP}:
[ventas]
exten => 3000,1,Set(SPYGROUP=ventas)
same => n,Queue(ventas)
same => n,hangup

[espiar]
exten=> 100,1,ChanSpy(SIP/Agent,g(ventas)bq)
same => n,Hangup

Además de escuchar, puede ser útil poder hablar con el agente que se está espiando. Tenemos distintas formas de hacerlo:
  • opción B: lo que diremos lo escucharán los dos canales
  • opción w: lo que diremos lo escuchará solamente el canal espiado
Es decir que si queremos hablar con el Agente sin que el cliente se de cuenta:
[espiar]
exten=> 100,ChanSpy(SIP/Agent,wbq)
same => n,Hangup

Por ultimo esta aplicación permite espiar un numero determinado de extensiones a través de la opción e(ext). Ejemplo. La extensiones configuradas en la PBX son 10 con números de 100 a 110. Queremos espiar solamente las extensiones de 106 a 110. El dialplan será:
[espiar]
exten=> 100,ChanSpy(all,e(106:107:108:109:110)wbq)
same => n,Hangup


Articulo extraido de  http://voztovoice.org/?q=node/467 

No hay comentarios:

Publicar un comentario