REDA One Centro de ayuda
ES
Idioma
English EN Español ES Português PT Italiano próximamente Français FR Deutsch próximamente العربية próximamente
reda.one ↗
Inicio / REDA AI / Canales e implementación / Personalización de la interfaz del widget

Personalización de la interfaz del widget

Aplica tu marca al widget de chat Toda la personalización del widget se realiza mediante atributos data-* en la etiqueta de script de inserción. No se necesitan cambios de CSS ni de JavaScript — el widget usa un Shadow DOM que aísla sus estilos de tu sitio web.

Cómo funciona la personalización

El widget externo de REDA AI se renderiza dentro de un Shadow DOM, lo que significa que el CSS de tu sitio web no puede alcanzar el interior del widget y los estilos del widget no pueden afectar a tu página. Toda la personalización se realiza agregando atributos data-* a la etiqueta <script> de inserción.

Las clases de CSS no funcionan

Como el widget usa un Shadow DOM, agregar reglas de CSS que apunten a los nombres de clase del widget en la hoja de estilos de tu sitio web no tendrá ningún efecto. Usa en su lugar los atributos data-* que se enumeran a continuación.

Configuración de la definición de agente

Algunos ajustes de apariencia provienen del registro de Definición de agente en Salesforce, no del código de inserción:

Ajuste Dónde configurarlo Descripción
Welcome Message Definición de agente → Mensaje de bienvenida externo El primer mensaje que ven los visitantes cuando abren el chat
Imagen de la mascota Definición de agente → Imagen de la mascota Avatar personalizado que se muestra en la burbuja, en el hero de bienvenida y junto a los mensajes
Nombre del agente Definición de agente → Nombre para mostrar Se muestra en el encabezado y se usa en el título del hero de bienvenida
Saludo proactivo Definición de agente → Iniciar al cargar Desactivado de forma predeterminada. Cuando se activa, el panel envía un saludo en cuanto se monta en una página de registro, de modo que el agente abre con ideas sobre ese registro en lugar de esperar a que le pregunten.

Atributos obligatorios

Atributo Descripción
data-api-key Tu clave de API externa de REDA AI
data-endpoint La URL del endpoint de la API de chat de REDA AI

Estilo de la burbuja

La burbuja es el botón flotante en el que los visitantes hacen clic para abrir el chat. Puedes mostrarla como un círculo (predeterminado) o como un botón con forma de píldora con una etiqueta de texto.

Atributo Valores Predeterminado Descripción
data-bubble-style circle | pill circle Forma del botón flotante
data-bubble-label Cualquier texto (ninguno) Texto de la etiqueta que se muestra en la píldora (p. ej., “Ask Support”). Obligatorio para el estilo píldora.
data-bubble-size Número (px) 60 Diámetro de la burbuja circular (se ignora para el estilo píldora)
Ejemplo de burbuja píldora
data-bubble-style="pill"
data-bubble-label="Ask REDA AI"

Muestra un botón píldora redondeado con un ícono y el texto “Ask REDA AI”. Si hay una imagen de mascota configurada en la Definición de agente, esta reemplaza el ícono predeterminado en la píldora.

Estilo del encabezado

El encabezado aparece en la parte superior del panel de chat. Elige entre un encabezado con color (fondo con el color de tu marca) o un encabezado minimalista (fondo blanco y limpio).

Atributo Valores Predeterminado Descripción
data-header-style colored | minimal colored Estilo de fondo del encabezado
data-header-bg Color hexadecimal Igual que el color principal Color de fondo del encabezado (solo se aplica al estilo colored)
Ejemplo de encabezado minimalista
data-header-style="minimal"

Muestra un encabezado blanco y limpio con texto oscuro y un borde inferior sutil. El atributo data-header-bg se ignora al usar el estilo minimalista.

Hero de bienvenida

El hero de bienvenida es una sección con la marca que se muestra en el panel de chat. Muestra un avatar o ícono, un título grande y un subtexto opcional — creando una primera impresión acogedora.

Atributo Valores Predeterminado Descripción
data-show-welcome-hero true | false true Muestra u oculta la sección del hero de bienvenida
data-welcome-heading Cualquier texto “¿Cómo puede [Nombre del agente] ayudarte?” Título del hero. Usa {title} como marcador de posición para el nombre del agente.
data-welcome-subtext Cualquier texto (ninguno) Subtexto opcional debajo del título
Ejemplo de hero de bienvenida
data-welcome-heading="How can {title} help?"
data-welcome-subtext="Ask me anything about your properties"

