Push Notifications Registration Tokens
This module creates a system for storing and managing push notification tokens for mobile and web applications. It automatically cleans up old tokens and offers privacy-focused features like optional device user agent logging.
Features
This module provides an entity type for registering push notification tokens.
This module is part of a suite of modules for sending push notifications to mobile apps while maximizing user privacy; see the docs for an overview and installation instructions for all modules.
Cool features:
- Protects user privacy by default (no additional device info logged).
- Automatically deletes stale tokens after 90 days in accordance with Google and Apple recommendations (this value can be changed, and auto-deletion can be disabled).
- When adding a token, you can specify the type: "android", "apple", or "web".
- If you install the Universal Device Detection module and enable the config setting, you can log the device user agent when adding a token. This module uses the Matomo analytics library so it is still more privacy-preserving than many other libraries.
- Provides a JSON-RPC endpoint for saving tokens. (REST endpoint not yet available; please contribute!)
I know there are a lot of Drupal modules related to push notifications. This module aims to store the registration tokens as an entity type and manage those tokens.. For sending notifications, you need another module like Firebase PHP or APNs PHP. I am open to integrating with any other sending library; just open an issue!
Supporting this Module
All contributions are welcome. Please submit MRs, not patches, so that the CI tests are run. Please add tests if possible.
If you post an issue and do not receive a response, feel free to contact me by private message in the Drupal Slack (ptmkenny) or via my Drupal.org contact form.