Saltar al contenido principal

Widgets para sitios web

Integra tu agente de voz IA en cualquier sitio web para que los visitantes puedan iniciar una conversación de voz directamente desde el navegador. La pestaña Widgets ofrece códigos de integración, opciones de personalización y ajustes de seguridad de dominio.

¿Buscas el widget de devolución de llamada?

El Widget de devolución de llamada funciona de forma muy distinta a los widgets de esta página: en lugar de iniciar una llamada de voz en el navegador, recoge el número de teléfono del visitante y hace que tu agente lo llame de vuelta. Consulta la página dedicada Widget de devolución de llamada.

Tipos de widget

Hanc.AI ofrece cuatro tipos de widgets en navegador, además de un Widget de devolución de llamada independiente para llamadas telefónicas:

WidgetNombre de etiquetaDescripciónRecomendado para
Widget flotantehanc-ai-floating-callBotón orbe que flota sobre tu páginaLlamada a la acción siempre visible
Widget píldorahanc-ai-pill-callBotón compacto con forma de píldora colocado en línea en tu contenidoHuella mínima dentro de un diseño existente
Widget píldora flotantehanc-ai-pill-float-callMisma forma compacta de píldora, pero flota con la página como el widget flotanteCuando quieres una estética de píldora que siga al visitante al hacer scroll
Widget en líneahanc-ai-inline-callBotón de llamada de tamaño completo integrado en el contenido de la páginaSecciones dedicadas "Habla con nosotros"
Widget de devolución de llamadahanc-ai-callbackFormulario de número de teléfono; el agente llama de vuelta al visitantePáginas de captación de leads, landings de alta intención: ver Widget de devolución de llamada

Atributos comunes

Todos los tipos de widget admiten estos atributos básicos:

AtributoObligatorioDescripciónPredeterminado
agent-idIdentificador único de tu agente
voice-service-urlNoSobrescribir la URL del servicio de vozDetección automática
api-base-urlNoSobrescribir la URL base de la APIDetección automática

Atributos de visualización

AtributoDescripciónValoresPredeterminado
positionPosición del widget en la páginabottom-right, bottom-left, top-right, top-left, staticbottom-right
sizeTamaño del widget en píxelesNúmero120
themeNombre del tema de colorVer Temas de colordefault

Atributos de texto del botón

AtributoDescripciónPredeterminado
button-start-textTexto mostrado en el botón inactivo"Call"
button-connecting-textTexto mostrado durante la conexión"Connecting..."
button-end-textTexto mostrado durante una llamada activa

Atributos de términos

AtributoDescripciónPredeterminado
terms-enabledActiva el diálogo de consentimiento antes de la llamadafalse
terms-contentTexto de consentimiento en formato Markdown""
terms-urlEnlace a tu página de Términos y Condiciones"https://hanc.ai/terms"
privacy-urlEnlace a tu página de Política de Privacidad"https://hanc.ai/privacy"
información

Los atributos de términos definidos en el elemento HTML son sobrescritos por la configuración de widget del agente obtenida desde la API, a menos que skip-fetch esté en true.

Atributos de sonido

AtributoDescripciónPredeterminado
sound-enabledActiva los sonidos de inicio/fin de llamadatrue
sound-volumeVolumen de los efectos de sonido0.25
sound-presetIdentificador del preset de sonido"1"

Temas de color

Personaliza la apariencia del widget con 11 temas de color integrados:

TemaValor
Predeterminadodefault
Púrpurapurple
Azulblue
Ciancyan
Esmeraldaemerald
Ámbaramber
Mandarinatangerine
Rosarose
Brasaember
Negroblack
Blancowhite

Cada tema tiene variantes oscura y clara. Define el tema mediante el atributo theme en el código de integración, o configúralo en los ajustes de widget del agente.


Ejemplos de integración

Widget flotante

<hanc-ai-floating-call agent-id="YOUR_AGENT_ID"></hanc-ai-floating-call>
<script src="https://unpkg.com/hanc-webrtc-widgets" async type="text/javascript"></script>

Widget flotante con tema y posición

