webrtc agent console
DESCRIPTION
Manual Consola Agente WebRTC ElastixTRANSCRIPT
Manual Consola de Agente WebRTC
Rev 1.1
2
Introducción.
Gracias por instalar el Addon Consola de Agente WebRTC. Este Addon le permitirá tener una consola
de agente para el módulo de Call Center de Elastix con un teléfono y servicio de Mensajería
Instantánea basados en el API WebRTC SIPML5 embebidos en dicha consola.
Background.
Este conjunto de RPMs provee el soporte para el gateway WebRTC2SIP de la empresa Doubango, así
como la edición de la consola de agente del módulo de callcenter para usar un teléfono basado en la
API SIPML5 también de la empresa Doubango.
Notas.
Esta diseñado solo para trabajar en modo “CallBack Login” en la consola de agente del módulo de
callcenter, ya que al ser una API basada en javascript al refrescar la página se pierde el registro y por
ende la conexión con la consola de agente del módulo de callcenter.
El soporte de WebRTC en los exploradores es muy limitado es por esta razón que se recomienda usar
Google Chrome solamente.
Tabla de Dependencias.
Paquete Dependencias Descripción
elastix-agent_console_webrtc-0.1-
1.noarch
webrtc2sip, elastix-callcenter Provee el teléfono web en la consola de
agente del módulo de callcenter.
webrtc2sip-2.5.1r114-DMv1-
Elastix.i386.rpm
Screen, doubango framework Provee el media gateway webrtc2sip
para la interacción websocket<-
>asterisk.
doubango-2.0r985-DMv1.i386.rpm Libtool, ffmpeg, openssl, libvpx, libsrtp Provee el framework para que el
gateway webrt2sip trabaje
correctamente.
ffmpeg-1.2-DMv1.i386.rpm Libvpx, x264, yasm, libvpx Provee el soporte de conversión al
gateway webrtc2sip.
x264-snapshot20130810.2245-
DMv1.i386.rpm
Provee el codec x264 al gateway
webrtc2sip.
libvpx-1.2.0-DMv1.i386.rpm Provee el codec VP8 al gateway
webrtc2sip.
yasm-1.2.0-DMv1.i386.rpm Facilita la compilación de FFMPEG.
libsrtp-1.4.5-DMv1.i386.rpm Provee srtp al gateway webrtc2sip.
libtool-2.4.2-DMv1.i386.rpm Facilita la compilación del framework
de doubango.
Manual Consola de Agente WebRTC
Rev 1.1
3
Instalación.
Para instalar el Addon descárguelo desde el MarketPlace de Elastix o bien desde la consola de Linux
ejecute:
yum install –y elastix-agent_console_webrtc-0.1-1.noarch
Configuración del Servicio de Chat.
El servicio de chat viaja a través de SIP, y es el servidor Asterisk quien se encarga de manejar, procesar
y entregar los mensajes de texto. Es por esta razón que el servicio de mensajería requiere de la versión
11.5 de Asterisk para funcionar, versiones menores no serán capaces de entregar los mensajes de texto.
Para habilitar el servicio en el PBX debe seguir estos pasos:
1. Habilitar el acceso a "UNEMBEDDED PBX". Vaya al menú SECURITYAdvanced y
habilite el acceso.
2. Vaya al menú PBXUnembedded PBX e ingrese utilizando los datos que creo en el paso an-
terior.
3. Ir al menú "tools"
4. Ir al submenú "Asterisk Sip Settings"
Manual Consola de Agente WebRTC
Rev 1.1
4
5. Añadir el campo: accept_outofcall_message = yes
6. Dar click en Add Fields.
7. Añadir el campo: outofcall_message_context = sipsms
8. Salvar y recargar.
Manual Consola de Agente WebRTC
Rev 1.1
5
Operación.
Una vez que se ha completado la instalación se deberá configurar el módulo de call center para trabajar
en modo “CallBack Login” como lo describe el manual oficial del
módulo(http://www.elastix.org/index.php/en/product-information/manuals-books.html#iccelxen).
Al acceder al menú de Call Center aparecerá un nuevo menú llamado “WebRTC Agent Console”:
Manual Consola de Agente WebRTC
Rev 1.1
6
Deberá acceder en modo “Callback Login” una vez que ingrese verá la siguiente consola de agente:
Ubicación del Teléfono.
Ubicación de la consola de Mensajería Instantánea.
Manual Consola de Agente WebRTC
Rev 1.1
7
Elementos del Teléfono.
Cuadro de texto para marcación. Aquí aparecerán los números marcados antes y durante la
llamada.
Etiqueta del estado de la conexión. Aquí aparecerá el estado de la conexión con el servidor
Asterisk.
Dialpad. Se utiliza para enviar dígitos o tonos DTMF durante la llamada.
Botón Call. En llamada saliente permite enviar la llamada. En llamada entrante cambiará el
texto a “Answer” y servirá para contestar la llamada entrante.
Botón Hangup. En llamada activa se utiliza para terminar la llamada. En llamada entrante
cambiará el texto a “Reject” y servirá para rechazar la llamada entrante.
Etiqueta de estado de la llamada. Aquí aparecerá el estado de la llamada activa.
Manual Consola de Agente WebRTC
Rev 1.1
8
Ventana de Chat.
Lista de Contactos SIP. Aquí se desplegarán todos los contactos SIP creados desde el menú del
PBX. Cabe mencionar que es probable que no todos los contactos estén usando la consola de
agente de WebRTC y al enviar un mensaje no pase nada. Al cambiar entre contactos la ventana
de chat limpiará el historial de la conversación.
Mensaje de texto enviado. Todos los mensajes de texto enviados aparecerán con el formato de la
imagen, precedidos por el símbolo “>”.
Mensaje de texto recibido. Todos los mensajes recibidos aparecerán con el formato de la
imagen, precedidos por la hora en que se recibió el mensaje y el peer que lo envía.
Cuadro de texto para escribir los mensajes a enviar.
Botón SEND. Sirve para enviar los mensajes de texto, se puede presionar el botón o bien usar la
tecla ENTER.
Manual Consola de Agente WebRTC
Rev 1.1
9
Habilitar el uso de los medios de Audio.
La primera vez que se reciba o se haga una llamada será necesario que usted habilite el uso de los
medios de audio en el explorador, si no hace esto no será capaz de contestar o enviar una llamada.
Esto se logra presionando el Botón “Permit” o “Permitir” de la notificación emergente debajo de la
URL:
Una vez que se da click en Permitir la llamada podrá ser recibida o enviada.
Llamada saliente Llamada Entrante
Manual Consola de Agente WebRTC
Rev 1.1
10
Gateway WebRTC2SIP.
El addon usa e media Gateway webrtc2sip para hacer la conexión de la llamada entre Asterisk y el
explorador web.
El Gateway es ejecutado durante la instalación y añadido para ejecutarse durante el arranque del
sistema. El Gateway corre detrás de una sesión screen y puede acceder en cualquier momento a la
sesión con el comando:
screen –r wrtc
Para salir de la sesión sin detener el Gateway utilice la combinación de teclas: CTRL+A+D.
Detener el Gateway.
Para detener el media Gateway deberá entrar en la sesión screen con el comando:
screen –r wrtc
Y después ejecutar: quit+ENTER.
Al detener el servicio ningún cliente podrá utilizar la consola de Agente WebRTC.
Arrancando el Gateway.
Para ejecutar el Gateway después de detenerlo por alguna tarea de depuración ejecute el siguiente
comando:
screen -dmS wrtc /usr/local/sbin/webrtc2sip --config=/usr/local/sbin/config.xml
Manual Consola de Agente WebRTC
Rev 1.1
11
Configurando el Gateway.
El Gateway está configurado por default pero usted puede cambiar los DNS para un mejor
funcionamiento o la lista de codecs soportados.
El archivo de configuración config.xml se encuentra en /usr/local/sbin. Para cambiar los DNS utilice
su editor de texto preferido y cambie la IP entre las líneas:
<nameserver id=’1’>10.0.1.1</nameserver>
<nameserver id=’2’>8.8.8.8</nameserver>
Para cambiar la lista de codecs soportados cambie las líneas:
<codecs>pcma;pcmu;gsm;</codecs>
Todos los cambios hechos requieren reiniciar el Gateway. Para más información acerca de la
configuración del Gateway vaya a esta URL: http://webrtc2sip.org/technical-guide-1.0.pdf
Manual Consola de Agente WebRTC
Rev 1.1
12
FAQS
1. ¿Necesito acceso a Internet aunque este en mi RED LOCAL?
Sí, es necesario el uso de internet para tener acceso a los servidores ICE que determinarán la IP
a usar en la transacción SDP.
2. Estoy dentro de una RED LOCAL, sin embargo, el SDP usa la IP Pública de mi RED y no tengo
audio. ¿Qué puedo hacer?
Por alguna razón los servidores ICE determinaron que la mejor IP a usar era la IP pública y esto
causa que no haya audio una solución al problema es editar el archivo:
/var/www/html/modules/agent_console_webrtc/themes/default/js/ml5.js
Descomentar la línea de los servidores ICE y cambiarla por esto:
ice_servers: [{url:’stun:null’}],
De este modo usará siempre la IP local.
3. Entra una llamada, contesto, pero el audio tarda unos segundos en aparecer. ¿Qué puedo
hacer?
Esto también se debe a que la negociación del servidor ICE no ha terminado, para obtener el
audio en una RED LOCAL de forma inmediata aplicar la solución del punto 2. Para una red
remota no hay solución.
4. ¿El Gateway tiene soporte para G729?
No, el Gateway no tiene soporte para G729, por ahora solo soporta G711, GSM y algunos
codecs de video no habilitados.
5. ¿Todas las funciones estándar del módulo de call center siguen activas?
Sí, el funcionamiento debe ser igual que la consola estándar.
6. Puedo recibir llamadas pero al hacer una llamada nunca se contacta con asterisk. ¿Qué puedo
hacer?
Esto suele pasar porque el Gateway es incapaz de resolver el nombre de host “asterisk”, para
solucionarlo abrir el archivo /etc/hosts y añadir a la seeción de localhost la palabra asterisk.