A simple PHP library for the Pushover service

A simple PHP library for the Pushover service

README

Build Status
Version
Total Downloads
License

A simple PHP library for the Pushover service.

This library was written using the PSR-4 standards.

Installation

Use the Composer to install.

composer.json

{
	"require": {
		"leonardoteixeira/pushover": "1.*"
	}
}

Running the composer

composer install

Usage

Basic Example

<?php

require 'vendor/autoload.php';

use LeonardoTeixeiraPushoverClient;
use LeonardoTeixeiraPushoverMessage;
use LeonardoTeixeiraPushoverExceptionsPushoverException;

$client = new Client('YOUR_USER_CODE_HERE', 'YOUR_TOKEN_HERE');

$message = new Message('Your message here.');

try {
    $client->push($message);
    echo 'The message has been pushed!', PHP_EOL;
} catch (PushoverException $e) {
    echo 'ERROR: ', $e->getMessage(), PHP_EOL;
}

You also can pass a title and the priority on constructor:

$message = new Message('Your message here.', 'Title here', Priority::HIGH);

Complete Example

<?php

require 'vendor/autoload.php';

date_default_timezone_set('UTC');

use LeonardoTeixeiraPushoverClient;
use LeonardoTeixeiraPushoverMessage;
use LeonardoTeixeiraPushoverPriority;
use LeonardoTeixeiraPushoverSound;
use LeonardoTeixeiraPushoverExceptionsPushoverException;
use LeonardoTeixeiraPushoverReceipt;
use LeonardoTeixeiraPushoverStatus;

$client = new Client('YOUR_USER_CODE_HERE', 'YOUR_TOKEN_HERE');

$message = new Message();
$message->setMessage('Your messsage <b>here</b>.');
$message->setTitle('Title here');
$message->setUrl('http://www.example.com/');
$message->setAttachment('pic.jpg');
$message->setUrlTitle('Click me!');
$message->setPriority(Priority::HIGH);
$message->setSound(Sound::SIREN);
$message->setHtml(true);
$message->setDate(new DateTime());

try {
    $receipt = $client->push($message);
    echo 'The message has been pushed!', PHP_EOL;
    $status = $client->poll($receipt);
} catch (PushoverException $e) {
    echo 'ERROR: ', $e->getMessage(), PHP_EOL;
}

Emergency Priority

For the emergency priority you must provide the parameters retry and expire. The callback parameter is optional.

More information

$message->setPriority(Priority::EMERGENCY);
$message->setRetry(60);
$message->setExpire(10800);
$message->setCallback('http://callback-url.com/');

You can poll the notification status using poll.

Running the tests

vendor/bin/phpunit

Source

Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *