Synopsis

Firebase implements a service to send push notification to Android or iOS devices.
It uses Google's Firebase Cloud Messaging to deliver the notification.

Firebase allows

  • to send push and silent push notifications
  • to group messages
  • to customize icon, sound and click action
  • to manage topics

Module Setup

These are the steps to get the notifications working:

  1. Create a Firebase account
  2. Add Firebase to your iOS project OR Android project
  3. Enable this module
  4. Add your firebase Server Key into /admin/config/system/firebase
  5. Each device has a token. Store that token on Drupal
  6. Call Firebase service passing the device's token and message
// Token is generated by app. You'll have to send the token to Drupal.
$fakeToken = 'e3vUiwcvkpY:APA91bEDZzKTIkaL0e-UTwiV6EGi1m5J5PrDMxejm6-d85vdwAgd';
$messageService = \Drupal::service('firebase.message');
$messageService->setRecipients($fakeToken);
$messageService->setNotification([
 'title' => 'Title goes here',
 'body' => 'Body goes here',
 'badge' => 1,
 'icon' => 'optional-icon',
 'sound' => 'optional-sound',
 'click_action' => 'optional-action',
]);
$messageService->setData([
 'score' => '3x1',
 'date' => '2017-10-10',
 'optional' => 'Data is used to send silent pushes. Otherwise, optional.',
]);
$messageService->setOptions(['priority' => 'normal']);
$messageService->send();

Read README.md for other examples.

Supporting organizations:

Project information

Releases

3.0.1 Stable release covered by the Drupal Security Team released 2 May 2023
Works with Drupal: ^8 || ^9 || ^10
Install:

Development version: 3.0.x-dev updated 1 Sep 2024 at 15:16 UTC