enniel / laravel-fcm-notification-channel
Firebase Cloud Messages Notification Driver
Installs: 21 022
Dependents: 0
Suggesters: 0
Security: 0
Stars: 22
Watchers: 3
Forks: 23
Open Issues: 8
pkg:composer/enniel/laravel-fcm-notification-channel
Requires
- php: >=5.5.9
- brozot/laravel-fcm: ~1.2.5
- illuminate/notifications: ~5.3
- illuminate/queue: ~5.1
- illuminate/support: ~5.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ~1.12.2
- mockery/mockery: ^1.0
- phpunit/phpunit: 4.*
This package is auto-updated.
Last update: 2025-10-06 06:34:40 UTC
README
This package makes it easy to send notifications using Firebase Cloud Messaging (FCM) with Laravel 5.3. This package is based on brozot/laravel-fcm, so please read that documentation for more information.
Contents
Installation
You can install this package via composer:
composer require enniel/laravel-fcm-notification-channel:1.*
Register the provider directly in your app configuration file config/app.php:
'providers' => [ // ... NotificationChannels\FCM\ServiceProvider::class ]
Usage
Now you can use the channel in your via() method inside the notification:
use NotificationChannels\FCM\FCMMessage; use Illuminate\Notifications\Notification; class ExampleNotification extends Notification { public function via($notifiable) { return ['fcm']; } public function toFCM($notifiable) { return (new FCMMessage()) ->notification([ 'title' => 'Notification title', 'body' => 'Notification body', ]); } }
Available message types:
FCMMessage: Send notifications to device(s).FCMMessageTopic: Send notifications to topic(s).FCMMessageGroup: Send notifications to group(s).
In order for your notice to know who to send messages, you must add routeNotificationForFCM method to your notification model.
Available message methods
data(): Notification data.array|LaravelFCM\Message\PayloadData|LaravelFCM\Message\PayloadDataBuilderoptions(): Notification options.array|LaravelFCM\Message\Options|LaravelFCM\Message\OptionsBuildernotification(): Notification content.array|LaravelFCM\Message\PayloadNotification|LaravelFCM\Message\PayloadNotificationBuilder
Proxy methods. See brozot/laravel-fcm for more information about this methods.
setDryRunsetPrioritysetTimeToLivesetCollapseKeysetDelayWhileIdlesetMutableContentsetContentAvailablesetRestrictedPackageNameisDryRungetPrioritygetTimeToLivegetCollapseKeyisDelayWhileIdleisMutableContentisContentAvailablegetRestrictedPackageNamesetTagsetBodysetIconsetTitlesetSoundsetBadgesetColorsetChannelIdsetClickActionsetBodyLocationKeysetBodyLocationArgssetTitleLocationKeysetTitleLocationArgsgetTaggetBodygetIcongetTitlegetSoundgetBadgegetColorgetChannelIdgetClickActiongetBodyLocationKeygetBodyLocationArgsgetTitleLocationKeygetTitleLocationArgs
Testing
$ composer test
Credits
Support
Having trouble? Open an issue!
License
The MIT License (MIT). Please see License File for more information.