赵伟杰/php-firebase-notification

使用PHP cURL发送Firebase设备推送通知。

1.2 2022-05-13 23:08 UTC

This package is auto-updated.

Last update: 2024-09-14 04:58:56 UTC


README

一个简单的PHP类,帮助您使用PHP cURL发送Firebase推送通知。它允许您通过Firebase以3种不同的方式发送云消息。

  1. 发送到单个设备ID
  2. 发送到多个设备ID
  3. 发送到特定主题的订阅者

安装

通过Composer安装非常简单。

composer require peterujah/php-firebase-notification

使用您的Google API密钥初始化Firebase类

use Peterujah\NanoBlock\FirebaseServiceModel;
use Peterujah\NanoBlock\FirebaseService;

define("GOOGLE_FCM_API_KEY", "AAAAtXpvsYU:APXXX");
$model = new FirebaseServiceModel();
$service = new FirebaseService(GOOGLE_FCM_API_KEY);

向单个设备ID发送消息可以这样操作。

$model->setTo("f-bbVq2uCgY:APA91bF0s7jk5lXXy");
$model->setTitle("I code it here");
$model->setMessage("Will you like to join us?");
$response = $service->notify($model);
var_export($response);

向多个用户ID发送消息可以这样操作

$model->setTo(array("User-A", "User-B", "User-C"));
$model->setTitle("I code it here");
$model->setMessage("Will you like to join us?");
$response = $service->notify($model);
var_export($response);

通过主题ID/名称发送消息可以这样操作

$model->setIsTopic(FirebaseServiceModel::TOPIC);
$model->setTo("TOPIC_GROUP_ID_NAME");
$model->setTitle("I code it here");
$model->setMessage("Will you like to join us?");
$response = $service->notify($model);
var_export($response);

方法

设置通知有效负载节点类型。默认为FirebaseServiceModel::NODE_NOTIFICATION

$model->setNode(FirebaseServiceModel::NODE_NOTIFICATION | FirebaseServiceModel::NODE_DATA);

设置要发送到主题的通知。默认为false,传递FirebaseServiceModel::TOPICtrue以启用主题。

$model->setIsTopic(FirebaseServiceModel::TOPIC);

设置通知正文,默认为消息

$model->setBody($body);

设置通知图片URL。

$model->setImage("https://img.com/path/to/foo.png");

设置Android的通知点击操作。

$model->setClickAction($click);

设置通知引用以供自定义使用。

$model->setReference($ref);

设置通知附加元数据以供自定义使用。

$model->setMeta($array);

设置通知徽章ID。

$model->setBadge($int);

设置通知背景状态。

$model->setIsBackground($bool);

设置通知声音类型。

$model->setSound($sound);