How to Send Push Notification in Laravel 9 with OneSignal

Laravel OneSignal Push Notification Tutorial; In this tutorial, we will help you learn how to use the OneSignal messaging service in the Laravel application to send web push notifications from scratch.

Push notifications are utterly a method of informing users concerning helpful information that the users have opted-in concerning apps and services.

OneSignal is a fantastic service that helps you send push notifications, abstracting details such as the platform the device is running on. Through the OneSignal service, applications may send and receive push notifications.

In this guide, we will discuss how to implement OneSignal in laravel, and this Laravel oneSignal notification example will guide you on how to send push notifications from the Laravel app with the real-world example.

Laravel 9 OneSignal Send Push Notification Example

  • Step: 1 Download Laravel App
  • Step: 2 Install OneSignal Library
  • Step: 3 Register OneSignal Service
  • Step: 4 Update Env File
  • Step: 5 Send Push Notification Messages
  • Step: 6 View Laravel App in Browser

Download Laravel App

The essential requirement for this tutorial is to have composer configured on your system, go ahead and execute command to install the new laravel application.

composer create-project laravel/laravel my-demo-app --prefer-dist

Head over to app’s folder with provided command.

cd my-demo-app

Install OneSignal Library

The main aim of this step is to install the OneSignal plugin into the laravel app so that you can send a web push notification on the fly from laravel.

From the command prompt, execute the provided command to add the package in the app.

composer require ladumor/one-signal

Register OneSignal Service

Now, you will use the vendor:publish command, which is used to publish assets offered by third-party vendor packages.

php artisan vendor:publish --provider="Ladumor\OneSignal\OneSignalServiceProvider"

Let us begin adding OneSignalServiceProvider class and OneSignal class in config/app.php configuration file.

return [

    'providers' => [
        ...
        Ladumor\OneSignal\OneSignalServiceProvider::class,
    ],
    'aliases' => [
        ...
        'OneSignal' => \Ladumor\OneSignal\OneSignal::class,
    ]

Update Env File

Laravel One Signal is Laravel Wrapper for One Signal. One Signal is a great platform to send a push notification to your users.

So, you have to define the one signal app id, authorize and auth key in the .env file.

ONE_SIGNAL_APP_ID=xxxxxxxxx
ONE_SIGNAL_AUTHORIZE=xxxxxxxxxxx
ONE_SIGNAL_AUTH_KEY=xxxxxxxxxxxxxxx

Send Push Notification Messages

Following code goes into your controller, define OneSignal service at the top part of your controller file, furthermore define the given variables as given below.

use Ladumor\OneSignal\OneSignal;


$fields['include_player_ids'] = ['xxxxxxxx']
$msg = 'This message will appear outside your app's UI.'
OneSignal::sendPush($fields, $msg);

You may use the given method to get the notifications in laravel.

OneSignal::getNotifications();

View Laravel App in Browser

Now its time to test how one signal messaging service works in laravel; for that, you have to start the laravel app.

php artisan serve

How to Send Push Notification in Laravel with OneSignal

Conclusion

In this tutorial, we have learned how to send web push notifications using OneSignal in the laravel app.

Besides, we covered all the tricky concepts and made those concepts easy, this guide will surely enrich your laravel push notification development experience.