> For the complete documentation index, see [llms.txt](https://docs.bdb.ai/self-service-visualization-4/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bdb.ai/self-service-visualization-4/report-final-screen/live-refresh.md).

# Live Refresh

This option will help the user to refresh the Story with latest data based on the saved WebSocket configuration.

The Web Socket option under the ***Live Refresh*** icon is provided to refresh the Story or the selected Views of the Story when an external event occurs.&#x20;

{% hint style="success" %}
*Check out the given illustration to understand the **Live Refresh** functionality.*
{% endhint %}

{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq1Y2nC9XDrWcLwg1gpYr%2Fuploads%2Fb5xUG66mkN2MeluIN6Ja%2FLive%20Refresh.mp4?alt=media&token=61cae808-5d54-4385-a78a-7e7f589a4d04>" %}
***Live Refresh feature in action***
{% endembed %}

\
Users can achieve this by configuring a WebSocket. The WebSocket Configuration contains a WebSocket IP and a message. On opening a WebSocket-enabled report, a WebSocket channel is established to receive messages. The Report gets refreshed when Web Socket receives the same message configured from this channel.

* Navigate to a Report final screen of any Report with multiple Views.
* Click the ***Live Refresh*** icon.    &#x20;

<figure><img src="https://content.gitbook.com/content/vIDgRfkRB1bQpGtEDFfQ/blobs/hq5nKsV3QNT67EfiH08B/image.png" alt=""><figcaption><p><em><strong>Accessing the Live Refresh icon for a Report</strong></em></p></figcaption></figure>

* The ***WebSocket*** panel opens.
* Enable ***WebSocket*****&#x20;functionality**.&#x20;
* Provide a ***WebSocket IP***.&#x20;
* Insert a message based on which the selected view(s) get updated.&#x20;
* Either enable ***Refresh All*** option or keep it *disabled* (based on the requirement).
* If it is disabled then select the required ***Views*** from the ***Available Views*** list as provided under the ***Selected Views*** heading.&#x20;
  * Use the Check All option to select all the Views.
  * Select a specific View by using the Checkbox provided next to it.
* Click the ***Apply*** icon from the above panel. &#x20;

<figure><img src="https://content.gitbook.com/content/vIDgRfkRB1bQpGtEDFfQ/blobs/0FPghYFgaQRUaFS7RFXB/image.png" alt=""><figcaption><p><em><strong>WebSocket Panel</strong></em></p></figcaption></figure>

{% hint style="info" %}
*<mark style="color:green;">Please Note</mark>: When the event trigger&#x73;**, the refresh gets refreshed data based on the WebSocket settings**.*
{% endhint %}

* The user can keep track of each trigger under the Developer's tool (as displayed in the following image).&#x20;

<figure><img src="https://content.gitbook.com/content/vIDgRfkRB1bQpGtEDFfQ/blobs/hhWkOus7rhALEOqCYcTp/image.png" alt=""><figcaption><p><em><strong>Count of WS triggers</strong></em> </p></figcaption></figure>

{% hint style="info" %}
*<mark style="color:green;">Please Note</mark>: The WebSocket IP used for the Live Refresh functionality has been accessed using the **WebSocket Producer** component provided inside the **Data Pipeline** module of the Platform.*
{% endhint %}
