Los triggers de Oct8ne ofrecen la posibilidad de interactuar con el visitante en el momento en que se den unas circunstancias concretas definidas previamente en el apartado de ‘Triggers’ dentro del dashboard de Oct8ne (por ejemplo: tiempo en la página o una dirección URL específica).
Pero a veces estas condiciones no son suficientes para cumplir casos muy concretos que se pueden dar en algunas páginas web y, por esto, nacen los triggers personalizados de Oct8ne. Gracias a ellos ya no habrá obstáculos a la hora de definir las condiciones para disparar del chat. Tendremos libertad absoluta para escoger el momento idóneo en el que queremos iniciar una conversación con el visitante.
¿Pero qué se necesita para crear un trigger personalizado?
Sigue los pasos que te explicamos a continuación para ponerlo todo a punto en tan sólo unos minutos. Es aconsejable que la implementación se lleve a cabo por el equipo técnico informático:
1. Genera el código dinámico que se adecue a tu propósito:
Lo primero que necesitas es tener claras las condiciones que, en caso de cumplirse, abrirán el chat de Oct8ne y tener un control sobre ellas mediante variables Javascript en las diferentes páginas de nuestro sitio web donde queremos que actúe el trigger asignando valores a cada una, según el comportamiento que les corresponda ante las interacciones del usuario.
Vamos a suponer que queremos que se abra el chat de Oct8ne cuando el visitante supere un valor de carrito de 100€ y se encuentre en la categoría de productos “Men”. Esto implicaría crear una variable que adopte el valor numérico correspondiente a la suma de precios de todos los productos que el usuario tiene en su carrito y otra variable de tipo texto que adquiera el nombre de la categoría de productos en la que se sitúe en ese momento el usuario.
El objetivo final es que las variables que manejemos acaben apareciendo como un parámetro más en el código de Oct8ne que se adhiere a nuestra página web, en la propiedad oct8ne.customData:
<script type="text/javascript">
var oct8ne = document.createElement("script");
...
valorCarro:100,
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(oct8ne, s);
Cuando hayamos finalizado con el control de las variables, debemos dirigirnos al dashboard de Oct8ne y crear un nuevo trigger que contenga, como mínimo, una condición personalizada (tal y como se muestra en el desplegable de la imagen).
Debemos rellenar estas condiciones con el mismo nombre que le hayamos puesto en el código de Oct8ne y la comparación con el valor que deseemos, pero es muy importante que esta se corresponda con el tipo de dato; es decir, no se puede declarar que una cadena de caracteres sea mayor que otra porque no funcionará.
No se permite la evaluación de propiedades anidadas o subobjetos, por ejemplo, si se define en las condiciones que la propiedad “carro.valor” sea mayor de 100, lo que se evaluará será la propiedad oct8ne.customData[“carro.valor”], NO como la propiedad valor dentro de carro: oct8ne.customData.carro.valor.
Algunos ejemplos de condiciones personalizadas, incluyendo el caso del paso anterior:
También se comprobar si simplemente el parámetro se ha añadido o no, sin importar su valor con Existe y No existe.
Cómo actualizar el valor de las variables en tiempo real
El valor de las propiedades definidas como condiciones normalmente se evalúa al cargar la página y no varía hasta que se cambia o se recarga la página.
En el caso que queramos actualizar un valor a partir de algún evento que haya sucedido en la página y evaluarlo para comprobar si se ha de lanzar un trigger, se puede crear una llamada al siguiente método:
oct8ne.updateTriggerValue (nombrePropiedad, nuevoValor)
Por ejemplo, si tenemos definida la variable oct8ne.customData.valorCarro=0, y el visitante añade algún producto al carro mediante Ajax, podemos llamar al método anterior de la siguiente manera oct8ne.updateTriggerValue ("valorCarro", 150).
Esta llamada actualizará su valor a oct8ne.customData.valorCarro=150, y reevaluará los triggers por si se debe lanzar alguno al haberlo modificado.