Download the PHP package berkayk/onesignal-laravel without Composer
On this page you can find all versions of the php package berkayk/onesignal-laravel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package onesignal-laravel
OneSignal Push Notifications for Laravel
Introduction
This is a simple OneSignal wrapper library for Laravel. It simplifies the basic notification flow with the defined methods. You can send a message to all users or you can notify a single user. Before you start installing this service, please complete your OneSignal setup at https://onesignal.com and finish all the steps that is necessary to obtain an application id and REST API Keys.
Installation
First, you'll need to require the package with Composer:
Afterwards, run composer update
from your command line.
You only need to do the following if your Laravel version is below 5.5:
Then, update config/app.php
by adding an entry for the service provider.
Then, register class alias by adding an entry in aliases section
Finally, from the command line again, run
to publish the default configuration file.
This will publish a configuration file named onesignal.php
which includes
your OneSignal authorization keys.
Note: If the previous command does not publish the config file successfully, please check the steps involving providers and aliases in the
config/app.php
file.
Configuration
You need to fill in your OneSignal App ID and REST API Key inside your .env file like this:
You can control timeout of the Guzzle client used by OneSignalClient by adding following into your .env file
This param is useful when you are planning to send push notification via Laravel queues
Usage
Sending a Notification To All Users
You can easily send a message to all registered users with the command
$url
, $data
, $buttons
and $schedule
fields are optional. If you
provide a $url
parameter, users will be redirected to that url.
Sending a Notification based on Tags/Filters
You can send a message based on a set of tags with the command
Example 1:
Example 2:
Sending a Notification To A Specific User
After storing a user's token in a table, you can simply send a message with
$userId
is the user's unique id where he/she is registered for notifications.
Read https://documentation.onesignal.com/docs/add-user-data-tags for additional details.
$url
, $data
, $buttons
and $schedule
fields are optional. If you provide
a $url
parameter, users will be redirected to that url.
Sending a Notification To A Specific external User (custom user id added by user)
After storing a user's token in a table, you can simply send a message with
$userId
is the user's unique external id (custom id) added by the user where he/she is registered for notifications.
Read https://documentation.onesignal.com/docs/add-user-data-tags for additional details.
$url
, $data
, $buttons
and $schedule
fields are exceptional. If you provide
a $url
parameter, users will be redirected to that url.
Sending a Notification To Segment
You can simply send a notification to a specific segment with
$url
, $data
, $buttons
and $schedule
fields are optional. If you
provide a $url
parameter, users will be redirected to that url.
Sending a Custom Notification
You can send a custom message with
Sending a async Custom Notification
You can send a async custom message with
Please refer to https://documentation.onesignal.com/reference for all customizable parameters.
Examples
Some people found examples confusing, so I am going to provide some detailed examples that I use in my applications. These examples will probably guide you on customizing your notifications. For custom parameters, please refer to https://documentation.onesignal.com/reference/create-notification.
1) Sending a message to a segment with custom icon and custom icon color
You need to customize android_accent_color
and small_icon
values before sending your notifications. These are parameters
that you need to specify while sending your notifications.
2. Sending a message with high priority
This time, we will specify parameters one after the other.
3. Sending a message with custom heading and subtitle
4. Sending a delayed message to a specific user with many custom parameters
All versions of onesignal-laravel with dependencies
guzzlehttp/guzzle Version ^6.2|^7.4.1|^7.2
illuminate/support Version ~5.5|~6.0|~7.0|~8.0|~9.0|^10.0|^11.0
symfony/psr-http-message-bridge Version 1.*|2.*|^7.0