El marcador de posición {title} se reemplaza con el nombre del agente y se muestra en el color de tu marca. Si hay una imagen de mascota configurada, aparece como un avatar circular encima del título.

Colores

Atributo Predeterminado Descripción
data-primary-color #0176D3 Color principal de la marca — se usa para la burbuja, el encabezado (estilo colored), los mensajes del usuario y los elementos de acento
data-header-bg Igual que el principal Fondo del encabezado (solo estilo colored)
data-user-msg-bg Igual que el principal Fondo de la burbuja del mensaje del usuario
data-user-msg-text-color #ffffff Color del texto dentro de las burbujas de mensajes del usuario
data-bg-color Predeterminado del tema Color de fondo del panel
data-bg-secondary-color Predeterminado del tema Fondo de la burbuja de mensajes del asistente y del indicador de escritura
data-text-color Predeterminado del tema Color del texto principal
data-border-color Predeterminado del tema Color de bordes y divisores
Ejemplo de colores de marca personalizados
data-primary-color="#1B5E20"
data-user-msg-bg="#2E7D32"
data-bg-color="#FAFAFA"

Define un esquema de color verde: burbuja y encabezado verdes, mensajes del usuario en un verde un poco más oscuro y un fondo del panel gris claro.

Diseño y posición

Atributo Valores / Tipo Predeterminado Descripción
data-display-mode bubble | docked-right | docked-left bubble Cómo se abre el panel — una tarjeta flotante o un panel de altura completa acoplado al borde derecho o izquierdo. Consulta Modo de visualización más abajo.
data-position bottom-right | bottom-left bottom-right En qué esquina aparece la burbuja. Es independiente del modo de visualización — puedes mantener la burbuja abajo a la izquierda y aun así acoplar el panel a la derecha.
data-panel-width Número (px) 400 Ancho del panel de chat. Solo en modo burbuja — se ignora cuando está acoplado.
data-panel-height Número (px) 550 Alto del panel de chat. Solo en modo burbuja — un panel acoplado siempre tiene altura completa.
data-dock-width Número (px), o cualquier ancho CSS (30vw) Se adapta a la pantalla Ancho del panel acoplado. Solo en modos acoplados. Omítelo y el panel se ajusta a la pantalla (aproximadamente un tercio de la ventana, dentro de límites razonables).
data-border-radius Número (px) 12 Radio de las esquinas del panel y la burbuja
data-z-index Número 999999 z-index CSS del widget (auméntalo si otros elementos se superponen)
data-title Texto AI Assistant Título del panel del widget que se muestra en el encabezado

Modo de visualización

El modo de visualización controla cómo se abre el panel de chat. La burbuja de lanzamiento siempre está presente en todos los modos — los visitantes hacen clic en ella para abrir el asistente, y el modo de visualización decide qué obtienen.

Modo Qué ve el visitante Ideal para
bubble
(predeterminado)
Una tarjeta de chat flotante que se abre justo encima de la burbuja y deja visible la mayor parte de la página. Sitios de marketing y de contenido, donde la página es lo principal y el chat es un complemento.
docked-right Un panel de altura completa que se desliza desde el borde derecho y permanece junto a la página. Conversaciones más largas, comparar opciones o leer resultados mientras se navega.
docked-left El mismo panel de altura completa, pero acoplado al borde izquierdo. Sitios cuyo propio contenido o controles están a la derecha.

Un panel acoplado le da mucho más espacio al asistente — útil cuando las respuestas incluyen tarjetas de propiedades, fotos o comparaciones que se sienten apretadas en la tarjeta flotante.

data-display-mode="docked-right"
data-dock-width="420"
La burbuja nunca desaparece. El modo de visualización solo cambia cómo se abre el panel — la burbuja de lanzamiento se muestra en los tres modos, y data-position sigue decidiendo en qué esquina se ubica. Si omites data-display-mode por completo, el widget se comporta exactamente igual que antes, así que las inserciones existentes no necesitan cambios.
Tamaño: ancho del panel frente a ancho del acoplamiento. data-panel-width y data-panel-height dan tamaño a la tarjeta flotante y se ignoran cuando está acoplado. data-dock-width da tamaño al panel acoplado y se ignora en modo burbuja. Si un ajuste de tamaño parece no tener efecto, verifica que estés configurando el que corresponde a tu modo de visualización. Omite data-dock-width y el panel se ajusta a la pantalla del visitante.
En teléfonos. Todos los modos se abren a pantalla completa en los teléfonos, por lo que un panel acoplado no necesita ningún manejo móvil especial. Consulta Comportamiento móvil para cambiar eso.
También en el portal de Comunidad. Los mismos tres modos están disponibles para el widget de Comunidad — elige el modo de visualización (Bubble, Docked Right, Docked Left) en el componente de REDA AI en Experience Builder. No se necesita código de inserción.

