用于Pushover服务的简单PHP库

v1.2 2017-01-20 01:23 UTC

This package is not auto-updated.

Last update: 2024-09-25 03:04:30 UTC


README

Build Status Version Total Downloads License

这是一个用于Pushover服务的简单PHP库。

该库遵循PSR-4标准编写。

安装

使用Composer进行安装。

composer.json

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

运行composer

composer install

使用方法

基本示例

<?php

require 'vendor/autoload.php';

use LeonardoTeixeira\Pushover\Client;
use LeonardoTeixeira\Pushover\Message;
use LeonardoTeixeira\Pushover\Exceptions\PushoverException;

$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;
}

您还可以在构造函数中传递标题和优先级

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

完整示例

<?php

require 'vendor/autoload.php';

date_default_timezone_set('UTC');

use LeonardoTeixeira\Pushover\Client;
use LeonardoTeixeira\Pushover\Message;
use LeonardoTeixeira\Pushover\Priority;
use LeonardoTeixeira\Pushover\Sound;
use LeonardoTeixeira\Pushover\Exceptions\PushoverException;
use LeonardoTeixeira\Pushover\Receipt;
use LeonardoTeixeira\Pushover\Status;

$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;
}

紧急优先级

对于紧急优先级,您必须提供retryexpire参数。callback参数是可选的。

更多信息

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

您可以使用poll轮询通知状态。

运行测试

vendor/bin/phpunit