AntiAdBlock.Core

Referencia de la Detection API

Referencia de la Detection API

El contrato para usar AntiAdBlock Core como detector headless. El mismo motor multi-señal se ejecuta, emite un resultado y no muestra nada. Tu código decide el resto.

Cómo activarla

La Detection API es un ajuste por sitio en los planes Max y Business. Cambia un sitio a este modo desde la tarjeta Modo del script de tu panel. No hace falta una etiqueta nueva: tu etiqueta script async actual empieza a emitir el resultado en lugar de mostrar el overlay de recuperación.

El payload del resultado

Cada resultado es un objeto congelado con exactamente cuatro claves. Llega a tu código mediante el evento aabc:detection, el callback AABC_ON_DETECT o el snapshot AABC_DETECTION que se describen abajo.

CampoTipoValores
detectedbooleantrue, false

Si se confirmó un bloqueador en esta visita.

blockerTypestring | nullextension, brave_shields, browser_protection, network_dns, unknown, null

Qué está bloqueando. null cuando detected es false. El bloqueo a nivel de red y DNS ocurre fuera del navegador y normalmente no se puede desactivar con un clic.

pathstring | nullA, B, C, FORCE, null

Qué umbral de detección confirmó el resultado. null cuando detected es false. FORCE es el disparador manual de prueba de más abajo.

browserstringchromium, firefox, edge, brave, webkit, other

La familia del navegador del visitante, útil para adaptar tu propia respuesta.

Ejemplo

{ "detected": true, "blockerType": "extension", "path": "A", "browser": "chromium" }

Tres formas de leer el resultado

Elige la que encaje con tu montaje. El callback es el más robusto: una llamada directa no la pueden interceptar otros scripts de la página, un evento del DOM sí.

aabc:detection

Evento de window. Añade el listener antes de nuestra etiqueta para que esté listo cuando se dispare el resultado.

window.addEventListener("aabc:detection", function (event) {
  var d = event.detail; // { detected, blockerType, path, browser }
  if (d.detected) {
    // Your logic here.
  }
});

window.AABC_ON_DETECT

Callback. Define este global y lo llamamos con el mismo objeto. Recomendado por fiabilidad.

window.AABC_ON_DETECT = function (d) {
  // { detected, blockerType, path, browser }
  if (d.detected) {
    // Your logic here.
  }
};

window.AABC_DETECTION

Snapshot. El último resultado se guarda en window para los listeners que se registran tarde, algo habitual en las aplicaciones de una sola página.

var d = window.AABC_DETECTION;
if (d && d.detected) {
  // Your logic here.
}

Cuándo se dispara

El silencio no significa "sin bloqueador"

Si un sitio no está verificado, hay un kill switch activo o el visitante está marcado como bot, no se emite ningún evento. Trata la ausencia de resultado como "sin respuesta" y toma tu camino normal, sin restricciones, por defecto. Dicho de otro modo, falla en abierto.

Cómo probarla

Añade #aabc_force a cualquier URL de tu sitio para forzar un resultado positivo (detected: true, path: "FORCE") sin overlay. Es una forma de ejercitar tu propio manejador sin instalar un bloqueador.

Aplicaciones de una sola página

El resultado se dispara al cargar la página y en las revisiones por foco, no en un cambio de ruta del lado del cliente. En una SPA, lee window.AABC_DETECTION tras la navegación para obtener el último resultado conocido, y registra tu listener una sola vez en window.

Sigue