@cuj1559/electron-push-receiver
v3.1.3
Published
A module to receive FCM notifications in electron using HTTP v1 API
Downloads
314
Readme
electron-push-receiver
A module to bring Web Push support to Electron allowing it to receive notifications from Firebase Cloud Messaging (FCM).
This specific fork uses Aracna FCM to support FCM's new HTTP v1 API
Install
npm i -S @cuj1559/electron-push-receiver
Click here to check out npm page.
Usage
- In
main.js
/ in main process :
const { setup: setupPushReceiver } = require('@cuj1559/electron-push-receiver');
// Call it before 'did-finish-load' with mainWindow a reference to your window
setupPushReceiver(mainWindow.webContents);
- In renderer process :
import { ipcRenderer } from 'electron';
import {
START_NOTIFICATION_SERVICE,
NOTIFICATION_SERVICE_STARTED,
NOTIFICATION_SERVICE_ERROR,
NOTIFICATION_RECEIVED as ON_NOTIFICATION_RECEIVED,
TOKEN_UPDATED,
} from '@cuj1559/electron-push-receiver/src/constants';
// Listen for service successfully started
ipcRenderer.on(NOTIFICATION_SERVICE_STARTED, (_, token) => // do something);
// Handle notification errors
ipcRenderer.on(NOTIFICATION_SERVICE_ERROR, (_, error) => // do something);
// Send FCM token to backend
ipcRenderer.on(TOKEN_UPDATED, (_, token) => // Send token);
// Display notification
ipcRenderer.on(ON_NOTIFICATION_RECEIVED, (_, notification) => // display notification);
// Start service
ipcRenderer.send(START_NOTIFICATION_SERVICE, appID, projectID, apiKey, vapidKey);