Como transmitir eventos do chat ao vivo a partir do seu site
Para ajudar desenvolvedores a se conectarem a ferramentas de análise ou reagirem a eventos no chat ao vivo, o widget envia eventos do navegador que podem ser detectados pelo seu código JavaScript. Você pode usar esses eventos para enviar dados a sistemas externos, como plataformas de análise, soluções de CRM ou ao próprio site.
Este artigo explica como acompanhar e transmitir eventos do chat ao vivo.
Lista de eventos
O widget registra eventos do navegador quando um assinante ou o próprio chat ao vivo realiza uma ação, como iniciar um chat, enviar uma mensagem ou clicar em um botão.
Cada evento tem seu próprio nome e um conjunto específico de dados. Todos incluem os campos padrão listados abaixo, e alguns adicionam mais informações sobre ações do assinante ou do chatbot.
| Evento | Quando é acionado | Campos |
spLiveChatLoaded |
Um assinante iniciou um chat no navegador. | timestamp, visitorId, phone |
spLiveChatOpened |
Um assinante abriu o widget manualmente. Não é acionado quando o chat abre automaticamente. | timestamp, visitorId, phone, chatId, subscriberId. |
spLiveChatClosed |
Um assinante fechou o widget. | timestamp, visitorId, phone, chatId, subscriberId. |
spGreetingButtonClicked |
Um assinante clicou em um botão da saudação ou do menu do chat ao vivo. | Objeto button, que inclui: text, type, id, payload. |
spChatInitiated |
Um assinante enviou a primeira mensagem. | Campo message com o texto da primeira mensagem. |
spMessageSent |
Um assinante enviou uma mensagem. | Para mensagens de texto: { message, type: 'text' }. Para anexos: { fileName, fileType, type: 'file' }. |
spMessageReceived |
O chat ao vivo enviou uma mensagem em um fluxo ou um atendente respondeu. | message, type, quick_replies, url. |
Cada evento inclui os seguintes campos:
timestamp |
Horário do evento no formato ISO 8601, como em 2025-11-10T14:32:05WITH. |
visitorId, phone |
ID do visitante.
Esses campos podem não aparecer caso o visitante ainda não tenha interagido com o chat ao vivo ou não tenha fornecido seus dados. |
chatId |
ID do projeto ativo, enviado quando o assinante inicia um chat. |
subscriberId |
ID do assinante atribuído após o registro.
Esses campos também podem não aparecer se não houver interação prévia. |
Transmissão de eventos
Para confirmar que os eventos do widget estão funcionando, você pode testá-los no navegador. Adicione o seguinte script a qualquer página onde o chat ao vivo esteja instalado:
<script>
document.addEventListener('spMessageSent', (event) => {
console.log('[LiveChat] visitor message sent', event.detail);
});
document.addEventListener('spMessageReceived', (event) => {
console.log('[LiveChat] operator message received', event.detail);
});
</script>
Você pode substituir o bloco console.log pelo código da sua integração ou ferramenta de análise. Depois disso, todos os eventos do chat ao vivo aparecerão no console do navegador.
Última Atualização: 26.11.2025
ou