Saltar al contenido principal

Funciones

La API de ExpertoBot proporciona varios comandos de función para controlar el widget de chat. Todos los comandos se ejecutan usando la sintaxis EBot('comando').

open​

Abre el chat de ExpertoBot.

Uso:

EBot('open');

Descripción:

Este comando muestra el widget del chat en la pantalla. Si el chat ya está abierto, este comando no tiene ningún efecto.

Ejemplo:

// Abrir el chat desde un botón
setTimeout(function() {
EBot('open');
}, 5000); // 5 segundos

close​

Cierra el chat de ExpertoBot.

Uso:

EBot('close');

Descripción:

Este comando oculta el widget del chat. Si el chat ya está cerrado, este comando no tiene ningún efecto.

Ejemplo:

// Cerrar el chat después de un tiempo
document.getElementById('help-button-close').addEventListener('click', function() {
EBot('close');
});

toggle​

Alterna entre abrir y cerrar el chat.

Uso:

EBot('toggle');

Descripción:

Si el chat está cerrado, lo abre. Si está abierto, lo cierra. Este comando es útil para crear botones personalizados que controlen el widget.

Ejemplo:

// Botón que alterna el estado del chat
document.getElementById('toggle-chat').addEventListener('click', function() {
EBot('toggle');
});

Ejemplo con launcher personalizado:

// Ocultar launcher predeterminado y usar botón personalizado
EBot('config', {
launcher_hidden: true
});

document.querySelector('#customize-launcher').addEventListener('click', function() {
EBot('toggle');
});

isOpen​

Verifica si el chat está abierto.

Uso:

const isOpen = EBot('isOpen');

Retorna:

  • boolean: true si el chat está abierto, false si está cerrado.

Descripción:

Este comando permite verificar el estado actual del chat. Es útil para tomar decisiones condicionales en tu código.

Ejemplo:

EBot('onReady', function() {
const isOpen = EBot('isOpen');
console.log('Chat abierto:', isOpen);

if (isOpen) {
console.log('El chat está abierto');
} else {
console.log('El chat está cerrado');
}
});

Ejemplo con lógica condicional:

// Alternar solo si está cerrado
if (!EBot('isOpen')) {
EBot('open');
}

isReady​

Verifica si el widget está completamente inicializado y listo para usar.

Uso:

const isReady = EBot('isReady');

Retorna:

  • boolean: true si el widget está inicializado, false si aún no está listo.

Descripción:

Es recomendable verificar que el widget esté listo antes de llamar a otros comandos de la API. Esto es especialmente importante si tu código se ejecuta inmediatamente después de cargar la página.

Nota: Siempre verifica este estado antes de ejecutar funciones si el script puede cargarse después del contenido principal.

Ejemplo básico:

if (EBot('isReady')) {
EBot('open');
} else {
console.log('Widget aún está cargando...');
}

Alternativa recomendada: En lugar de verificar manualmente con isReady, considera usar EBot('onReady', callback) que ejecutará tu código automáticamente cuando el widget esté listo.

Ejemplo con patrón de verificación completo:

function openChatIfReady() {
if (EBot('isReady')) {
EBot('open');
return;
}

// Si no está listo, esperar a que esté listo (recomendado)
EBot('onReady', () => {
EBot('open');
});
}

openChatIfReady();