Pergunta

Quando a conexão de chat de um visitante expira, mas ele não fecha a janela ou aba na qual o widget está carregado e se reconecta para enviar uma nova mensagem, o formulário pré-chat não é apresentado automaticamente a ele. Existe uma maneira de exigir que um visitante sempre veja o formulário pré-chat no Web Widget quando ele se reconectar após um tempo limite?

Resposta

Observação: Se uma mensagem de um gatilho de chat for exibida em vez do seu formulário pré-chat, atualize a condição do gatilho de Quando um visitante carregar o widget de chat para Quando um visitante solicitar um chat.

Por padrão, um visitante ignora o formulário pré-chat quando se reconecta. Force o aparecimento do formulário pré-chat aplicando o script abaixo, antes do script existente do Web Widget (Classic):

<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');
}
}
</script>

Teste seu fluxo de trabalho. Se necessário, aplique ou aplique novamente as configurações do widget adicionando o script abaixo após o script adicionado:

<script>
zE('webWidget', 'updateSettings', {
    webWidget: {
  chat: {
    departments: {
    select: 'Shopping Cart'
    }
  }
}
});
});
</script>

Essa etapa final usa a API updateSettings para aplicar ou reaplicar as configurações do widget. No exemplo acima, a condição Shopping Cart department é aplicado quando o widget é conectado ou reconectado pela primeira vez. Esse fluxo de trabalho é discutido em mais detalhes no artigo relacionado: Posso reaplicar o departamento depois que um visitante de chat expirado se reconectar?

Confirme se você configurou essa solução corretamente. Verifique o estado atual do widget quando ele se conectar. Em seguida, feche, redefina e reabra o widget para garantir que o formulário pré-chat sempre seja exibido para um visitante que está se reconectando.

Aviso Legal: Este artigo destina-se apenas a fins informativos. O Zendesk não oferece suporte nem garantia ao código. Publique problemas encontrados nos comentários ou pesquise por uma solução online.

Aviso sobre a tradução: este artigo foi traduzido por um software de tradução automática para oferecer a você uma compreensão básica do conteúdo. Medidas razoáveis foram tomadas para fornecer uma tradução precisa, no entanto, a Zendesk não garante a precisão da tradução.

Em caso de dúvidas relacionadas à precisão das informações contidas no artigo traduzido, consulte a versão oficial do artigo em inglês.

Powered by Zendesk