Skip to content

Repository files navigation

Build StatusMaintainability

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 dependenciesrequire'vendor/autoload.php';
usePushbots\PushbotsClient;
useGuzzleHttp\Exception\ClientException;
useGuzzleHttp\Exception\ServerException;
useGuzzleHttp\Psr7;
$client = newPushbotsClient("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) {
echoPsr7\str($e->getRequest());
echoPsr7\str($e->getResponse());
} catch (ServerException$e) {
echoPsr7\str($e->getRequest());
echoPsr7\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]

useGuzzleHttp\Exception\ClientException;
useGuzzleHttp\Exception\ServerException;
useGuzzleHttp\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) {
echoPsr7\str($e->getRequest());
echoPsr7\str($e->getResponse());
} catch (ServerException $e) {
echoPsr7\str($e->getRequest());
echoPsr7\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

About

PushBots PHP Official Package

Resources

Stars

3 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages