📡 Integração de Eventos

O widget TAU emite eventos que podem ser capturados para integração com sistemas de analytics, automações ou outras funcionalidades do seu site.

analytics Rastreamento de Conversões

Use os eventos do widget para rastrear conversões, engajamento e métricas importantes do seu atendimento ao cliente.

🎯 Eventos Disponíveis

Loaded app event

Disparado quando o widget carrega completamente.

Opened chat window event

Disparado quando o usuário abre a janela do chat.

Sent message event

Disparado quando o usuário envia uma mensagem.

Clicked button event

Disparado quando o usuário clica em botões dentro do chat.

conversion event

Disparado quando ocorre uma conversão ou ação importante.

toolResponse event

Disparado quando uma ferramenta é executada no chat.

📥 Capturando Eventos

Para capturar os eventos do widget, use o event listener de messages:

Implementação Básica

window.addEventListener('message', function(event) {
    // Verificar origem por segurança
    if (event.origin !== 'https://app.taubot.ai') {
        return;
    }
    
    // Processar diferentes tipos de eventos
    switch(event.data.type) {
        case 'conversion':
            console.log('Evento de conversão:', event.data.data);
            // Enviar para seu sistema de analytics
            analytics.track('TAU Conversion', event.data.data);
            break;
            
        case 'toolResponse':
            console.log('Ferramenta executada:', event.data.data);
            break;
            
        case 'Loaded app':
            console.log('Widget carregado');
            break;
            
        case 'Opened chat window':
            console.log('Chat aberto');
            break;
            
        case 'Sent message':
            console.log('Mensagem enviada');
            break;
            
        case 'Clicked button':
            console.log('Botão clicado');
            break;
    }
});

🔧 Controle Programático

O widget também oferece métodos JavaScript para controle programático:

window.myChatbot.openChat() method

Abre a janela do chat programaticamente.

// Abrir o chat
window.myChatbot.openChat();
window.myChatbot.closeChat() method

Fecha a janela do chat programaticamente.

// Fechar o chat
window.myChatbot.closeChat();
window.myChatbot.isChatOpen property

Verifica se a janela do chat está aberta.

// Verificar se está aberto
const isOpen = window.myChatbot.isChatOpen;
window.myChatbot.updateConfig() method

Atualiza a configuração do widget em tempo real.

// Atualizar configuração
window.myChatbot.updateConfig({
    defaultMessage: 'Nova mensagem',
    enableWhatsApp: true
});
window.myChatbot.openChatWithMessage() method

Abre o chat com uma mensagem específica pré-preenchida.

// Abrir com mensagem específica
window.myChatbot.openChatWithMessage('Preciso de ajuda urgente!');

📊 Exemplos de Integração

Google Analytics

window.addEventListener('message', function(event) {
    if (event.origin !== 'https://app.taubot.ai') return;
    
    if (event.data.type === 'Opened chat window') {
        gtag('event', 'chat_opened', {
            event_category: 'engagement',
            event_label: 'tau_widget'
        });
    }
    
    if (event.data.type === 'conversion') {
        gtag('event', 'conversion', {
            event_category: 'lead_generation',
            value: event.data.data.value || 1
        });
    }
});

Facebook Pixel

window.addEventListener('message', function(event) {
    if (event.origin !== 'https://app.taubot.ai') return;
    
    if (event.data.type === 'conversion') {
        fbq('track', 'Lead', {
            content_name: 'TAU Widget Conversion',
            content_category: 'customer_support'
        });
    }
});

Sistema Personalizado

window.addEventListener('message', function(event) {
    if (event.origin !== 'https://app.taubot.ai') return;
    
    // Enviar para API personalizada
    if (event.data.type === 'Sent message') {
        fetch('/api/chat-events', {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json',
            },
            body: JSON.stringify({
                event_type: 'message_sent',
                timestamp: new Date().toISOString(),
                user_agent: navigator.userAgent,
                page_url: window.location.href
            })
        });
    }
});

🛡️ Segurança

security Verificação de Origem

Sempre verifique a origem dos eventos para garantir que são provenientes do widget TAU oficial.

Melhores Práticas de Segurança

🧪 Testando Eventos

Console de Debug

Use este código para debugar todos os eventos do widget:

window.addEventListener('message', function(event) {
    if (event.origin !== 'https://app.taubot.ai') return;
    
    console.group('TAU Widget Event');
    console.log('Type:', event.data.type);
    console.log('Data:', event.data.data);
    console.log('Timestamp:', new Date().toISOString());
    console.groupEnd();
});
analytics Métricas Avançadas

Com a integração de eventos, você pode criar dashboards personalizados e acompanhar métricas detalhadas sobre o engajamento dos usuários com o widget.