From ce5ac8a2867d2677bba34b26578cc578bef3f4cf Mon Sep 17 00:00:00 2001
From: "dionisio-bot[bot]"
<117394943+dionisio-bot[bot]@users.noreply.github.com>
Date: Mon, 19 Aug 2024 17:08:42 +0000
Subject: [PATCH] fix: Realtime Monitoring LineCharts not updating (#33090)
Co-authored-by: Martin Schoeler <20868078+MartinSchoeler@users.noreply.github.com>
---
.../RealTimeMonitoringPage.js | 57 +++++++++++++++----
1 file changed, 47 insertions(+), 10 deletions(-)
diff --git a/apps/meteor/client/views/omnichannel/realTimeMonitoring/RealTimeMonitoringPage.js b/apps/meteor/client/views/omnichannel/realTimeMonitoring/RealTimeMonitoringPage.js
index 5b4d837d211c..b6e29530b5e7 100644
--- a/apps/meteor/client/views/omnichannel/realTimeMonitoring/RealTimeMonitoringPage.js
+++ b/apps/meteor/client/views/omnichannel/realTimeMonitoring/RealTimeMonitoringPage.js
@@ -18,11 +18,19 @@ import ChatsOverview from './overviews/ChatsOverview';
import ConversationOverview from './overviews/ConversationOverview';
import ProductivityOverview from './overviews/ProductivityOverview';
+const randomizeKeys = (keys) => {
+ keys.current = keys.current.map((_key, i) => {
+ return `${i}_${new Date().getTime()}`;
+ });
+};
+
const dateRange = getDateRange();
const RealTimeMonitoringPage = () => {
const t = useTranslation();
+ const keys = useRef([...Array(10).keys()]);
+
const [reloadFrequency, setReloadFrequency] = useState(5);
const [departmentId, setDepartment] = useState('');
@@ -43,6 +51,10 @@ const RealTimeMonitoringPage = () => {
[departmentParams],
);
+ useEffect(() => {
+ randomizeKeys(keys);
+ }, [allParams]);
+
const reloadCharts = useMutableCallback(() => {
Object.values(reloadRef.current).forEach((reload) => {
reload();
@@ -53,6 +65,7 @@ const RealTimeMonitoringPage = () => {
const interval = setInterval(reloadCharts, reloadFrequency * 1000);
return () => {
clearInterval(interval);
+ randomizeKeys(keys);
};
}, [reloadCharts, reloadFrequency]);
@@ -90,30 +103,54 @@ const RealTimeMonitoringPage = () => {
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+