PHPackages                             icemix/laravel-fcm-notification-channel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Mail &amp; Notifications](/categories/mail)
4. /
5. icemix/laravel-fcm-notification-channel

ActiveLibrary[Mail &amp; Notifications](/categories/mail)

icemix/laravel-fcm-notification-channel
=======================================

Icemix Firebase Cloud Messages Notification Driver

V1.2(6y ago)133MITPHP

Since Nov 6Pushed 5y agoCompare

[ Source](https://github.com/ettaegbe/laravel-fcm-notification-channel)[ Packagist](https://packagist.org/packages/icemix/laravel-fcm-notification-channel)[ Docs](https://github.com/ettagbe/laravel-fcm-notification-channel)[ RSS](/packages/icemix-laravel-fcm-notification-channel/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (3)Dependencies (4)Versions (3)Used By (0)

Icemix FCM notification channel for Laravel 5.3
===============================================

[](#icemix-fcm-notification-channel-for-laravel-53)

This package makes it easy to send notifications using [Firebase Cloud Messaging](https://firebase.google.com/docs/cloud-messaging/) (FCM) with Laravel 5.3. This package is based on [brozot/laravel-fcm](https://github.com/brozot/Laravel-FCM), so please read that documentation for more information.

Contents
--------

[](#contents)

- [Installation](#installation)
- [Usage](#usage)
    - [Available message types](#available-message-types)
    - [Available message methods](#available-message-methods)
- [Testing](#testing)
- [Credits](#credits)
- [Support](#support)
- [License](#license)

Installation
------------

[](#installation)

You can install this package via composer:

```
composer require icemix/laravel-fcm-notification-channel:1.0
```

Register the provider directly in your app configuration file `config/app.php`:

```
'providers' => [
    // ...

    NotificationChannels\FCM\ServiceProvider::class
]
```

Usage
-----

[](#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:

[](#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

[](#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](https://github.com/brozot/Laravel-FCM) for more information about this methods.

[](#proxy-methods-see-brozotlaravel-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
-------

[](#testing)

```
$ composer test
```

Credits
-------

[](#credits)

- [Etta Egbe Joseph](https://github.com/ettaegbe)
- [All Contributors](../../contributors)

Support
-------

[](#support)

Having trouble? Open an issue!

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 71.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~120 days

Total

2

Last Release

2259d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b21be30a3124970921302b95f4050878709f05cdbefb9b9e76be3814b6b8b962?d=identicon)[ettaegbe](/maintainers/ettaegbe)

---

Top Contributors

[![enniel](https://avatars.githubusercontent.com/u/19760944?v=4)](https://github.com/enniel "enniel (15 commits)")[![ettaegbe](https://avatars.githubusercontent.com/u/11290104?v=4)](https://github.com/ettaegbe "ettaegbe (4 commits)")[![tssujt](https://avatars.githubusercontent.com/u/17313425?v=4)](https://github.com/tssujt "tssujt (1 commits)")[![yuesh](https://avatars.githubusercontent.com/u/12636087?v=4)](https://github.com/yuesh "yuesh (1 commits)")

---

Tags

firebaseFCM

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/icemix-laravel-fcm-notification-channel/health.svg)

```
[![Health](https://phpackages.com/badges/icemix-laravel-fcm-notification-channel/health.svg)](https://phpackages.com/packages/icemix-laravel-fcm-notification-channel)
```

###  Alternatives

[paragraph1/php-fcm

PHP application server for google firebase cloud messaging (FCM)

1991.2M10](/packages/paragraph1-php-fcm)[benwilkins/laravel-fcm-notification

Laravel FCM (Firebase Cloud Messaging) Notification Channel

210964.1k1](/packages/benwilkins-laravel-fcm-notification)[edwinhoksberg/php-fcm

A library for sending Firebase cloud messages and managing user topic subscriptions, device groups and devices.

68328.5k1](/packages/edwinhoksberg-php-fcm)[redjanym/php-firebase-cloud-messaging

PHP SDK for Firebase Cloud Messaging from Google

39847.9k1](/packages/redjanym-php-firebase-cloud-messaging)[redjanym/fcm-bundle

A Symfony Bundle for projects to send notifications in mobile devices through Firebase Cloud Messaging HTTP V1 API

43453.0k](/packages/redjanym-fcm-bundle)[liliom/laravel-firebase

Laravel FCM (Firebase Cloud Messaging) Notification Channel

2426.1k](/packages/liliom-laravel-firebase)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
