From 8fcf7f8c7f01708c425eec77c1dba79814a293e1 Mon Sep 17 00:00:00 2001 From: Bruno Windels Date: Thu, 18 Mar 2021 20:45:46 +0100 Subject: [PATCH] show notification when receiving push message --- src/platform/web/service-worker.template.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/platform/web/service-worker.template.js b/src/platform/web/service-worker.template.js index ebb31cdb..f46150f6 100644 --- a/src/platform/web/service-worker.template.js +++ b/src/platform/web/service-worker.template.js @@ -185,6 +185,27 @@ self.addEventListener('message', (event) => { } }); +self.addEventListener('push', event => { + const n = event.data.json(); + console.log("got a push message", n); + let sender = n.sender_display_name || n.sender; + if (sender && n.event_id) { + let label; + if (n.room_name) { + label = `${sender} wrote you in ${n.room_name}`; + } else { + label = `${sender} wrote you`; + } + let body = n.content?.body; + self.registration.showNotification(label, { + body, + data: { + sessionId: n.session_id, + roomId: n.room_id, + } + }); + } +}); async function closeSession(sessionId, requestingClientId) { const clients = await self.clients.matchAll();