<hanc-ai-floating-call
agent-id="YOUR_AGENT_ID"
theme="emerald"
position="bottom-left"
size="140"
></hanc-ai-floating-call>
<script src="https://unpkg.com/hanc-webrtc-widgets" async type="text/javascript"></script>

Widget píldora

<hanc-ai-pill-call agent-id="YOUR_AGENT_ID"></hanc-ai-pill-call>
<script src="https://unpkg.com/hanc-webrtc-widgets" async type="text/javascript"></script>

Widget en línea

<hanc-ai-inline-call agent-id="YOUR_AGENT_ID"></hanc-ai-inline-call>
<script src="https://unpkg.com/hanc-webrtc-widgets" async type="text/javascript"></script>
Fijar una versión del widget

La URL del script anterior siempre carga el último widget publicado: tu sitio recibe mejoras automáticamente. Si necesitas fijarlo a una versión conocida y estable, indícalo explícitamente con https://unpkg.com/hanc-webrtc-widgets@1.4.0 (sustituye por la versión que quieras). La etiqueta @latest es la predeterminada cuando no se especifica versión.


Eventos del widget

Los widgets emiten eventos que puedes escuchar en JavaScript:

EventoDescripción
status-changedSe dispara cuando cambia el estado de la llamada
connectingSe está estableciendo la llamada
connectedLa llamada está activa
idleNo hay llamada activa
errorOcurrió un error
audio-trackSe recibió la pista de audio remoto (para visualización)
local-audio-trackPista de audio del micrófono local (para visualización)
microphone-enabledSe activó el micrófono
microphone-disabledSe desactivó el micrófono
call-startSe dispara cuando una llamada se inicia correctamente
call-endSe dispara cuando finaliza la llamada

Ejemplo: escuchar eventos

const widget = document.querySelector('hanc-ai-floating-call');

widget.addEventListener('call-start', () => {
console.log('Call started');
});

widget.addEventListener('call-end', () => {
console.log('Call ended');
});

Requisitos técnicos

Los widgets requieren que el navegador del visitante admita:

  • WebGL 2.0: para renderizado
  • Web Audio API: para procesamiento de audio
  • WebRTC: para comunicación de voz en tiempo real

Todos los navegadores modernos (Chrome, Firefox, Safari, Edge) admiten estas tecnologías.


Restricciones de dominio

Controla qué sitios web pueden integrar el widget de tu agente.

Dominios siempre permitidos

Los siguientes dominios siempre están permitidos independientemente de la configuración:

  • hanc.ai (y subdominios)
  • hanc.me (y subdominios)
  • localhost

Permitir todos los dominios

Por defecto, tu widget puede integrarse en cualquier sitio web. Activa "Permitir todos los dominios" en los ajustes del widget para restringirlo.

Restringir a dominios específicos

Cuando esté restringido, añade cada dominio que deba permitirse:

  • Introduce los nombres de dominio sin https:// (p. ej., example.com)
  • Los subdominios necesitan entradas separadas (p. ej., www.example.com, shop.example.com)
  • Se pueden especificar puertos (p. ej., localhost:3000)
  • Se pueden incluir como máximo 50 dominios en la lista blanca
Seguridad

Para agentes en producción, restringe los widgets a tus propios dominios para evitar integraciones no autorizadas.


Términos y condiciones

Activa un diálogo de consentimiento antes de que los llamantes puedan iniciar una conversación.

Configuración

AjusteDescripción
Activar términosActiva o desactiva el diálogo de términos
Contenido de los términosTexto de consentimiento en formato Markdown mostrado a los usuarios (máx. 5.000 caracteres)
URL de términosEnlace a tu página completa de Términos y Condiciones
URL de privacidadEnlace a tu página de Política de Privacidad

Cuando está activado:

  • Los usuarios ven un diálogo de consentimiento antes de iniciar una llamada
  • Deben hacer clic en "Aceptar" para continuar
  • El consentimiento se almacena localmente en el navegador
  • El botón Restablecer consentimiento borra el consentimiento almacenado para pruebas

Formato del contenido

El contenido de los términos admite formato Markdown:

  • Usa #### para encabezados
  • Usa **negrita** para énfasis
  • Usa saltos de línea para mejorar la legibilidad

Relacionado