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.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

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:

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:

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:

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).

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

PHP Build Version
Package Version
Requires php Version ^7.2.5|^8.0|^8.1
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
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package prgayman/larafcm contains the following files

Loading the files please wait ....