Voz + chat, un solo asistente
- Voice — un clic inicia una conversación de voz en directo con la configuración completa del asistente: modo de motor, voz, base de conocimientos, herramientas, barreras de seguridad. Durante la sesión, la visualización de presencia se mantiene grande y las últimas palabras pronunciadas aparecen en pequeños grupos de subtítulos; la transcripción completa sigue disponible en History, donde las llamadas web usan la dirección
web. - Chat — el mismo asistente, los mismos prompts y la misma base de conocimientos en forma de texto, para quienes no pueden o no quieren hablar.
Idiomas de los visitantes
Los controles, formularios, pantallas de verificación y errores estándar del widget admiten 86 idiomas. Se utiliza primero el idioma preferido del navegador. La detección del país sirve como alternativa; se usa el inglés si no se encuentra un idioma compatible. Los idiomas de derecha a izquierda tienen un diseño adaptado. Tus saludos, nombres de asistentes, etiquetas de campos editadas y otros textos personalizados se conservan. El widget no traduce las conversaciones. La comprobación de seguridad utiliza sus propios idiomas disponibles.Incrustación
Crea un widget en Settings → Channels → Web Widget, y luego pega un fragmento de código del editor. Elige Display:- Floating
- Inline
El valor predeterminado — una burbuja de lanzador en una esquina. Se aplican Position e Initial state. Prioriza el cargador de script (configura
allow="microphone" en el iframe automáticamente):Sitios web permitidos
Indica el o los sitios web que pueden incrustar el widget (orígenes exactos comohttps://example.com, o comodines de subdominio como *.example.com). Localhost es compatible para desarrollo. Los orígenes son opcionales al crear o guardar un widget.

Web Widget & AI Avatar — ajustes de un widget de ejemplo inactivo
- Una lista vacía no significa “abierto a cualquier sitio”: los orígenes externos quedan bloqueados. Solo el propio dominio de la plataforma permanece permitido, para que la vista previa en directo dentro de la app siga funcionando.
- Añade cada host de sitio web que vaya a cargar el fragmento antes de publicarlo. Si el widget no carga en el sitio de un cliente, revisa primero Sitios web permitidos.
Personalización
- Display — Floating (lanzador en una esquina) o Inline (incrustación en la página). Position e Initial state solo se aplican a Floating.
- Colors and branding — color del lanzador, acento del panel, logotipo; la marca del tenant se aplica automáticamente en dominios de marca blanca.
- Position — la esquina donde se coloca el lanzador flotante (oculto para Inline).
- Modes — solo voz, solo chat, o ambos.
- Voice presence — visualizador de audio clásico, o un virtual AI avatar (ver más abajo).
- Estilo del visualizador — Aura, Bar, Wave, Radial, Grid, Satén o Semitono. Satén (brillante) y Semitono (impresión de puntos) son orbes animados en tu color de acento: el contorno permanece quieto mientras el interior se mueve con la voz del asistente, y el botón de llamada se apoya en el borde inferior del orbe.
- Launcher icon — Assistant orb, Chat bubbles, Question mark, Smiley face, Team o Hand wave. Se aplica a solo chat, solo voz y ambos. Assistant avatar también está disponible si el asistente seleccionado tiene foto de perfil. Logo utiliza el logotipo de cabecera del widget.
- Launcher label — preajustes (No text por defecto; Help, Ask anything, Assistance, Support, Live Chat, Need help?) traducidos según el idioma del navegador del visitante. El modo solo avatar sigue usando un texto de lanzador personalizado opcional para el CTA glass.
- Texts — mensaje de bienvenida, aviso de IA, aviso de privacidad.
- Pre-chat form — formulario opcional antes de iniciar el chat o la voz (ver más abajo).
Avatar de IA virtual
Los avatares virtuales requieren la función AI Avatar. En el editor del widget, configura Voice presence como AI avatar y elige un avatar.- Layouts
- Avatar only (full-bleed) — tarjeta compacta centrada en el rostro. Los widgets Floating pueden iniciar Expanded o Minimized; Inline siempre muestra la tarjeta en su sitio.
- Avatar + chat — presencia del avatar junto con el marco clásico del panel de chat/voz.
- Billing — las sesiones de voz se facturan a la tarifa normal por minuto de conversación, más el recargo Web widget virtual avatar por minuto mientras un avatar virtual esté activo; los mensajes de chat de texto simple enviados y recibidos facturan créditos por mensaje a la tarifa Web chat (sent) / Web chat (received) del espacio de trabajo. Las tarifas actuales están en la página Usage; consulta también Cómo se facturan los minutos.
- Sin acceso a AI Avatar, el editor muestra una opción de mejora de plan y la API rechaza activar la presencia de avatar.
Formulario previo al chat
Abre el widget en el editor, ve a la pestaña Mensajes, busca Pre-chat form y activa Enable. Los visitantes rellenan entonces los campos antes de que empiece la sesión.- Las Suggestions proceden de los campos de contacto (nombre, correo electrónico, teléfono), las variables de entrada del asistente seleccionado y los atributos de Audience del espacio de trabajo. También puedes añadir claves personalizadas.
- Los valores enviados se convierten en input variables de la llamada (
{{variable_key}}), actualizan el lead de Audience cuando hay campos de identidad presentes, y aparecen en History bajo Pre-chat form / Input variables. - Los campos obligatorios se validan antes de que un visitante pueda iniciar una sesión.
Antes de publicar el widget
1
Añade al menos un sitio web permitido
Indica cada sitio que vaya a incrustar el widget. Sin orígenes, los hosts externos no pueden cargar la configuración ni generar tokens.
2
Prueba primero el asistente con llamadas desde el navegador
El widget usa la misma ruta de llamada web que la llamada de prueba del editor del asistente — si esa funciona bien, el widget también funcionará.
3
Ten en cuenta los permisos del micrófono
Los navegadores exigen HTTPS para acceder al micrófono. La página anfitriona no debe bloquear el micrófono mediante
Permissions-Policy. Las incrustaciones por script o componente web configuran allow="microphone" en el iframe automáticamente.4
Actualiza tu política de privacidad
Las conversaciones de voz se procesan como llamadas (transcripciones, grabación opcional con flujo de consentimiento). Menciona el widget en tu política de privacidad.
Solución de problemas
El widget no aparece en absoluto
El widget no aparece en absoluto
Confirma que el fragmento de incrustación está antes de la etiqueta de cierre
</body>, haz una recarga forzada (o pruébalo en una ventana privada) para descartar HTML en caché, comprueba que tu plan incluye el widget web y busca errores de JavaScript en la consola del navegador. Copia el fragmento de nuevo desde el editor del widget si has cambiado la clave del conector desde entonces.El widget carga en otros sitios pero no en este
El widget carga en otros sitios pero no en este
Revisa primero Sitios web permitidos. Una lista vacía bloquea por diseño cualquier host externo; añade el origen exacto (o un comodín
*.example.com) en el que está incrustado el widget.La voz no se inicia
La voz no se inicia
La voz requiere HTTPS. Confirma que la página se sirve por HTTPS, que el navegador ha concedido permiso de micrófono, que el micrófono funciona en otras apps y que ninguna VPN ni firewall está bloqueando WebRTC. Las incrustaciones por script y componente web configuran
allow="microphone" automáticamente — una incrustación de iframe sin procesar necesita añadir ese atributo manualmente.El chat no responde
El chat no responde
Busca errores en la consola del navegador, confirma que el asistente funciona desde una llamada o chat de prueba en el editor del asistente, y recarga la página para iniciar una sesión de widget nueva.
Las respuestas del Pre-chat form no llegan al asistente
Las respuestas del Pre-chat form no llegan al asistente
Las respuestas llegan bajo la clave de cada campo, así que elige la sugerencia (o define la clave personalizada) que coincida con la variable que lee tu asistente, y guarda el widget antes de volver a probar.
Los cambios en el editor no se reflejan
Los cambios en el editor no se reflejan
Asegúrate de haber guardado los ajustes del widget, y luego haz una recarga forzada o pruébalo en una ventana privada; un fragmento de incrustación antiguo en caché también puede ocultar un cambio de configuración reciente.
Incrustación en WordPress u otro CMS
Incrustación en WordPress u otro CMS
Usa un bloque de HTML personalizado, mantén el fragmento antes de la etiqueta de cierre
</body>, y borra la caché de cualquier plugin de caché después de guardar. Los plugins de seguridad o firewall a veces bloquean el script del widget — desactívalos de uno en uno para aislar la causa.API & MCP
Gestiona widgets mediante programación con la API REST pública (/api/v1/widget-connectors) y las herramientas MCP (create_widget_connector, update_widget_connector, …). allowed_origins es opcional; si está vacío u omitido, bloquea los hosts externos. Scope: assistants:write. El acceso al widget y a AI Avatar depende de tu plan.
Los widgets nuevos usan Assistant avatar de forma predeterminada en Logo y siguen automáticamente la foto actual del asistente. Elige Custom logo para mostrar la carga. Haz clic en la imagen para subirla o sustituirla. El logotipo personalizado se conserva al cambiar de origen; guarda para publicar. Los widgets existentes conservan su logotipo hasta que cambies el origen.
update_widget_connector.
Para usar un orbe como visualizador de voz, define el estilo del visualizador en el tema (satin o halftone). El objeto del tema reemplaza el tema actual, así que incluye los demás ajustes del tema que quieras conservar.
Verificar visitantes por correo o SMS
En Ajustes → Widgets web, activa Verificar visitantes antes de empezar y elige Correo o SMS. Está disponible en espacios directos de la plataforma y en el espacio propio de un revendedor, también con su marca. Se excluyen los espacios de clientes de un revendedor. Los códigos por correo se envían a través de la plataforma sin créditos adicionales. No es necesario configurar un remitente en el espacio de trabajo. La verificación por SMS admite números móviles internacionales en los destinos compatibles. Selecciona el prefijo del país o utiliza el país sugerido según tu ubicación. La entrega depende de la disponibilidad en el país de destino. Al guardar con la verificación SMS activada, aceptas el precio indicado junto a SMS y en la información emergente: actualmente 80 créditos por SMS de verificación aceptado, incluidos los reenvíos. Comprobar códigos y regresar con un permiso válido es gratis. Un rechazo libera la reserva SMS; una entrega incierta queda pendiente hasta resolverse. Estos mensajes no aparecen como conversaciones en History. El visitante introduce el correo o teléfono elegido en el formulario existente y después un código de seis dígitos. El SMS requiere además permiso para recibir el mensaje. El código caduca a los 10 minutos; se limitan las comprobaciones y reenvíos. Chat y llamadas requieren verificar la identidad. Un correo verificado solo confirma ese correo, y un teléfono verificado solo ese número. Otras identidades introducidas no se verifican ni fusionan automáticamente. Recordar este navegador conserva un permiso revocable durante 7 días; sin esa opción, la sesión dura como máximo 30 minutos. El navegador nunca guarda el código. La privacidad del navegador puede limitar el permiso a la página actual. Olvidar este navegador, la caducidad y los cambios de configuración o método invalidan el permiso. Cambiar de dirección requiere otra verificación. Activa Chat web y Llamadas web por separado en Ajustes → Memoria y en los canales de lectura/escritura del asistente. El plan debe incluir memoria y el visitante debe aceptarla por separado. Estos canales web y la memoria SMS solo están disponibles en espacios raíz; el envío normal de SMS sigue disponible para clientes de revendedores. Las sesiones web anónimas no usan memoria del cliente. Se mantienen alcance, categorías, consentimiento y retención. Se puede cambiar el permiso de memoria sin otro código. La API REST y MCP ofrecen los mismos métodos, disponibilidad, precios SMS y canales de memoria. Consulta y acepta el precio actual antes de activar SMS. El correo requiere que la verificación por correo de la plataforma esté disponible, sin aceptar un precio SMS.Tiempo de espera de las respuestas
En Texto del chat → Retraso de respuesta, elige Desactivado, Tiempo fijo o Dinámico. Desactivado no añade espera: los puntos aparecen mientras el asistente prepara la respuesta y esta se muestra en cuanto llega. Tiempo fijo muestra un control de duración. Dinámico elige automáticamente una nueva espera de 1 a 10 segundos para cada respuesta, sin controles adicionales. El control de tiempo fijo permite de 0 a 10 segundos. Es una espera mínima; el asistente puede tardar más. Las llamadas de voz no cambian. Este ajuste también está disponible mediante la API y las herramientas MCP del widget.Subida de archivos e imágenes
Los visitantes pueden adjuntar archivos a un mensaje de chat con el clip, arrastrándolos al campo de texto o pegando una imagen. La subida empieza de inmediato y muestra una vista previa; el mensaje puede enviarse cuando todos los archivos estén listos. Formatos compatibles: PNG, JPG, WEBP, GIF, PDF, DOCX, TXT, MD, CSV y JSON, hasta 10 MB cada uno y 5 archivos por mensaje. Las imágenes se muestran directamente al asistente (el modelo de chat debe admitir imágenes; si no, se usa una breve descripción generada). Los documentos se leen como texto y se entregan al asistente junto con el mensaje. Los adjuntos aparecen en la burbuja del visitante, en la vista previa del chat del asistente en el panel y después en el Historial, en la transcripción del chat: las imágenes se muestran con su descripción y los archivos se abren mediante un enlace temporal. Las subidas están activadas por defecto. Desactívalas por widget en Formulario previo → Permitir subir archivos e imágenes en el chat (por API y MCP:chat_attachments_enabled en el tema del widget). Los archivos se guardan en el almacenamiento privado de medios de tu espacio de trabajo junto con el historial del chat y se eliminan según tu retención de datos cuando se purga la transcripción o el chat, y al eliminar el espacio de trabajo.
Automatizaciones del chat web
Selecciona Automations → Conversation started, tu asistente y, si lo necesitas, Web chat como plataforma. Se ejecuta cuando el visitante se conecta al chat, también en la vista previa del widget. Con un formulario previo, sucede después de Continuar y de una validación correcta; abrir el widget no inicia una conversación. Volver a conectarse a la misma sesión no crea otra ejecución. Añade una acción HTTP Request para enviar un webhook a tu sistema. Los campos del formulario están disponibles en{{data.preform.values.customer_email}} (sustituye la última parte por la clave del campo); las variables de entrada del asistente están en data.input_variables. El evento incluye referencias a la conversación, el asistente y la conexión del widget, además de los datos de contacto disponibles. Es una notificación asíncrona y no devuelve variables al prompt del asistente.
Compartir pantalla
Activa General → Compartir pantalla para que los visitantes muestren una pantalla, ventana o pestaña al asistente de IA durante un chat o llamada de voz. Está desactivado por defecto y requiere tanto el widget web como la función de compartir pantalla en el plan. Si el plan no la incluye, el interruptor está deshabilitado. La tarifa mostrada se aplica por cada minuto real de pantalla compartida; se suman los cargos de voz y avatar cuando se usan. El historial muestra la duración y los créditos del uso compartido. Los archivos e imágenes mantienen su ajuste independiente. Tras iniciar la conversación, el visitante elige el icono de pantalla junto al micrófono (llamada de voz) o al clip (chat), selecciona el contenido en el navegador y hace una pregunta. El icono permanece resaltado mientras se comparte; al pulsarlo de nuevo se deja de compartir, igual que al silenciar el micrófono. Finalizar la sesión, cambiar de pestaña en el widget o cerrarlo también detiene el uso compartido. No se comparte el audio del sistema ni de las pestañas. Se necesita un navegador de escritorio compatible con la captura de pantalla y una página HTTPS; en el móvil el icono no aparece. En iframes existentes, añadedisplay-capture al atributo allow y permítelo en la Permissions Policy del sitio. Las integraciones por script incluyen este permiso. El asistente describe el contenido visible, pero no puede controlar el dispositivo. Las capturas se procesan bajo demanda y no se guardan como archivos adjuntos; sus descripciones pueden aparecer en el historial.
Configúralo mediante la API REST de widgets, las herramientas MCP create_widget_connector y update_widget_connector, o la CLI: