Firebase Cloud Messaging for Laravel
Published on by Paul Redmond
Larafirebase is a package by Gentrit Abazi that provides sending push notifications and custom messages with Firebase in Laravel applications. This package uses Firebase Cloud Messaging—a cross-platform messaging solution to send messages at no cost—to send notifications to users on the client-side.
Here is an example notification class that provides the toFirebase()
method to send notifications via the custom firebase
channel:
use Illuminate\Notifications\Notification;use Kutia\Larafirebase\Messages\FirebaseMessage; class SendBirthdayReminder extends Notification{ /** * Get the notification's delivery channels. */ public function via($notifiable) { return ['firebase']; } /** * Get the firebase representation of the notification. */ public function toFirebase($notifiable) { $deviceTokens = [ '{TOKEN_1}', '{TOKEN_2}' ]; return (new FirebaseMessage) ->withTitle('Hey, ', $notifiable->first_name) ->withBody('Happy Birthday!') ->asNotification($deviceTokens); // OR ->asMessage($deviceTokens); }}
You'll also need to write client code to receive these messages to use this package. Check out the project's javascript-client folder for an example of how to use this package on the client-side.
You can learn more about this package, get full installation instructions, and view the source code on GitHub.