Construccion, seguridad privada, equipos en campo

Sistema de Control de Asistencias con IA

Control total de asistencias, reportes por voz y gestion de personal en campo — desde cualquier dispositivo, con o sin internet.

Python/FlaskReactFlutterWhisper AIFirebaseAWS S3
Antes de nosotros

El Reto

Las empresas de construccion y seguridad privada en Mexico enfrentan un problema que parece simple pero es increiblemente complejo: saber quien se presento a trabajar, donde, a que hora, y que paso durante su turno.

Antes de este sistema, el cliente manejaba asistencias con listas en papel. Los supervisores llamaban por telefono para reportar incidencias. Los directores esperaban hasta fin de semana para tener un panorama general. Y el fraude era comun — firmas falsas, fotos recicladas, reportes inventados.

El reto no era solo digitalizar una lista de asistencia. Era construir un sistema que funcionara en obras de construccion remotas sin internet estable, que fuera lo suficientemente simple para que un trabajador de campo lo usara desde su celular, y lo suficientemente robusto para que un director regional confiara en los datos sin tener que verificarlos manualmente.

Ademas, el sistema debia manejar multiples empresas (multi-tenant), cada una con su propia estructura organizacional, permisos granulares, y flujos de aprobacion.

Lo que construimos

La Solucion

Construimos un ecosistema completo de tres componentes:

1. Backend robusto (Python/Flask en Heroku) — Una API REST con mas de 140 endpoints que maneja toda la logica de negocio: desde el registro de asistencia con verificacion GPS hasta la transcripcion de reportes de voz con Whisper AI. El backend esta desplegado en Heroku con una base de datos TiDB Cloud (compatible con MySQL) que escala automaticamente.

2. Panel web (React/TypeScript) — Un dashboard completo para directores, administradores y supervisores. Desde aqui se configuran empresas, se asignan permisos, se revisan asistencias en tiempo real, se generan reportes y se gestionan notificaciones push.

3. App movil (Flutter — disponible en Google Play Store) — La herramienta de campo. Los trabajadores y supervisores registran asistencia con foto + GPS, graban reportes de voz que se transcriben automaticamente, y reciben notificaciones push. Todo funciona offline y se sincroniza cuando hay conexion.

Funcionalidades

Features Clave

Verificacion de Asistencia con Foto + GPS + Token Anti-Fraude

Cada registro requiere foto tomada en el momento (no de galeria) junto con coordenadas GPS. El sistema genera un token unico por sesion que expira, haciendo imposible reutilizar fotos o falsificar ubicaciones. Si las coordenadas no coinciden, el registro se marca para revision.

Modo Offline Completo

La app almacena registros localmente con toda la informacion (foto, GPS, hora, token) y los sincroniza automaticamente cuando detecta conexion. La experiencia es identica con o sin internet.

Reportes por Voz con Transcripcion IA (Whisper)

Los supervisores graban reportes de voz desde la app. El audio se envia al backend donde Whisper AI lo transcribe automaticamente. Un supervisor que antes tardaba 20 minutos escribiendo un reporte ahora lo graba en 2 minutos hablando.

Sistema de Permisos Granulares con 5 Roles

DEV (acceso total), Director (vision global), Administrador (gestion de una empresa), Supervisor (su equipo), Trabajador (solo su asistencia). Cada permiso es configurable por modulo.

Notificaciones Push via Firebase Cloud Messaging

Recordatorios de registro, alertas de ausencias, confirmaciones de reportes. Configurables por empresa, rol y tipo de evento.

Arquitectura Multi-Tenant

Una sola instancia del sistema sirve a multiples empresas. Cada empresa tiene datos completamente aislados, configuracion propia y permisos independientes.

Screenshots

Como se Ve

Screenshot

Dashboard Principal de Asistencias

Panel web con 4 tarjetas de metricas del dia, tabla de asistencias con verificacion GPS y foto miniatura, menu lateral con acceso a todos los modulos.

Screenshot

App Flutter — Captura de Asistencia con Foto y GPS

Pantalla de la app movil con camara activa, overlay de fecha/hora/GPS, boton grande verde 'Registrar Asistencia', nombre del trabajador y empresa asignada.

Screenshot

Interfaz de Reportes por Voz

Pantalla dividida: lista de reportes con fecha/supervisor/duracion/estado, y detalle con audio reproducible, transcripcion Whisper AI y opciones de edicion.

Screenshot

Panel de Configuracion de Permisos

Matriz de roles vs modulos con toggles de activar/desactivar, boton guardar cambios e historial de cambios recientes.

Stack

Detalles Tecnicos

ComponenteTecnologia
BackendPython 3.11, Flask, SQLAlchemy ORM
Base de datosTiDB Cloud (MySQL compatible, escalamiento automatico)
Frontend webReact 18, TypeScript, componentes custom
App movilFlutter 3.x (Android — Google Play Store)
AlmacenamientoAWS S3 (fotos, audios)
Notificaciones pushFirebase Cloud Messaging (FCM)
Transcripcion de vozOpenAI Whisper AI
Hosting backendHeroku (dynos escalables)
Hosting frontendVercel
AutenticacionJWT con refresh tokens
APIREST, 140+ endpoints documentados
Metricas reales

Resultados

140+

Endpoints API en produccion

5

Roles de usuario con permisos granulares

90%

Reduccion en tiempo de reportes

Completo

Funcionamiento offline

Multi-tenant

Arquitectura

Google Play Store

App publicada en

99.5%+

Disponibilidad

¿Tu empresa necesita controlar asistencias o reportes en campo?

Este sistema ya existe como producto SaaS listo para implementar. Tambien podemos adaptarlo a tus necesidades especificas.