PHPackages                             azi/laravel-fcm-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. azi/laravel-fcm-channel

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

azi/laravel-fcm-channel
=======================

Firebase Cloud Messages Notification Driver

0.2(8y ago)018MITPHPPHP &gt;=5.5.9

Since Jan 4Pushed 8y ago1 watchersCompare

[ Source](https://github.com/azeemhassni/laravel-fcm-channel)[ Packagist](https://packagist.org/packages/azi/laravel-fcm-channel)[ Docs](https://github.com/azeemhassni/laravel-fcm-channel)[ RSS](/packages/azi-laravel-fcm-channel/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (1)Dependencies (7)Versions (2)Used By (0)

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

[](#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 enniel/laravel-fcm-notification-channel:1.*
```

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)

- [Evgeni Razumov](https://github.com/enniel)
- [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

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 72.2% 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

Unknown

Total

1

Last Release

3050d ago

### Community

Maintainers

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

---

Top Contributors

[![enniel](https://avatars.githubusercontent.com/u/19760944?v=4)](https://github.com/enniel "enniel (13 commits)")[![azeemhassni](https://avatars.githubusercontent.com/u/6503258?v=4)](https://github.com/azeemhassni "azeemhassni (3 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/azi-laravel-fcm-channel/health.svg)

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

###  Alternatives

[kreait/laravel-firebase

A Laravel package for the Firebase PHP Admin SDK

1.3k16.5M42](/packages/kreait-laravel-firebase)[laravel-notification-channels/twilio

Provides Twilio notification channel for Laravel

2587.7M12](/packages/laravel-notification-channels-twilio)[benwilkins/laravel-fcm-notification

Laravel FCM (Firebase Cloud Messaging) Notification Channel

210964.1k1](/packages/benwilkins-laravel-fcm-notification)[laravel-notification-channels/discord

Laravel notification driver for Discord.

2371.3M11](/packages/laravel-notification-channels-discord)[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)
