edwardkarlsson/laravel-pushover

A simple, yet very powerful, package that helps you get started with sending push notifications to your iOS or Android device through the pushover.net service.

1.0.7 2018-10-16 18:27 UTC

This package is auto-updated.

Last update: 2024-12-21 00:51:52 UTC


README

A simple, yet very powerful, package that helps you get started with sending push notifications to your iOS or Android device through the pushover.net service.

Content

Installation

To get the latest version of edwardkarlsson/laravel-pushover simply require it in your composer.json file.

composer require edwardkarlsson/laravel-pushover:dev-master

This package utilizes the autodiscovery features of Laravel so the installation will be a breeze.

Configuration

The only configuration you need to do is to add the following to your .env file

PUSHOVER_TOKEN=[enter your token here]
PUSHOVER_USER=[place this your user key here]

Usage

Send message

To send a notification, simply add this to your code:

$message = new PushoverMessage('My message');
$message->send();

You can optionally add a second parameter that will be attached as a title to the message

$message = new PushoverMessage('My content', 'My title');
$message->send();

Don't forget to import the class into your file: use Pushover\PushoverMessage;

Advanced usage:

$message = new PushoverMessage('My <b>message</b> content.', 'My title!');
        
$message->isHtml()
    ->sound('cashregister')
    ->url('http://example.com')
    ->urlTitle('ExampleSite')
    ->priority(1)
    ->device('my-main-device')
    ->send();

Get limits

To get your monthly limits, write the following:

$limitation = new PushoverLimitation();

$limitsResponse = $limitation->get();

echo $limitsResponse->limit();
echo $limitsResponse->remaining();
echo $limitsResponse->reset();

Get receipt

When a message with priority 2 is sent, you can get a receipt to check on the acknowledgment of the message.

$message = new PushoverMessage($this->faker->sentence, $this->faker->word);

$messageResponse = $message
    ->priority(2)
    ->retry(30)
    ->expire(120)
    ->send();

$receiptResponse = $messageResponse->receipt()->get();

// Available methods
$receiptResponse->acknowledged(); // returns boolean
$receiptResponse->acknowledgedAt(); // returns Carbon
$receiptResponse->acknowledgedBy(); // returns string
$receiptResponse->acknowledgedByDevice(); // returns string
$receiptResponse->lastDeliveredAt(); // returns Carbon
$receiptResponse->expired(); // returns boolean
$receiptResponse->expiresAt(); // returns Carbon
$receiptResponse->calledBack(); // returns boolean
$receiptResponse->calledBackAt(); // returns Carbon

License

Copyright (c) 2018 Edward Karlsson Licensed under the MIT license.