lahaxearnaud/laravel-pushbullet

Laravel integration of joetannenbaum/phpushbullet

2.1.0 2019-09-23 06:50 UTC

README

This package is an integration of joetannenbaum/phpushbullet library in Laravel.

Table of Contents

Installation

$ composer require lahaxearnaud/laravel-pushbullet

That's all !

Just don't forget to use the face before using it:

use Lahaxearnaud\LaravelPushbullet\Pushbullet;

Listing Devices

To list the available devices on your account:

PushBullet::devices();

This will return an array of objects with all of the device information.

Pushing

To Devices

When pushing a to a device, simply use the device's nickname or their iden from the list above.

To push to a single device:

PushBullet::device('Chrome')->note('Remember', 'Buy some eggs.');

To push to multiple devices:

PushBullet::device('Chrome')->device('Galaxy S4')->note('Remember', 'Buy some eggs.');
// or
PushBullet::device('Chrome', 'Galaxy S4')->note('Remember', 'Buy some eggs.');
// or using an array
PushBullet::device(['Chrome', 'Galaxy S4'])->note('Remember', 'Buy some eggs.');
// or using a collection
PushBullet::device(Device::all()->pluck('name'))->note('Remember', 'Buy some eggs.');

If you want to push to all devices

PushBullet::all()->note('Remember', 'Buy some eggs.');

To Type

You can select a type of device (ex android)

PushBullet::type('android')->note('Remember', 'Buy some eggs.');
// or
PushBullet::type('android')->type('chrome')->note('Remember', 'Buy some eggs.');
// or
PushBullet::type('android', 'chrome')->note('Remember', 'Buy some eggs.');
// or using an array
PushBullet::type(['android', 'chrome'])->note('Remember', 'Buy some eggs.');
// or using a collection
PushBullet::type(Type::all()->pluck('name'))->note('Remember', 'Buy some eggs.');

To Users

When pushing a to a user, simply use the user's email address:

To push to a single user:

PushBullet::user('joe@example.com')->note('Remember', 'Buy some eggs.');

To push to multiple users:

PushBullet::user('joe@example.com')->user('anne@example.com')->note('Remember', 'Buy some eggs.');
// or
PushBullet::user('joe@example.com', 'anne@example.com')->note('Remember', 'Buy some eggs.');
// or using an array
PushBullet::user(['joe@example.com', 'anne@example.com'])->note('Remember', 'Buy some eggs.');
// or using a collection
PushBullet::user(User::findMany([1, 2, 3])->pluck('email'))->note('Remember', 'Buy some eggs.');

Types

Notes

Arguments:

  • Title
  • Body
PushBullet::device('Chrome')->note('Musings', 'Why are fudgy brownies better than cakey brownies?');

Links

Arguments:

  • Title
  • URL
  • Body (optional)
PushBullet::device('Chrome')->link('Look It Up', 'http://google.com', 'I hear this is a good site for finding things.');

Addresses

Arguments:

  • Name
  • Address
PushBullet::device('Chrome')->address('The Hollywood Sign', '4059 Mt Lee Drive Hollywood, CA 90068');

Alternatively, you can pass in an associative array:

$address = [
  'address' => '4059 Mt Lee Drive',
  'city'    => 'Hollywood',
  'state'   => 'CA',
  'zip'     => '90068',
];

PushBullet::device('Chrome')->address('The Hollywood Sign', $address);

Lists

Arguments:

  • Title
  • Items (array)
$items = [
  'Socks',
  'Pants',
  'Keys',
  'Wallet',
];

PushBullet::device('Chrome')->list('Do Not Forget', $items);

Files

Arguments:

  • File Name
  • File URL (must be publicly available)
  • Body (optional)
PushBullet::device('Chrome')->file('The Big Presentation', 'http://example.com/do-not-lose-this.pptx', 'Final version of slides.');