Narcissistic, Perfectly Modest

    electron-push-receiver
    TypeScript icon, indicating that this package has built-in type declarations

    2.1.3 • Public • Published

    electron-push-receiver

    A module to bring Web Push support to Electron allowing it to receive notifications from Firebase Cloud Messaging (FCM).

    Why and how ?

    See this blog post.

    Install

    npm i -S electron-push-receiver
    

    Usage

    • In main.js / in main process :
    const { setup: setupPushReceiver } = require('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 '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, senderId);

    Example

    Thanks to CydeSwype, you can find an example project here.

    Keywords

    none

    Install

    npm i electron-push-receiver

    DownloadsWeekly Downloads

    1,670

    Version

    2.1.3

    License

    MIT

    Unpacked Size

    97.3 kB

    Total Files

    10

    Last publish

    Collaborators

    • avatar