PHP server library for publishing notifications through Pusher Beams.
Check https://docs.pusher.com/beams/reference/server-sdk-php for more information.
NOTE: This library requires a PHP version of 8.0 or greater
Get Composer,
then get the pusher/pusher-push-notifications
Composer package:
$ composer require pusher/pusher-push-notifications
This SDK depends on the JSON PHP module.
<?php
require __DIR__ . '/vendor/autoload.php';
$pushNotifications = new \Pusher\PushNotifications\PushNotifications(array(
"instanceId" => "YOUR_INSTANCE_ID_HERE",
"secretKey" => "YOUR_SECRET_HERE",
));
You can broadcast notifications to groups of subscribed devices using Device Interests:
$publishResponse = $pushNotifications->publishToInterests(
["donuts"],
[
"apns" => [
"aps" => [
"alert" => "Hello!",
],
],
"fcm" => [
"notification" => [
"title" => "Hello!",
"body" => "Hello, world!",
],
],
]
);
echo("Published with Publish ID: " . $publishResponse->publishId . "\n");
You can broadcast notifications with some data to groups of subscribed devices using Device Interests:
$publishResponse = $pushNotifications->publishToInterests(
["donuts"],
[
"apns" => [
"aps" => [
"alert" => "Hello!",
],
],
"fcm" => [
"notification" => [
"title" => "Hello!",
"body" => "Hello, world!",
],
"data" => [
"name" => "adam",
"type" => "user",
],
],
]
);
echo("Published with Publish ID: " . $publishResponse->publishId . "\n");
Securely send notifications to individual users of your application using Authenticated Users:
$publishResponse = $pushNotifications->publishToUsers(
["user-0001"],
[
"apns" => [
"aps" => [
"alert" => "Hello!",
],
],
"fcm" => [
"notification" => [
"title" => "Hello!",
"body" => "Hello, world!",
],
],
]
);
echo("Published with Publish ID: " . $publishResponse->publishId . "\n");