Eventos
Phone SDK posee un listado de eventos que te ayudarán a ejecutar acciones sobre el HTML. Son los cuales deberás escuchar mediante funciones para realizar cambios de interfaz.
Para utilizar los eventos deberás realizar lo siguiente:
Los siguientes eventos con * (asterisco) son requeridos y obligatorios, si no los escuchas de forma apropiada el comportamiento del SDK no será el esperado.
token-error
token-error
Este evento se emitirá cuando el token proporcionado sea erróneo, mal formado o inválido. Esto podría eventualmente suceder si un administrador de cuenta, elimina la integración desde la cuenta.
Esto deberá ser escuchado, solo en caso de ambiente de desarrollo.
no-agents
*
no-agents
*Este evento se emitirá cuando no existan agentes conectados en tu cuenta luego de haber intentado la llamada mediante el método phone.call()
.
queued
*
queued
*Este evento se emite cuando el cliente ha sido añadido a la fila de espera, luego de haber llamado al método phone.call()
.
La posición y/o el tiempo de espera, podrían estar desactivados por el administrador de la cuenta.
El tiempo de espera está en unidades de minutos, por lo que te sugerimos utilizar nuestra librería de código abierto que "humaniza" la unidad de tiempo, para mostarla en segundos, minutos, horas, etc. dependiendo del valor.
Ejemplo:
Si el tiempo de espera retornado es 0.5 minutos, entonces nuestra librería devolverá 30 segundos.
queue-updated
*
queue-updated
*Este evento se emitirá cuando se actualice la posición en la fila, solo posterior al evento queued
. Es de suma relevancia que escuches este evento.
customer-leave
*
customer-leave
*Este evento se emitirá cuando se ejecuta el evento phone.leave()
estando en la fila de espera.
dismissed
*
dismissed
*Este evento se emitirá cuando un agente rechace la llamada.
out-queue
out-queue
Este evento se emite cuando la llamada ha sido contestada por un agente. Es opcional escuchar este evento.
answered
*
answered
*Este evento se emite cuando la llamada ha sido contestada por un agente.
Recuerda que deberás cargar nuestro WebRTC con anterioridad. Para más información visíta la documentión de WebRTC SDK.
connected-call
connected-call
Este evento se emite cuando se ha conectado a la llamada de forma exitosa. Es opcional escuchar este evento.
agent-disconnect
agent-disconnect
Este evento se emite cuando el agente quién contestó la llamada eventualmente se desconecta de la videollamada por problemas de red. Es opcional escuchar este evento.
No deberás terminar la llamada, ya que el agente se reconectará de forma automática. En caso de traspasar varios minutos nuestra API terminará la llamada de forma automática.
customer-hangup
customer-hangup
Este evento se emite cuando se ejecuta el método phone.hangup()
. Es opcional escuchar este evento.
ended
*
ended
*Este evento se emite cuando se termina la llamada, ya sea por lado de agente o al ejecutar el método phone.hangup()
.
Deberás eliminar la instancia de WebRTC creada, mediante el método destroy()
.
transferred-segment
*
transferred-segment
*Este evento se emitirá cuando un agente ha transferido al cliente a un segmento nuevo.
El SDK realizará las conexiones automáticamente, empezando el ciclo desde el evento queued
por lo tanto, solo deberás asegurarte que esté escuchándose.
transferred-agent
*
transferred-agent
*Este evento se emitirá cuando un agente ha transferido al cliente a un agente en específico.
connection-error
connection-error
Este evento se emitirá cuando exista algún error en la red o parámetros mal formados que se enviaron a la API. Es opcional escuchar este evento.
network-issues
*
network-issues
*Este evento se emitirá cuando existan problemas de red, como desconexión a Internet o demasiadas reconexiones producto de una red poco confiable.
Nuestra API tiene un algorítmo que identificará a un potencial cliente que presente una red poco estable, lo cual provocará que se rechace una conexión en la fila de espera.
Esto se debe a que la red requerida para la conexión en la fila de espera es minima, da como conclusion que la red del cliente no soportará una conexion estable de videollamada.
El parámetro evaluado no es la velocidad, si no la estabilidad de la red.
http-block
http-block
Este evento se emitirá cuando nuestra API detecte actividad sospechosa como un bot o una llamada desde una red poco confiable. Es opcional escuchar este evento.
Este tipo de comportamiento no es configurable, el cual permite entregar una mejor calidad de servicio a todos nuestros clientes, bloqueando potenciales atacantes o bots.
transport-disconnect
transport-disconnect
Este evento se emite cuando nuestra API desconecta de forma automática la conexión ya sea en la fila de espera o al terminar la llamada. Es decir, naturalmente este evento se emitirá dos veces en una llamada normal. Es opcional escuchar este evento.
beamport:create
beamport:create
Este evento se emite cuando el agente solicita realizar una conexión para transferencia de archivos usando Beamport.
Límites y usos
No crees más de una instancia de VideskPhone
, ya que podrías generar múltiples llamadas. Esto afectará en los reportes y podrías suspender tu cuenta por comportamiento sospechoso.
Este SDK te permitirá integrar Videsk en múltiples ambientes, ya sea en un sitio web, aplicación móvil utilizando marcos web, kioskos, IoT, etc.
Para el caso de integraciones en apps iOS y Android, te sugerimos utilizar Custom Tabs para Android y Safari View Controller para iOS.
Estos marcos web (Custom Tabs y Safari View Controller) ofrecerán máxima compatibilidad para las videollamadas. Otros marcos como WebView para Android y iOS son compatibles pero podrías experimentar ciertos bugs activos en este tipo de integración.
En caso de bugs pueden enviarnos un correo a [email protected] o bien desde tu dashboard.
Última actualización