# Control de accesos
## ¿Qué controla?
Que solo entren al gimnasio los socios con **membresía vigente** y **pago al día**.
## Métodos disponibles
| Método | Hardware necesario |
|--------|--------------------|
| **Huella digital** | Lector biométrico Suprema, ZKTeco |
| **Facial** | Cámara + computadora con face-api.js |
| **Código QR** | App móvil del socio con código generado |
| **Tarjeta RFID** | Lector RFID en torno o entrada |
| **PIN numérico** | Teclado en torno |
| **Manual** | Recepcionista valida en la pantalla |
Podés combinar varios (ej: huella + cámara como respaldo).
## Configurar dispositivo
**Gimnasio → Accesos → Dispositivos → Nuevo dispositivo**:
- Tipo (huella, facial, RFID, etc.)
- Marca y modelo
- IP local del dispositivo
- Ubicación (Entrada principal, Vestuario, Pileta)
## Enrolar a un socio
Al alta del socio o después:
**Socio → tab Accesos → Enrolar**
Para huella:
1. Conectar el lector a la PC
2. Pedir al socio poner el dedo 3 veces (para confirmar template)
3. El template se asocia al socio
Para facial:
1. Tomar foto en la app de enrolamiento
2. El sistema extrae el embedding facial
3. Lo asocia al socio
Para QR:
1. Generar QR único para el socio (PDF descargable o app)
2. El socio lo presenta al entrar
## Reglas de validación al entrar
Cuando un socio se presenta:
1. Dispositivo identifica al socio
2. Sistema consulta:
- ✅ ¿Tiene membresía **vigente**?
- ✅ ¿Está al día de **pago**?
- ✅ ¿Está en **horario habilitado** del plan?
- ✅ ¿No está **suspendido**?
3. Si todo OK → ⛩️ apertura del torno (3 seg)
4. Si falla → 🔴 luz roja + mensaje en pantalla + alerta a recepción
## Vista en recepción
Pantalla **Gimnasio → Recepción**:
- Stream en vivo de quién está entrando ahora
- Lista de últimas 20 entradas con foto y estado
- Si alguien fue rechazado, recepción ve por qué y puede autorizar excepción manual
## Reportes
- **Asistencia diaria** (cuántos entraron, picos por hora)
- **Asistencia por socio** (frecuencia, último ingreso)
- **Socios inactivos** (no vinieron en X días — alerta para retención)
- **Tentativas rechazadas** (vencimientos, no socios)
## Sin internet
Algunos dispositivos guardan los templates **localmente** y siguen funcionando aunque el sistema esté caído. Cuando vuelve la conexión, sincronizan los ingresos del período sin conexión.