Este panel soporta 2 estrategias:(tipos)
api/push.php como endpoint y define un secret por reloj.cron ejecuta tasks/poll.php para consultar relojes con IP accesible. Importa el archivo db.sql en tu MySQL/MariaDB y ajusta includes/config.php.
En el reloj, define la URL: https://tu-dominio.com/biometric/api/push.php y un secret. El reloj debe mandar JSON como:
{
"device_secret": "SECRETO_DEL_RELOJ",
"events": [
{"user_id":"10023","timestamp":"2025-08-14T10:05:02-06:00","type":"CHECK_IN"},
{"user_id":"10023","timestamp":"2025-08-14T18:01:41-06:00","type":"CHECK_OUT"}
]
}
Si tu reloj envía en otro formato (p.ej. ZKTeco push), puedes mandar al mismo endpoint, que intentará normalizar automáticamente si detecta campos comunes.
Configura cron cada 2-5 minutos:
*/3 * * * * /usr/bin/php /ruta/biometric/tasks/poll.php >> /var/log/biometric_poll.log 2>&1
Edita tasks/poll.php y ajustar driver según el modelo. Pruebas hechas con : DHI-ASI1212F/DHI-ASI1212F-D