From a171f817389f7feb04fd629fe754ac326071c0f0 Mon Sep 17 00:00:00 2001 From: Muhammed Raihan P A <99407382+pu-raihan@users.noreply.github.com> Date: Wed, 19 Feb 2025 00:49:59 -0800 Subject: [PATCH] fix: prevent unnecessary notification reloads for all users - Emit WebSocket event only to the intended recipient instead of broadcasting - Improves performance by reducing unnecessary API calls and WebSocket traffic --- crm/fcrm/doctype/crm_notification/crm_notification.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/crm/fcrm/doctype/crm_notification/crm_notification.py b/crm/fcrm/doctype/crm_notification/crm_notification.py index 69aa127d..dbc075a1 100644 --- a/crm/fcrm/doctype/crm_notification/crm_notification.py +++ b/crm/fcrm/doctype/crm_notification/crm_notification.py @@ -8,7 +8,8 @@ from frappe.model.document import Document class CRMNotification(Document): def on_update(self): - frappe.publish_realtime("crm_notification") + if self.to_user: + frappe.publish_realtime("crm_notification", user= self.to_user) def notify_user(args): """ @@ -33,4 +34,4 @@ def notify_user(args): if frappe.db.exists("CRM Notification", values): return - frappe.get_doc(values).insert(ignore_permissions=True) \ No newline at end of file + frappe.get_doc(values).insert(ignore_permissions=True)