enniel / laravel-fcm-notification-channel
Firebase Cloud Messages Notification Driver
Installs: 21 028
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\PayloadDataBuilder
- options(): Notification options.- array|- LaravelFCM\Message\Options|- LaravelFCM\Message\OptionsBuilder
- notification(): Notification content.- array|- LaravelFCM\Message\PayloadNotification|- LaravelFCM\Message\PayloadNotificationBuilder
Proxy methods. See brozot/laravel-fcm for more information about this methods.
- setDryRun
- setPriority
- setTimeToLive
- setCollapseKey
- setDelayWhileIdle
- setMutableContent
- setContentAvailable
- setRestrictedPackageName
- isDryRun
- getPriority
- getTimeToLive
- getCollapseKey
- isDelayWhileIdle
- isMutableContent
- isContentAvailable
- getRestrictedPackageName
- setTag
- setBody
- setIcon
- setTitle
- setSound
- setBadge
- setColor
- setChannelId
- setClickAction
- setBodyLocationKey
- setBodyLocationArgs
- setTitleLocationKey
- setTitleLocationArgs
- getTag
- getBody
- getIcon
- getTitle
- getSound
- getBadge
- getColor
- getChannelId
- getClickAction
- getBodyLocationKey
- getBodyLocationArgs
- getTitleLocationKey
- getTitleLocationArgs
Testing
$ composer test
Credits
Support
Having trouble? Open an issue!
License
The MIT License (MIT). Please see License File for more information.