nodes / push
Push manager made for Laravel
Requires
- guzzlehttp/guzzle: 6.x
- laravel/framework: 5.1.*||5.2.*||5.3.*||5.4.*||5.5.*||5.6.*||5.7.*||5.8.*
- nodes/core: 1.1.*
Requires (Dev)
- orchestra/testbench: ~3.4
- phpunit/phpunit: ~5.7
- dev-master
- 2.2.17
- 2.2.16
- 2.2.15
- 2.2.14
- 2.2.13
- 2.2.12
- 2.2.11
- 2.2.10
- 2.2.9
- 2.2.8
- 2.2.7
- 2.2.6
- 2.2.5
- 2.2.4
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2.0
- 2.1.5
- 2.1.4
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.x-dev
- 1.0.1
- 1.0.0
- 0.1.7
- 0.1.6
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- dev-develop
- dev-bugfix/wns-does-not-support-named-users
- dev-feature/named-users
- dev-Casperhr-patch-1
- dev-feature/push
- dev-content-available-test
This package is auto-updated.
Last update: 2024-05-17 19:27:36 UTC
README
A Push manager to send push messages to mobile devices from your project.
📝 Introduction
At Nodes we send a lot of push messages from our mobile API's.
Therefore we've created a push manager, which makes the job a lot easier
📦 Installation
To install this package you will need:
- Laravel 5.2+
- PHP 7.0+
You must then modify your composer.json
file and run composer update
to include the latest version of the package in your project.
"require": { "nodes/push": "^2.0" }
Or you can run the composer require command from your terminal.
composer require nodes/push:^2.0
🔧 Setup
In Laravel 5.5 or above, service providers and aliases are automatically registered. If you're using Laravel 5.5 or above, skip ahead directly to Publish config files.
Setup service provider in config/app.php
Nodes\Push\ServiceProvider::class
Setup alias in config/app.php
'Push' => Nodes\Push\Support\Facades\Push::class
Publish config files
php artisan vendor:publish --provider="Nodes\Push\ServiceProvider"
If you want to overwrite any existing config files use the --force
parameter
php artisan vendor:publish --provider="Nodes\Push\ServiceProvider" --force
⚙ Usage
Global method
push();
Example
push()->setMessage('test')
->setExtra([
'id' => 1
])
->send();
Function on provider used to send push
// Add data to push
setMessage(string $message) : ProviderInterface; // Message (Required)
setExtra(array $extra) : ProviderInterface; // Array of key/value (int, float, bool, string)
// Segment push for userId / userIds
setAlias(string $alias) : ProviderInterface;
setAliases(array $aliases) : ProviderInterface;
// Segment push for channels, like "weekend_news" or "daily_news"
setChannels(array $channels) : ProviderInterface;
setChannel(string $channel) : ProviderInterface;
// Send push, before this is executed nothing will get send
send() : array; //In request, return array of results from provider
// Advanced configs
setIOSBadge($iOSBadge) : ProviderInterface; //Control badge on iOS app icon
setSound(string $sound) : ProviderInterface; // Custom sound
removeSound() : ProviderInterface; // Remove custom sound
setIosContentAvailable(bool $iosContentAvailable) : ProviderInterface; // Should not go in notification center
setAndroidData(array $androidData) : ProviderInterface; // Add more extra for android only, android can handle 8 times more data in push than iOS
setAndroidDeliveryPriorityHigh() : ProviderInterface; // Make sure the Android device wakes up when push is recieved
setAppGroup(string $appGroup) : ProviderInterface; // Change your default-app-group in run time. Handy for white labeling
🏆 Credits
This package is developed and maintained by the PHP team at Nodes Agency
📄 License
This package is open-sourced software licensed under the MIT license