Tema

Atributo Valores Predeterminado Descripción
data-theme light | dark light Tema de color del widget. El modo oscuro usa fondos oscuros con texto claro.

Tipografía

Atributo Tipo Predeterminado Descripción
data-font-family Pila de fuentes CSS Pila de fuentes del sistema Familia de fuentes personalizada (p. ej., 'Poppins', sans-serif). La fuente debe estar cargada en tu página.
data-font-size Número (px) 14 Tamaño de fuente base para los mensajes y el campo de entrada

Comportamiento móvil

Atributo Valores / Tipo Predeterminado Descripción
data-mobile-breakpoint Número (px) 640 Ancho de pantalla por debajo del cual se activa el comportamiento móvil
data-mobile-fullscreen true | false true Cuando está habilitado, el panel de chat se expande a pantalla completa en dispositivos móviles

Comportamiento

Atributo Valores / Tipo Predeterminado Descripción
data-open-on-load true | false false Abre automáticamente el panel de chat cuando se carga la página
data-enable-voice true | false true Muestra el botón de voz (micrófono) para que los visitantes puedan dictar mensajes. Configúralo en false para ocultarlo. El botón solo aparece en los navegadores que admiten la entrada de voz. Consulta Entrada de voz.
data-typing-speed Número 25 Palabras por segundo para la animación de escritura al revelar las respuestas
data-cache-ttl-minutes Número (mín. 1) 5 Con qué frecuencia se actualiza la caché del script del widget (en minutos)

Texto e internacionalización (i18n)

Todo el texto visible para el usuario en el widget se puede sustituir con fines de marca o de traducción:

Atributo Predeterminado Descripción
data-input-placeholder Type a message... Texto de marcador de posición del campo de entrada
data-aria-open Open chat Etiqueta ARIA para la burbuja cuando el chat está cerrado
data-aria-close Close chat Etiqueta ARIA para la burbuja cuando el chat está abierto
data-aria-send Send message Etiqueta ARIA para el botón de enviar
data-aria-typing Assistant is typing Etiqueta ARIA para el indicador de escritura
data-error-rate-limited Please wait a moment before sending again. Mensaje de error de límite de tasa
data-error-max-messages This conversation has reached its limit. Please start a new one. Error de máximo de mensajes alcanzado
data-error-session-expired Session expired. Reconnecting... Mensaje de expiración de sesión
data-error-generic Something went wrong. Please try again. Mensaje de error genérico
data-error-connect Unable to connect. Please refresh and try again. Mensaje de fallo de conexión

Ejemplos completos

Inserción mínima (todos los valores predeterminados)

<script
  src="https://<org>.my.salesforce-sites.com/chat/resource/redaai__REDAAILoader"
  data-api-key="your-api-key"
  data-endpoint="https://<org>.my.salesforce-sites.com/chat/services/apexrest/redaai/chat/v1">
</script>

Usa todos los valores predeterminados: burbuja circular, encabezado con color, hero de bienvenida, tema claro y posición abajo a la derecha.

Burbuja píldora moderna con encabezado minimalista

<script
  src="https://<org>.my.salesforce-sites.com/chat/resource/redaai__REDAAILoader"
  data-api-key="your-api-key"
  data-endpoint="https://<org>.my.salesforce-sites.com/chat/services/apexrest/redaai/chat/v1"
  data-bubble-style="pill"
  data-bubble-label="Ask REDA AI"
  data-header-style="minimal"
  data-welcome-heading="How can {title} help?"
  data-welcome-subtext="Ask me anything about your properties">
</script>

Panel lateral acoplado

<script
  src="https://<org>.my.salesforce-sites.com/chat/resource/redaai__REDAAILoader"
  data-api-key="your-api-key"
  data-endpoint="https://<org>.my.salesforce-sites.com/chat/services/apexrest/redaai/chat/v1"
  data-display-mode="docked-right"
  data-dock-width="420"
  data-bubble-style="pill"
  data-bubble-label="Ask REDA AI"
  data-welcome-subtext="Ask me anything about your properties">
</script>

