pushbots / pushbots-php
PushBots PHP SDK
1.2.0
2018-10-06 22:15 UTC
Requires
- php: >= 5.5
- guzzlehttp/guzzle: ~6.3.3
Requires (Dev)
- phpdocumentor/phpdocumentor: 2.*
- phpunit/php-timer: 1.0.9
- phpunit/phpunit: 4.8.12
This package is auto-updated.
Last update: 2025-03-14 04:08:48 UTC
README
pushbots-php
Official PHP package for PushBots
Installation
Requires PHP 5.5.
Install with Composer
$ php composer.phar require pushbots/pushbots-php
Then require the library in your PHP code:
require "vendor/autoload.php";
Example
<?php // load dependencies require 'vendor/autoload.php'; use Pushbots\PushbotsClient; use GuzzleHttp\Exception\ClientException; use GuzzleHttp\Exception\ServerException; use GuzzleHttp\Psr7; $client = new PushbotsClient("APPLICATION_ID", "APPLICATION_SECRET"); try { //Sample sending campaign to all users $res = $client->campaign->send([ //Platforms //0 => iOS //1 => Android //2 => Chrome //3 => Firefox //4 => Opera //5=> Safari "platform" => [0,1,2,3,4,5], //Message "msg" => "Notification message", //Badge [iOS only] "badge" => "+1", //Notification payload "payload"=>[ "key"=> "value" ] ]); } catch (ClientException $e) { echo Psr7\str($e->getRequest()); echo Psr7\str($e->getResponse()); } catch (ServerException $e) { echo Psr7\str($e->getRequest()); echo Psr7\str($e->getResponse()); }
Alias
//Sample sending campaign to an alias $client->campaign->alias("ALIAS", "Notification message");
Test notification
//Sample sending campaign to an alias $client->campaign->test();
Exceptions
Guzzle throws exceptions for errors that occur during a transfer.
Sending to one device [Transactional]
use GuzzleHttp\Exception\ClientException; use GuzzleHttp\Exception\ServerException; use GuzzleHttp\Psr7; ...... try { $client->transactional->send([ //topic [Required] of the transactional notification [can be any value, used only for tracking] "topic" => "welcome_campaign", //Platform [Required] //0 => iOS //1 => Android //2 => Chrome //3 => Firefox //4 => Opera //5=> Safari "platform" => 0, //recipients [Required] "recipients"=> [ "tokens"=> ["343aa292e2bb642db2abb24124417cdf945a03e18c9434499d0dcef8b0d7dd0f"] //==OR== "ids"=>["ID"] ], //Message [Required] "message" => [ "title"=>"title", //[Optional] "body" => "Notification message", "payload" => ["key"=>"value"] //[Optional] ] ]); } catch (ClientException $e) { echo Psr7\str($e->getRequest()); echo Psr7\str($e->getResponse()); } catch (ServerException $e) { echo Psr7\str($e->getRequest()); echo Psr7\str($e->getResponse()); }
Changelog
Version 1.2.1
- Add campaign V3 support.
- Bug fixes.
Version 1.2.0
- Bug fixes.
- Add transactional API support v3.
- Catch GuzzleExceptions in sample code.
Version 1.1.0
- Add testing notification.
- Add Push/one support.
- Add alias support.
Version 1.0.0
- Release PushBots PHP package