Pregunta
Cuando se agota el tiempo de espera de la conexión de chat de un visitante, pero el visitante no cierra la ventana o pestaña en la que se carga el widget y luego se vuelve a conectar para enviar un nuevo mensaje, el formulario previo al chat no se le presenta automáticamente. ¿Hay alguna manera de exigir que un visitante vea siempre el formulario previo al chat en el Web Widget cuando se vuelve a conectar después de un tiempo máximo de inactividad?
Respuesta
De manera predeterminada, un visitante omite el formulario previo al chat cuando se vuelve a conectar. Sin embargo, puede hacer que el formulario previo al chat aparezca después de la reconexión usando la API mediante la aplicación del siguiente script:
<script id="ze-snippet"
src="https://static.zdassets.com/ekr/snippet.js?key=ACCOUNT_KEY"> </script>
<script>
// run whenever chat connects (or reconnects)
zE('webWidget:on', 'chat:connected', function() {
// get the current state of the chat session
let isChatting = zE('webWidget:get', 'chat:isChatting');
// check there is not already an active chat session
if (isChatting == false) {
// if not then get the current state of the widget
let widgetState = zE('webWidget:get', 'display');
// check if already in the open 'chat' state, indicating prior timeout
if (widgetState == 'chat') {
// if it is then close the widget, reset and reopen in pre-chat state
zE('webWidget', 'close');
zE('webWidget', 'reset');
zE('webWidget', 'open');
}
}
// finally apply (or reapply) widget settings if needed (see note below)
zE('webWidget', 'updateSettings', {
webWidget: {
chat: {
departments: {
select: 'Shopping Cart'
}
}
}
});
});
</script>
El último paso de este script usa la API updateSettings para aplicar o volver a aplicar la configuración del widget. En el ejemplo anterior, el departamento "Carrito de la compra" se aplica cada vez que el widget se conecta o se vuelve a conectar. Este flujo de trabajo se describe con más detalle en el artículo relacionado: ¿Puedo volver a aplicar el departamento después de que un visitante de chat agotado se vuelve a conectar?
Para validar que ha configurado correctamente esta solución, verifique el estado actual del widget cuando se conecta. Luego cierre, restablezca y vuelva a abrir el widget si es necesario para asegurarse de que el formulario previo al chat siempre se muestre a un visitante que se vuelve a conectar.
Descargo de responsabilidad de la traducción: Este artículo ha sido traducido usando software de traducción automática para proporcionar una idea básica del contenido. Se han realizado esfuerzos razonables para proporcionar una traducción exacta, sin embargo, Zendesk no garantiza la exactitud de la traducción.
Si surge alguna pregunta relacionada con la exactitud de la información incluida en el artículo traducido, consulte la versión en inglés del artículo, que es la versión oficial.