Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Gcm Laravel Package

laravel-notification-channels/gcm

Laravel notification channel for sending push notifications through Google Cloud Messaging (GCM). It integrates GCM with Laravel’s notification system, letting you deliver mobile push messages through a dedicated channel.

View on GitHub
Deep Wiki
Context7

Android GCM Push Notification Channel

Frequently asked questions about Gcm
Does laravel-notification-channels/gcm still work for sending Android push notifications?
No. The package posts to Google's legacy GCM endpoint (android.googleapis.com/gcm/send) using a legacy server key, and Google shut GCM down on April 10, 2019 in favour of Firebase Cloud Messaging. Any send attempt today fails at the transport layer no matter how the Laravel side is configured. There is no configuration change that can restore delivery.
Which Laravel and PHP versions does the GCM notification channel support?
Its Composer constraints pin it to the Laravel 5.4 through 5.6 era and PHP 5.6 to 7.0. It will not resolve against Laravel 9, 10, or 11 without forking and relaxing those constraints. The last release was published on 2017-08-10.
How do I migrate a Laravel app from the GCM channel to FCM?
The mechanical path is to switch to laravel-notification-channels/fcm, which uses the FCM HTTP v1 API with service-account credentials, or kreait/laravel-firebase for a broader Firebase integration. Payload code translates almost one-for-one: FcmMessage::create()->to($token) replaces GcmMessage::create()->to($token), data() and notification() keep their shape, and legacy options such as time_to_live and collapse_key move into the Android config block. You change via('gcm') to via('fcm') in each notification class and replace the legacy server key in config with a service account JSON and OAuth2 bearer token.
Can I still get a GCM server key for this package?
No. The legacy server key model was retired alongside GCM itself when Google shut the service down in April 2019. Credentials are now issued through Firebase Cloud Messaging projects and authenticate against the FCM HTTP v1 API, not the endpoint this package calls. There is no supported way to recreate the key this channel expects.
Is laravel-notification-channels/gcm actively maintained?
It is not. The repository is archived, the last release dates to 2017-08-10, and there is no security patching or maintainer response path. It also has zero downstream dependents, so there is no community validation or incidental bug-fixing to lean on. The MIT license does permit forking, but a fork inherits the full maintenance burden of a component that needs a transport rewrite anyway.
Should I fork the GCM package to add Firebase Cloud Messaging support?
Only if you specifically want to reuse its class names, because none of the transport layer survives. You would be writing an FCM client from scratch and inheriting 100 percent of the maintenance burden for it. Using laravel-notification-channels/fcm or kreait/laravel-firebase gives you a maintained implementation of the same idea. Treating this repository as a structural reference for how a Laravel notification channel is built is a far more sensible use.
Is it safe to install laravel-notification-channels/gcm in a production Laravel application?
No. Installing it constrains your application to the Laravel 5.4 to 5.6 era, which blocks framework upgrades, and it depends on a decommissioned external service, so the failure is hard rather than graceful. Combined with an archived repository and no security patch path, the technical risk is critical. Treat it as a historical reference only, not a dependency.
What are the alternatives to laravel-notification-channels/gcm?
Use laravel-notification-channels/fcm, which wraps the FCM HTTP v1 API, or kreait/laravel-firebase if you want a fuller Firebase integration including messaging. Both plug into Laravel's via() pattern exactly the way the GCM channel did, so the notification classes barely change. For legacy reference material, keep this repository as reading rather than a Composer requirement.
Does the GCM package support topics, multicast, and notification data payloads?
It builds payloads through the GcmMessage DTO, which mirrors the legacy GCM HTTP API: to() for a single device token, data() for key-value payload, notification() for title and body, plus legacy options like collapse_key and time_to_live. Legacy GCM also capped multicast at 1,000 tokens per request. FCM's HTTP v1 API dropped or reshaped several of these behaviours, so verify feature parity for topics and conditions before assuming a straight payload copy works.
How do I install and configure the GCM notification channel?
You would require the package with Composer, publish its config file, and fill in a single legacy GCM server API key that the service provider passes to GcmChannel. You then add 'gcm' to the via() array of a notification class and send through Laravel's notification system as usual. Because the legacy key type and endpoint were retired in 2019, no value you place in that config file will produce a successful send today.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console