Un panel de altura completa se desliza desde el borde derecho cuando el visitante hace clic en la píldora; la página sigue siendo legible a su lado. Omite data-dock-width para que el panel se ajuste a la pantalla, o cámbialo por docked-left para acoplarlo al otro lado. Ten en cuenta que data-panel-width y data-panel-height no se aplican aquí — un panel acoplado siempre tiene altura completa, y data-dock-width define su ancho.

Colores de marca personalizados con tema oscuro

<script
  src="https://<org>.my.salesforce-sites.com/chat/resource/redaai__REDAAILoader"
  data-api-key="your-api-key"
  data-endpoint="https://<org>.my.salesforce-sites.com/chat/services/apexrest/redaai/chat/v1"
  data-theme="dark"
  data-primary-color="#6C63FF"
  data-title="Support Agent"
  data-position="bottom-left">
</script>

Encabezado con color sin hero de bienvenida

<script
  src="https://<org>.my.salesforce-sites.com/chat/resource/redaai__REDAAILoader"
  data-api-key="your-api-key"
  data-endpoint="https://<org>.my.salesforce-sites.com/chat/services/apexrest/redaai/chat/v1"
  data-bubble-style="pill"
  data-bubble-label="Chat with us"
  data-show-welcome-hero="false"
  data-primary-color="#D32F2F">
</script>

Internacionalizado (español)

<script
  src="https://<org>.my.salesforce-sites.com/chat/resource/redaai__REDAAILoader"
  data-api-key="your-api-key"
  data-endpoint="https://<org>.my.salesforce-sites.com/chat/services/apexrest/redaai/chat/v1"
  data-title="Asistente"
  data-bubble-style="pill"
  data-bubble-label="Pregunte"
  data-input-placeholder="Escribe un mensaje..."
  data-welcome-heading="¿Cómo puede {title} ayudarte?"
  data-welcome-subtext="Pregúntame sobre tu cuenta"
  data-aria-open="Abrir chat"
  data-aria-close="Cerrar chat"
  data-aria-send="Enviar mensaje"
  data-error-generic="Algo salió mal. Inténtalo de nuevo.">
</script>

Cómo probar las personalizaciones

  1. Agrega o modifica los atributos data-* en la etiqueta de script de inserción
  2. Actualiza tu página (recarga forzada con Ctrl+Shift+R o Cmd+Shift+R para omitir la caché)
  3. Verifica que la burbuja, el encabezado y el hero de bienvenida aparezcan como se espera
  4. Prueba en tamaños de pantalla de escritorio, tableta y móvil
  5. Prueba en varios navegadores (Chrome, Firefox, Safari, Edge)
  6. Envía un mensaje de prueba para verificar que la funcionalidad de chat sigue funcionando
Actualización de la caché

El cargador del widget incluye una invalidación de caché automática que se actualiza cada 5 minutos de forma predeterminada (configurable mediante data-cache-ttl-minutes). Si no ves tus cambios de inmediato, espera unos minutos o realiza una recarga forzada.

Preguntas frecuentes

No. El widget utiliza un Shadow DOM, lo que significa que el CSS externo no puede alcanzar sus elementos internos. Todos los estilos se controlan mediante los atributos data-* en la etiqueta de script de inserción.

Carga la fuente en tu sitio web (por ejemplo, mediante Google Fonts) y luego define data-font-family="'Tu fuente', sans-serif" en la etiqueta de inserción. El widget usará la fuente si está disponible en la página.

Se recomienda PNG con transparencia. JPEG también funciona. Sube una imagen cuadrada (de al menos 200×200 px) al campo Imagen de mascota en la Definición de agente. La imagen aparece en la burbuja, en el hero de bienvenida y junto a los mensajes.

El mensaje de bienvenida se define en el registro de Definición de agente en Salesforce (campo Mensaje de bienvenida externo), no en el código de inserción. El título y el subtexto del hero de bienvenida son independientes — esos se definen mediante data-welcome-heading y data-welcome-subtext.

Sí. Incluye la etiqueta de script de inserción solo en las páginas donde quieras que aparezca el widget. Como alternativa, usa lógica condicional en la plantilla de tu sitio para incluir o excluir el script.

El encabezado con color usa tu color principal (o header-bg) como fondo del encabezado con texto blanco. El minimalista usa un fondo blanco con texto oscuro y un borde sutil — un aspecto más limpio y moderno. Al usar el estilo minimalista, el atributo data-header-bg se ignora.

Próximos pasos

Consulta la guía Configuración del widget externo para la configuración inicial, o explora Configuración del agente de Comunidad para la implementación en el portal.