> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/sdks/sdk-web/componentes/selphi-biometria-facial/eventos.md).

# Eventos

El Selphi Widget emite eventos durante su flujo de vida.

## Formato de los eventos

`facephi-selphi-widget` envuelve el motor interno `facephi-selphi`. Cuando el motor emite un evento, el wrapper lo reenvía pasando el `CustomEvent` interno como `detail` del evento externo. Por eso el payload útil del widget está en **`event.detail.detail`**, no en `event.detail`.

```typescript
// Estructura del evento recibido en <facephi-selphi-widget>
widgetEvent = {
  detail: {          // CustomEvent interno reenviado por el wrapper
    detail: { ... } // Payload real (ExtractionFinishDetail, etc.)
  }
};

const payload = widgetEvent.detail.detail;
```

***

## Ejemplo de uso

```jsx
<facephi-selphi-widget
    onExtractionFinish={(event) => {
      const payload = event.detail.detail;
      console.log('SELPHI RESULT:', payload);
    }}
/>
```

***

## Eventos emitidos por Selphi Widget

### Resultados de la extracción

* [extractionFinish](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/extractionfinish.md): La extracción facial ha finalizado correctamente.

### Interacción del usuario

* [timeoutErrorButtonClick](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/timeouterrorbuttonclick.md): El usuario pulsó el botón en la vista de timeout o error.
* [userCancel](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/usercancel.md): El usuario canceló el proceso.

### Temporizadores

* [extractionTimeout](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/extractiontimeout.md): Se alcanzó el tiempo límite de extracción.
* [moduleLoaded](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/moduleloaded.md): El widget ha terminado de cargar.

### Control de errores

* [errorTimeout](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/errortimeout.md): Expiró el tiempo en la vista de error terminal.
* [exceptionCaptured](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/exceptioncaptured.md): Ocurrió una excepción durante la ejecución.
* [maxAttemptsExceeded](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/maxattemptsexceeded.md): Se agotaron los intentos de captura permitidos.

### Proceso de extracción

* [stabilizing](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/stabilizing.md): Frame analizado durante la estabilización.
* [trackStatus](/sdks/sdk-web/componentes/selphi-biometria-facial/eventos/trackstatus.md): Cambio de estado interno durante la captura.
