alfa6661 / laravel-firebase by alfa6661

Firebase notification for laravel 5.2
3,459
9
4
Package Data
Maintainer Username: alfa6661
Maintainer Contact: alfa2159@gmail.com (Alfa Adhitya)
Package Create Date: 2016-08-25
Package Last Update: 2020-04-04
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-05-15 03:04:41
Package Statistics
Total Downloads: 3,459
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 9
Total Watchers: 4
Total Forks: 14
Total Open Issues: 2

laravel-firebase

StyleCI Total Downloads Latest Stable Version Latest Unstable Version

Google Firebase Notification for Laravel

This package makes it easy to send Firebase Notification with Laravel

Installation

You can install the package via composer:

composer require alfa6661/laravel-firebase

You must install the service provider:

// config/app.php
'providers' => [
    ...
    Alfa6661\Firebase\FirebaseServiceProvider::class,
],

Setting up your Firebase account

Add your Firebase Key to your config/services.php:

// config/services.php
...
'firebase' => [
    'api_key' => env('FIREBASE_API_KEY'),
],
...

Usage

Now you can use the channel in your via() method inside the notification:

use Alfa6661\Firebase\FirebaseChannel;
use Alfa6661\Firebase\FirebaseMessage;
use Illuminate\Notifications\Notification;

class CreditWasCreated extends Notification
{
    public function via($notifiable)
    {
        return [FirebaseChannel::class];
    }

    public function toFirebase($notifiable)
    {
        return FirebaseMessage::create()
            ->title('Title')
            ->body('Push notification body')
            ->data(['id' => $notifiable->id]);
    }
}

In order to let your Notification know which device user(s) you are targeting, add the routeNotificationForFirebase method to your Notifiable model.

You can either return a single device token, or if you want to notify multiple device just return an array containing all devices.

public function routeNotificationForFirebase()
{
    return ["DEVICE_TOKEN", "DEVICE_TOKEN"];
}