cimons/larafcm

Laravel FCM 包

dev-master 2018-07-11 08:32 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:08:23 UTC


README

简介

Laravel-FCM 是一个易于使用的包,可与 Laravel 和 Lumen 一起使用,通过 Firebase Cloud Messaging (FCM) 发送推送通知。

目前 仅支持 HTTP 协议 用于

  • 向单个设备发送下行消息

注意:目前不支持 XMPP 协议。

安装

要获取项目中 Laravel-FCM 的最新版本,请从 "composer" 中要求它

$ composer require cimons/larafcm:dev-master

或者您可以直接在 composer.json 文件中添加它

{
	"require": {
    	   "cimons/larafcm": "dev-master"
	}
}

Laravel

在您的应用程序配置文件 config/app.php config/app.php 中直接注册提供者

'providers' => [
	// ...

	Cimons\LaraFcm\LaraFcmServiceProvider::class,
]

在同一文件中添加 facade 别名

'aliases' => [
	...
	'FCM'             => Cimons\LaraFcm\Facades\FCM::class,
]

将配置文件 fcm.php 手动从目录 /vendor/cimons/larafcm/config 复制到目录 /config (您可能需要创建此目录)。

包配置

在您的 .env 文件中,添加 Firebase Cloud Messaging 的服务器密钥和密钥

FCM_SERVER_KEY=my_secret_server_key
FCM_SENDER_ID=my_secret_sender_id

下行消息

下行消息是指您使用其 registration_Ids 将通知消息、数据消息或两者发送到目标设备或多个目标设备。

以下使用语句对于下面的示例是必需的

use Cimons\LaraFcm\Message\NotificationBuilder;
use Cimons\LaraFcm\Facades\FCM;

向设备发送下行消息

$notificationBuilder = NotificationBuilder('my title');
$notificationBuilder->setBody('Hello world')
				    ->setSound('default');
$notification = $notificationBuilder->build();

$token = "a_registration_from_your_database";
$downstreamResponse = FCM::sendTo($token, $notification);

if ($downstreamResponse->isSent == 1) {
     echo "The message has been sent.";
} else {
    echo "The message could not be sent."
}

许可证

本库是开源软件,根据 MIT 许可证 许可。

部分文档来自官方文档。您可以在 Firebase Cloud Messaging 网站上找到完整的文档。