API JavaScript
Tudo o que mp.js oferece ao seu código: consentimento, seu ID de cliente, eventos personalizados, etapas sem mudança de endereço, hooks e atributos HTML. Nada disso é obrigatório: o snippet sozinho já grava.
1. Duas formas de chamar
mp.js carrega de forma assíncrona. O código executado antes do carregamento coloca suas chamadas na fila window.mp_q; mp.js a processa assim que fica disponível. Depois, as mesmas funções ficam disponíveis em window.MousePlayer.
Sempre use window.mp_q = window.mp_q || [], nunca window.mp_q = []. mp.js continua monitorando esse array: substituí-lo por outro descartaria todas as chamadas posteriores, inclusive a retirada de consentimento.
O snippet de instalação também define uma função provisória mp(...) que usa a fila da mesma forma. Ambas as formas aceitam os mesmos comandos: consent, set, event, step, get, on e off.
2. Consentimento
Sem consentimento, nada é gravado. Se sua ferramenta de consentimento for reconhecida pelo MousePlayer, você não precisa fazer nada disso; caso contrário, transmita a decisão por conta própria.
A retirada entra em vigor imediatamente na página: os listeners são removidos, os dados no buffer são descartados e a conexão é encerrada. Consulte MousePlayer e consentimento.
3. Seu ID de cliente
Com um ID próprio, todos os dispositivos de uma pessoa aparecem como um único visitante nas listas, e você pode pesquisar um caso de suporte pelo número que conhece. O ID também é aplicado às visitas anteriores do mesmo navegador nos últimos 30 dias.
Use um número interno, em vez de um endereço de e-mail ou nome. O MousePlayer exibe o ID onde quer que o visitante apareça.
Consultar IDs
4. Eventos personalizados
Os eventos enviados aparecem na linha do tempo da reprodução, podem servir como metas e etapas de funil e são enviados aos seus webhooks e ferramentas conectadas. Os parâmetros são valores curtos: números, textos de até 255 caracteres e chaves de até 64 caracteres.
- Nomes: letras minúsculas com sublinhados, no máximo 128 caracteres. Use o mesmo nome para a mesma ação em todos os lugares: uma meta exige correspondência exata do nome.
- Não inclua dados pessoais nos parâmetros. Eles são armazenados e exibidos como qualquer outro evento.
5. Etapas sem mudança de endereço
Um checkout ou assistente que muda de tela, mas mantém o endereço, é uma única página para o MousePlayer. step() transforma cada tela em uma visualização de página separada, com sua própria captura, linha no mapa de calor e etapa de funil.
O nome deve ter de 1 a 40 caracteres entre a-z, 0-9, _ e -; espaços se tornam hifens, e qualquer outro caractere é rejeitado com um aviso no console. Uma navegação real encerra a etapa.
6. Contexto do produto
Em uma página de produto, informe ao MousePlayer o que está sendo visualizado. Somente estas chaves são aceitas; todo o restante é descartado para evitar a inclusão acidental de dados de clientes.
7. Hooks
Seu código pode reagir ao que o MousePlayer mede na página. Registre pela fila se o hook precisar estar disponível desde o primeiro momento.
| Nome | Quando | Campos |
|---|---|---|
exit_risk | o modelo de saída pontua a primeira visualização de página (uma vez por visita) | risk, reasons, session |
churn_risk | um visitante recorrente é identificado como propenso à perda | risk, reasons, session |
offer_shown | a oferta de saída é exibida | art, risk, grund, session |
offer_click | o botão da oferta é clicado | art, risk, grund, session, fehler |
offer_dismiss | a oferta é fechada | art, risk, grund, session |
survey_shown | uma pesquisa é aberta | survey, trigger, session |
survey_answer | o visitante responde | survey, type, value, option, sentiment, session |
survey_text | o texto de acompanhamento é enviado (já filtrado) | survey, text, session |
survey_dismiss | a pesquisa é fechada sem resposta | survey, step, session |
Quando a ponte GTM está ativa, os mesmos eventos também são enviados ao dataLayer (mp_exit_risk e assim por diante). MousePlayer.exitRisk() retorna o risco de saída atual ou null enquanto ele ainda não é conhecido.
8. Atributos HTML
data-mp-mask(ou a classemp-masked): o texto e os dados inseridos dentro do elemento são substituídos antes de saírem do navegador, tanto na captura quanto nas alterações e descrições de cliques.data-mp-ignore(oump-ignore) em um campo de formulário: seu valor não é gravado de forma alguma.data-mp-role: um dos valores price, price_old, cta_cart, cta_checkout, product_image, variant, shipping_info, returns_info, reviews, rating, stock, coupon, payment_methods, search, filter, heading, article_body, nav, media, form_field, contact_info. Outros valores são ignorados.
9. Excluir suas próprias visitas
Abra seu site uma vez com ?mp_exclude=1 e este navegador deixará de ser gravado; ?mp_exclude=0 desfaz essa opção. Para excluir uma rede inteira de escritório, informe os endereços IP nas configurações do projeto.
10. Um link para sua política de privacidade
Os visitantes podem ver e excluir o que foi gravado sobre eles. privacyUrl() retorna o link pronto com o ID deste navegador, ou null se não houver ID, pois sem consentimento nada foi gravado.