WebSockets provide a persistent, two-way connection between the user's browser and the server. ActiveManage uses them for everything real-time: chat messages, live notifications, presence indicators, collaborative edits, dashboard refreshes.
Why WebSockets
- Push, not pull: Server pushes events instantly; no polling delay.
- Bidirectional: Client can send commands too (e.g. typing indicator).
- Low overhead: Single long-lived connection vs many short-lived requests.
- Real-time UX: Chat that feels instant, notifications that arrive without refresh.
How the Platform Uses Them
- Chat: Message delivery, read receipts, typing indicators.
- Notifications: In-app notification badge updates.
- Collaboration: When multiple users edit the same record, changes broadcast to others' open sessions.
- Dashboards: Live-updating KPIs and charts.
- Activity feeds: New events appear without page reload.
- System alerts: Critical errors pushed to ops users.
Fallback to Polling
Some networks block WebSockets (corporate proxies, captive portals). The platform automatically falls back to long-polling or short-polling when the WebSocket fails to establish, so the user experience degrades gracefully.
Worked Examples
- Chat app: Two colleagues messaging — each typed character flows to the server and back as a typing-indicator event; each sent message arrives in under 100ms.
- Live ops dashboard: 24/7 status board with no refresh button — incident counts and queue lengths update in real time.
- Multi-user record edit: Sales rep is editing a customer record; another user opens the same record and sees a banner “Alice is also editing this”. As Alice saves, the other user's view auto-updates.
- Order-tracking page: Customer's order goes from “picked” to “packed” to “shipped” without them reloading.