Commit Graph
3 Commits
Author SHA1 Message Date
Lizandro GuarnizoandClaude Sonnet 4.6 d24b234e30 fix(display): corregir turnos que no aparecen en pantalla TV
- sse_turno.php: sleep(2)→sleep(1) para detectar notificarSSE en máx 1s
- display*.php: visibilitychange + focus → fetch inmediato al despertar pantalla
- display*.php: Wake Lock API para evitar throttling del browser en TVs
- display.php: SSE open → cargarSnapshot() inmediato al reconectar

Causa raíz: browsers throttlean setInterval a >1min en tabs sin foco;
las TVs inactivas dejaban de recibir actualizaciones aunque el servidor
las enviara correctamente.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-07 22:47:13 -05:00
Lizandro GuarnizoandClaude Sonnet 4.6 4058cfe929 fix: sonido del turno se disparaba 3 veces en la pantalla TV
Dos causas:
1. sse_turno.php inicializaba \$lastPing = null, haciendo que la primera
   iteración del loop (2s después del emit inicial) siempre emitiera
   un snapshot extra aunque no hubiera cambios reales.
   Fix: inicializar \$lastPing con el sse_ping_at actual de la BD.

2. display.php comparaba activo.codigo para detectar nueva llamada.
   Si el poll y el SSE llegaban casi simultáneamente antes de que
   lastCodigoActivo se actualizara, ambos disparaban el sonido.
   Fix: comparar llamado_at en vez del código — el timestamp es
   único por llamada, por lo que sonidos duplicados son imposibles.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 00:48:33 -05:00
Lizandro Guarnizo 318a1742cc up 2026-04-18 23:41:01 -05:00