Real-Time Page Refresh

Prev Next

Overview

Real-Time Page Refresh ensures that updates made in the CMS are reflected in client applications without requiring users to restart the app or manually refresh the page.

When a page is updated and published in the CMS, the app receives a notification and retrieves the updated content automatically. This allows users who are currently viewing a page to see newly published content shortly after it is updated.

This functionality is supported across Web, iOS, Android, and connected TV platforms.


How it Works

Real-Time Page Refresh uses Server-Sent Events (SSE) to notify client applications when page content has been updated.

1. CMS Update

When a content editor makes changes to curated items within a page module (for example, adding, removing, or reordering items in a featured tray) and publishes the page, the backend triggers an update event.

2. Notification to Apps

The backend sends a lightweight notification event to connected client applications indicating that modules on a page have been updated.

The notification includes:

  • Page ID

  • Updated module IDs

  • Event type identifying a page update

Applications maintain a persistent SSE connection to listen for these events.

3. Page Context Check

When a client receives a notification, it checks whether the user is currently viewing the affected page.

  • If the user is on the page, the refresh process begins.

  • If the user is not on the page, the notification is ignored.

This prevents unnecessary refresh requests.

4. Throttled Refresh

To avoid large spikes in API traffic when many users receive the same update, the client waits for a random delay between 5 and 50 seconds before requesting updated data.

This delay distributes requests over time and prevents a surge of simultaneous API calls.

5. Fetch Updated Content

After the delay, the client calls the Page API (GraphQL) and requests updated data for only the modules that changed.

The application then replaces the existing module data on the page with the updated content returned by the API.


Navigation Behavior

Real-Time Page Refresh also ensures updated content is loaded during normal app navigation.

Navigating via Menu

When a user selects a page from the navigation menu, the app calls the Page API and loads the latest page data.

Returning to a Page

If a user navigates from a page (such as Home) to a content detail page and then returns using the Back button, the application calls the Page API again to ensure the most recent content is displayed.


CMS Configuration

No additional CMS configuration is required.

The refresh mechanism is automatically triggered when:

  • Curated content is added

  • Curated content is removed

  • Curated content is reordered

  • Page is published.

Content editors only need to ensure that updated content is published for the changes to appear in applications.

Example

  1. A user opens the app and stays on the Home page.

  2. A content editor updates the Featured Tray in the CMS.

  3. The page is published.

  4. Within approximately one minute, the updated tray appears in the app automatically.

Benefits

  • Near real-time content updates

  • No manual refresh required for users

  • Reduced caching inconsistencies across platforms

  • Efficient updates by refreshing only changed modules