keithchasen / phpushious
Php iOS push notifications provider
dev-master
2017-02-07 21:21 UTC
Requires
- php: >= 7
- lib-curl: >= 7.46.0
- lib-openssl: >= 1.0.2
- spomky-labs/jose: ^6.1.1
Requires (Dev)
- phpmd/phpmd: @stable
- squizlabs/php_codesniffer: 2.*
This package is not auto-updated.
Last update: 2025-02-01 22:19:30 UTC
README
Simple php library for iOS push notifications with token based authentication and HTTP/2
Requirements
- PHP >= 7.0.12
- curl >= 7.46.0
- openssl >= 1.0.2
Installation
$ composer require keithchasen/phpushious dev-master
Simplest using example
<?php use Phpushios\Auth; use Phpushios\Message; use Phpushios\Sender; $apnsKeyId = 'NHDF3G4HS3'; $apnsAuthKey = 'path/to/APNSAuthKey_NHDF3G4HS3.p8'; $teamId = 'CH63KE89LH'; $secret = null; $bundleId = 'com.somebundle.id'; $env = 'production'; $userToken = 'ae01912dee52f0dc41b16a2fa9d68ff631dc9112b7d629f24008f466e1efef2d'; $auth = new Auth($apnsAuthKey); $authToken = $auth->setAuthToken($apnsKeyId, $secret, $teamId); $pushSender = new Sender($env, $authToken, $bundleId); $message = new Message(); $messageToSend = 'push message with p8'; $pushSender->addReceiver($userToken); $message->setAlert($messageToSend); $payload = $message->setPayload(); $pushSender->sendPush($payload);
Example using custom badge number for particular device token
<?php use Phpushios\Auth; use Phpushios\Message; use Phpushios\Sender; $apnsKeyId = 'NHDF3G4HS3'; $apnsAuthKey = 'path/to/APNSAuthKey_NHDF3G4HS3.p8'; $teamId = 'CH63KE89LH'; $secret = null; $bundleId = 'com.somebundle.id'; $env = 'development'; $tokens = [ ['token' => 'a3r1n3c8596f56f39921f79c55c91a061ea5042ab7be00620e7df0c76069aa7a', 'badge' => 12], ['token' => 'a3r1n3c8596f56f39921f79c55c91a061ea5042ab7be00620e7df0c76069aa7b', 'badge' => 32], ['token' => 'a3r1n3c8596f56f39921f79c55c91a061ea5042ab7be00620e7df0c76069aa7c', 'badge' => 42], ['token' => 'a3r1n3c8596f56f39921f79c55c91a061ea5042ab7be00620e7df0c76069aa7d', 'badge' => 55], ['token' => 'a3r1n3c8596f56f39921f79c55c91a061ea5042ab7be00620e7df0c76069aa7e', 'badge' => 11], ]; $auth = new Auth($apnsAuthKey); $authToken = $auth->setAuthToken($apnsKeyId, $secret, $teamId); $pushSender = new Sender($env, $authToken, $bundleId); $message = new Message(); $messageToSend = 'push message with p8'; foreach ($tokens as $token) { $pushSender->addReceiver($token['token']); $message->setAlert($messageToSend); $message->setBadgeNumber($token['badge']); $payload = $message->setPayload(); $pushSender->sendPush($payload); $pushSender->removeReceiversToken($token['token']); }