diff options
| author | Adam Soltys <[email protected]> | 2020-06-13 21:39:22 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2020-06-13 21:39:22 -0700 |
| commit | 74b7d2a0d614f170ba5aea3a1a172a7a68356d80 (patch) | |
| tree | be2a73a9917616c0b49c24dc99642378e5a47549 /lib/notifications.js | |
| parent | dcb21adb40a44c8108f1d652cc6ddd59ae7c4024 (diff) | |
| download | coinos-server-74b7d2a0d614f170ba5aea3a1a172a7a68356d80.tar.gz coinos-server-74b7d2a0d614f170ba5aea3a1a172a7a68356d80.zip | |
push notifications
Diffstat (limited to 'lib/notifications.js')
| -rw-r--r-- | lib/notifications.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/lib/notifications.js b/lib/notifications.js new file mode 100644 index 00000000..710a5bfe --- /dev/null +++ b/lib/notifications.js @@ -0,0 +1,23 @@ +const webpush = require("web-push"); + +if (config.vapid) { + webpush.setVapidDetails( + config.vapid.url, + config.vapid.publicKey, + config.vapid.privateKey + ); +} + +notify = (user, payload) => { + let { subscriptions } = user; + + if (subscriptions) { + subscriptions.map(async subscription => { + try { + await webpush.sendNotification(subscription, payload); + } catch (e) { + l.error("problem sending notification", e); + } + }); + } +}; |
