赵伟杰 / php-firebase-notification
使用PHP cURL发送Firebase设备推送通知。
1.2
2022-05-13 23:08 UTC
Requires
- php: ^7.0 || ^8.0
README
一个简单的PHP类,帮助您使用PHP cURL发送Firebase推送通知。它允许您通过Firebase以3种不同的方式发送云消息。
- 发送到单个设备ID
- 发送到多个设备ID
- 发送到特定主题的订阅者
安装
通过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::TOPIC或true以启用主题。
$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);