Medical Triage Platform
Plataforma Django para admisión médica, triage asistido por IA, WhatsApp, turnos virtuales y teleconsulta con auditoría y privacidad.
Descripción del Proyecto
Medical Triage Platform es una plataforma de salud digital construida en Django para gestionar el circuito completo de admisión, triage preliminar, cola operativa, agenda médica, teleconsulta y registro clínico. El sistema modela roles diferenciados para pacientes, médicos, operadores, administradores médicos y superusuarios, con permisos por objeto y validaciones específicas para datos clínicos, credenciales médicas, documentos, historia clínica y acceso a videoconsultas.
La arquitectura está organizada en apps Django independientes: accounts, patients, doctors, scheduling, triage, whatsapp, consultations, medical_records, documents, notifications, audit e integrations. El dominio incluye solicitudes de consulta, evaluaciones de triage, alertas clínicas, cola priorizada, turnos virtuales, encuentros médicos, notas clínicas, documentos médicos, eventos de historia clínica, sesiones conversacionales de WhatsApp y logs de auditoría.
La IA cumple dos roles principales. A nivel funcional, el proyecto integra un cliente OpenAI controlado para clasificación preliminar de triage con salida JSON estructurada, versión de prompt, trazabilidad mediante AIDecisionLog, minimización de PII y fallback seguro a revisión humana. Antes de llamar al proveedor IA se ejecutan reglas determinísticas para emergencias y urgencias, evitando depender de un modelo externo en casos críticos. A nivel de desarrollo, la plataforma fue construida con asistencia iterativa de IA para diseño de arquitectura, implementación incremental, hardening, tests, runbooks, documentación operativa y análisis de riesgos.
El canal WhatsApp está preparado con webhook real para WhatsApp Cloud API, validación HMAC SHA-256, GET challenge de Meta, idempotencia inbound, sesiones conversacionales, simulador interno, logs salientes, callbacks de estado, política de no-retry automático, sanitización de metadata y purga controlada de evidencia de prueba. El proveedor real queda activable de forma controlada, manteniendo mocks como default seguro.
La teleconsulta integra salas de video mock y un adaptador real para Daily, con creación de salas, tokens diferenciados para paciente y médico, URLs internas protegidas, validación de acceso, eventos de ingreso/salida, rate limiting y fallback operativo ante errores del proveedor. Los tokens y URLs sensibles no se exponen en templates ni logs.
El despliegue productivo está documentado y validado en Donweb sobre Ubuntu, PostgreSQL, Gunicorn, Nginx, systemd y HTTPS con certificado Let's Encrypt. La configuración productiva usa variables de entorno, DEBUG prohibido, cookies seguras, headers de seguridad, bloqueo intencional de media público, logging sanitizado y proveedores externos en modo mock por defecto. El estado actual corresponde a validación interna / MVP beta: los flujos técnicos fueron probados con datos ficticios y pilotos simulados, pero no está autorizado para operar con pacientes reales sin validación legal y médica final.
Problema que Resuelve
El proyecto resuelve la necesidad de ordenar y auditar el ingreso digital de consultas médicas remotas, especialmente las originadas por WhatsApp, reduciendo fricción operativa entre admisión, priorización clínica preliminar, asignación médica y teleconsulta. En lugar de depender de mensajes manuales, planillas o decisiones no trazables, centraliza el flujo en una plataforma con roles, permisos, reglas de seguridad, triage asistido por IA, cola priorizada, videollamada protegida, registro clínico y evidencia auditable. También aborda riesgos técnicos y de privacidad propios de salud digital mediante minimización de datos, sanitización de logs, mocks seguros, validación de proveedores externos y despliegue controlado.
Características Clave
- Roles diferenciados para paciente, médico, operador, administrador médico y superusuario
- Registro y perfil clínico de paciente con consentimientos de datos y telemedicina
- Verificación documental de médicos y habilitación para atención virtual
- Solicitudes de consulta desde web, simulador o WhatsApp
- Triage preliminar con reglas determinísticas de emergencia y urgencia
- Integración OpenAI controlada para clasificación estructurada de triage
- Fallback seguro de IA a urgencia con revisión humana
- Registro auditable de decisiones IA mediante AIDecisionLog
- Alertas clínicas operativas para casos críticos
- Cola de espera priorizada por urgencia, especialidad, score y fecha de ingreso
- Agenda médica con turnos virtuales y prevención de solapamientos
- Inicio, seguimiento y cierre formal de consultas médicas
- Notas clínicas con diagnóstico, tratamiento, derivación y seguimiento
- Historia clínica simple basada en eventos
- Carga y consulta de documentos médicos
- Videoconsulta mock/local y adaptador real para Daily
- URLs internas protegidas para paciente y médico en salas de video
- Eventos de videoconsulta con rate limiting
- Webhook WhatsApp real con GET challenge y validación HMAC SHA-256
- Simulador interno de WhatsApp para QA sin usar Meta
- Persistencia de mensajes entrantes, contactos y sesiones conversacionales
- Idempotencia inbound y outbound para evitar duplicados
- Logs salientes WhatsApp con privacidad y teléfono enmascarado
- Status callbacks de WhatsApp para sent, delivered, read y failed
- Política explícita de no-retry automático en WhatsApp outbound
- Auditoría append-only de acciones sensibles
- Sanitización recursiva de metadata para evitar exposición de PII y secretos
- Management command para purga controlada de evidencia de prueba
- Configuración por entornos dev/prod con django-environ
- Deploy productivo documentado en Donweb con PostgreSQL, Gunicorn, Nginx, systemd y HTTPS
- Suite de tests automatizados para dominio, integraciones, privacidad, callbacks y QA end-to-end mock
- Runbooks operativos para OpenAI, Daily, WhatsApp, backup/restore, seguridad y pilotos internos
Ficha Técnica
Enlaces
¿Te interesa esta solución?
Puedo diseñar y desarrollar un sistema similar adaptado al 100% a las operaciones y dimensiones de tu empresa.
Consultar Presupuesto