Download the PHP package prgayman/larafcm without Composer
On this page you can find all versions of the php package prgayman/larafcm. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package larafcm
Laravel Firebase Cloud Messaging
Introduction
LaraFcm is an easy to use package working with both Laravel and Lumen for sending push notification with Firebase Cloud Messaging (FCM).
Installation
To get the latest version of LaraFcm on your project, require it from "composer":
$ composer require prgayman/larafcm
Or you can add it directly in your composer.json file:
Publish the package config and migrations files using the following command:
$ php artisan vendor:publish --provider="Prgayman\LaraFcm\Providers\LaraFcmServiceProvider"
migrate larafcm_tokens using the following command:
$ php artisan migrate
Laravel
Register the provider directly in your app configuration file config/app.php config/app.php
:
Laravel >= 5.5 provides package auto-discovery, thanks to rasmuscnielsen and luiztessadri who help to implement this feature in LaraFcm, the registration of the provider and the facades should not be necessary anymore.
Add the facade aliases in the same file:
Lumen
Register the provider in your bootstrap app file boostrap/app.php
Add the following line in the "Register Service Providers" section at the bottom of the file.
For facades, add the following lines in the section "Create The Application" .
Package Configuration
In your .env
file, add the server key and the secret key for the Firebase Cloud Messaging:
To get these keys, you must create a new application on the firebase cloud messaging console.
After the creation of your application on Firebase, you can find keys in project settings -> cloud messaging
.
Usage
Two types of messages can be sent using LaraFcm:
- Notification messages, sometimes thought of as "display messages"
- Data messages, which are handled by the client app
More information is available in the official documentation.
Larafcm tokens manager (Prgayman\LaraFcm\Services\LaraFcmToken)
Larafcm trait HasLaraFcm (Prgayman\LaraFcm\Traits\HasLaraFcm)
Downstream Messages
A downstream message is a notification message, a data message, or both, that you send to a target device or to multiple target devices using its registration_Ids.
The following use statements are required for the examples below:
Sending a Downstream Message to a Device
Kindly refer Downstream message error response codes documentation for more information.
Sending a Message to a Topic
Sending a Message to Multiple Topics
It sends notification to devices registered at the following topics:
- larafcm and ecommerce
- larafcm and news
Note : Conditions for topics support two operators per expression
Options
LaraFcm supports options based on the options of Firebase Cloud Messaging. These options can help you to define the specificity of your notification.
You can construct an option as follows:
Notification Messages
Notification payload is used to send a notification, the behaviour is defined by the App State and the OS of the receptor device.
Notification messages are delivered to the notification tray when the app is in the background. For apps in the foreground, messages are handled by these callbacks:
- didReceiveRemoteNotification: on iOS
- onMessageReceived() on Android. The notification key in the data bundle contains the notification.
See the official documentation.
Notification & Data Messages
App behavior when receiving messages that include both notification and data payloads depends on whether the app is in the background or the foreground—essentially, whether or not it is active at the time of receipt (source).
- Background, apps receive notification payload in the notification tray, and only handle the data payload when the user taps on the notification.
- Foreground, your app receives a message object with both payloads available.
Topics
For topics message, LaraFcm offers an easy to use api which abstract firebase conditions. To make the condition given for example in the firebase official documentation it must be done with LaraFcm like below:
Official documentation condition
Helper fucntions
larafcm()
Laravel Notification channel
Licence
This library is open-sourced software licensed under the MIT license.
Some of this documentation is coming from the official documentation. You can find it completely on the Firebase Cloud Messaging Website.
All versions of larafcm with dependencies
illuminate/support Version ~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
illuminate/notifications Version ~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
guzzlehttp/guzzle Version ^6.0|^7.2|^7.5
monolog/monolog Version ^1.12|^2.0|^3.0