laravel-notification-channels/pushbullet
| Install | |
|---|---|
composer require laravel-notification-channels/pushbullet |
|
| Latest Version: | 1.5.0 |
| PHP: | ^7.3 || ~8.0.0 || ~8.1.0 || ~8.2.0 |
| License: | MIT |
| Last Updated: | Apr 17, 2023 |
| Links: | GitHub · Packagist |

Pushbullet notification channel for Laravel
This package makes it easy to send notifications using Pushbullet with Laravel 5.5+, 6.x, 7.x and 8.x.
Contents
Installation
To get the latest version of Pushbullet Notification channel for Laravel 5.3, simply require the project using Composer:
$ composer require laravel-notification-channels/pushbullet
Or you can manually update your require block and run composer update if you choose so:
{
"require": {
"laravel-notification-channels/pushbullet": "^1.0"
}
}
Setting up the Pushbullet service
In your pushbullet account go to Account settings page. Click Create Access Token button and you will get access_token.
You need to put it to config/services.php configuration file. You may copy the example configuration below to get started:
'pushbullet' => [
'access_token' => env('PUSHBULLET_ACCESS_TOKEN')
]
Usage
Routing Pushbullet notifications
In order to send notifications to Pushbullet you need to specify recipient for each notifiable entity. There are currently 2 options: pushbullet email or device id of recipient.
To provide library with correct notification recipient you need to define routeNotificationForPushbullet method on notifiable entity.
Sending notification to email:
public function routeNotificationForPushbullet()
{
return new \NotificationChannels\Pushbullet\Targets\Email($this->email);
}
Sending notification to device id:
public function routeNotificationForPushbullet()
{
return new \NotificationChannels\Pushbullet\Targets\Device($this->pushbullet_device_id);
}
Sending notification to all subscribers of channel that has tag:
public function routeNotificationForPushbullet()
{
return new \NotificationChannels\Pushbullet\Targets\Channel($this->channel_tag);
}
Sending notification to all of the user's devices
public function routeNotificationForPushbullet()
{
return new \NotificationChannels\Pushbullet\Targets\UserDevices();
}
via Method
On notification entity just add \NotificationChannels\Pushbullet\PushbulletChannel::class item to array that is returned from via method.
toPushbullet Method
In your notification class you also should define toPushbullet method which will return instance of \NotificationChannels\Pushbullet\PushbulletMessage.
/**
* Get the pushbullet representation of the notification.
*
* @param mixed $notifiable
* @return \NotificationChannels\Pushbullet\PushbulletMessage
*/
public function toPushbullet($notifiable)
{
$url = url('/invoice/' . $this->invoice->id);
return PushbulletMessage::create('Thank you for using our application!')
->link()
->title('One of your invoices has been paid!')
->url($url);
}
Available Message methods
note(): set notification type to note (title and message for notification are available)link(): set notification type to link (title, message and url are available)title($title): (string) set notification titlemessage($message): (string) set notification messageurl($url): (string) set notification url (will be in notification if type islink)
Changelog
Please see CHANGELOG for more information what has changed recently.
Testing
$ composer test
Security
If you discover any security related issues, please email themsaid@gmail.com instead of using the issue tracker.
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.