Live access panel
Real-time access activity in the resident portal.
Overview
The live access panel surfaces buzzer attempts, approvals, and pending requests close to real time so residents see door activity without refreshing.
Transport
Uses Server-Sent Events (SSE) or streaming fetch from Next.js route handlers. Polling is a fallback when streaming is unavailable.
UX considerations
- Show relative timestamps with precise hover for support.
- Collapse duplicate events from carrier retries.
- Explicit disconnected / reconnecting states during incidents.
- Highlight active approval requests (~30 second window).
Backend coupling
Stream endpoints must be authenticated per user via JWT. Rate-limit polling fallbacks.
Observability
Log stream duration and error rates separately from REST traffic.
Last verified: 2026-06-21 (commit 293c4a7)