Real-time updates
Hilal uses WebSocket to push real-time updates and maintains cross-tab consistency so your data stays in sync across multiple browser tabs. This page explains how it works.
In this guide:
- What’s pushed live
- What’s not pushed live
- Cross-tab synchronization
What’s pushed live
The WebSocket layer handles three categories of real-time updates:
- Quota updates — your plan usage (team members, marketplaces, storage) updates as your team takes actions.
- Permission changes — if your role or access changes, the app reflects it without a reload.
- Session events — authentication and connection state changes are pushed immediately.
What’s not pushed live
The following needs a page refresh or scheduled sync:
- Amazon-side data that Hilal pulls on a schedule — campaign performance refreshes hourly, settlement reports refresh on the settlement cycle.
- AI Chat conversations — your own session is live, but cross-device sync waits for the next page load.
- Superset dashboards — refreshes on the dashboard’s configured interval.
Cross-tab synchronization
If you have Hilal open in multiple tabs or browser windows, they stay synchronized:
- Quota updates — member, marketplace, or storage quota changes in one tab appear in others immediately via WebSocket.
- Permission changes — if your role or access changes, all tabs reflect the update without reload.
- Notifications — marking a notification as read in one tab updates all tabs.
- Logout — logging out in one tab logs you out across all tabs.
If the WebSocket connection drops, the app uses a fallback mechanism to keep tabs in sync with your session state.
Troubleshooting
- Updates not appearing in real-time. The WebSocket connection may have temporarily dropped. The app will continue to function but updates will be slightly delayed. Refresh the page to re-establish the connection.
- Two tabs showing different data. The tabs should synchronize within a few seconds. If they don’t, refresh both tabs to ensure they’re connected.
- Quota or permission changes not reflecting. If you just changed settings in another tab, wait a moment for the change to sync. If still not appearing, refresh the page.