Garantía de puesto atendido
Marcá la zona de recepción o mesa de ayuda y dispará presence.absent cuando queda vacía más allá de un umbral, para que un supervisor lo sepa antes que un cliente.
Sabé cuándo un puesto de trabajo queda sin atender — o atendido fuera del horario.
Algunos puestos deben estar atendidos: una recepción, una garita de seguridad, una sala de control, un mostrador. Mirar un muro de cámaras para descubrir una silla vacía no escala, y la actividad fuera de horario en un escritorio es fácil de pasar por alto. Presencia convierte "¿este puesto está atendido?" en un evento sobre el que tus sistemas pueden actuar.
Marcá la zona de recepción o mesa de ayuda y dispará presence.absent cuando queda vacía más allá de un umbral, para que un supervisor lo sepa antes que un cliente.
Una sala de control u operador que nunca debe estar vacía durante un turno: un par ausente-luego-volvió te da una línea de tiempo auditable de cada hueco.
presence.after_hours señala una persona presente en un puesto fuera de la ventana y los días configurados — una señal silenciosa de que algo pasa fuera de horario.
Un worker muestrea el stream en vivo de la app por HLS a bajo FPS. Dibujás las zonas de puestos sobre un frame en vivo en el dashboard; persisten como rectángulos normalizados.
Detección de personas YOLOv8 (open source, viable en CPU) más ocupación punto-en-zona y temporizadores de ausencia, evaluados contra tu horario y zona horaria.
Los tres eventos fluyen por los webhooks firmados con HMAC y MQTT de la app; un webhook extra opcional recibe el mismo JSON crudo.
Una línea de tiempo de ocupación por zona aparece en la pestaña del dashboard y en SQLite por app; tus sistemas consumen los eventos para alertar, registrar o escalar.
Declarados en el manifiesto del plugin y retransmitidos por los callbacks firmados con HMAC de la app (webhook + MQTT). Cualquier cosa que un worker intente emitir fuera de esta lista se rechaza — sin suplantar eventos del core.
Los números son mediciones honestas de los autores del plugin, no marketing. La GPU es opcional en cada plugin de visión salvo donde se indique.
Cada app de Studio es una aplicación de primera clase, no un modal de configuración — y no tiene por qué vivir dentro de StreamHub.
Se abre como su propia página dentro de la app tenant — zonas, paneles en vivo, historial y ajustes en una sola superficie, no apretados en un diálogo.
Guarda su estado en una base SQLite dedicada por app — lecturas, alertas, ocupación y filas de evidencia — que es tuya y podés consultar.
Descargá la app como un bundle autocontenido — worker, Dockerfile, compose y una plantilla de env — para hostearla en tu propia infra y extenderla, hablando de vuelta por la API REST y los webhooks firmados.
Contanos qué estás monitoreando y definimos las apps correctas, las conectamos a tus sistemas y las operamos con vos. El software es open source — el despliegue y la operación es lo que hacemos.