andriajah Wed Nov 2021 1 year ago

Contoh Laravel Firebase Push Notification Android & IOS

Dalam contoh ini, Anda akan mempelajari pemberitahuan push laravel ke firebase android dan ios. Kita akan melihat contoh push notification laravel firebase android. saya ingin menunjukkan kepada Anda pemberitahuan push laravel android. jika Anda ingin melihat contoh notifikasi push laravel ios android maka Anda adalah tempat yang tepat.

 

Hari ini, saya akan memberikan contoh sederhana mengirim pemberitahuan push firebase ke aplikasi android dan ios menggunakan laravel. anda juga dapat menggunakan di laravel 6, laravel 7 dan laravel versi 8.

 

Di sini, saya akan memberi Anda langkah yang sangat sederhana untuk mengirim pemberitahuan push ke aplikasi android dan ios menggunakan aplikasi laravel. jadi pada dasarnya aplikasi seluler front-end Anda memberi Anda token perangkat dan Anda akan menyimpannya di database. Kemudian Anda akan menggunakan token perangkat itu untuk mengirim pemberitahuan push menggunakan firebase laravel. jadi mari ikuti langkah-langkah di bawah ini:

 

Pratinjau:

 

Langkah 1: Buat Proyek dan Aplikasi Firebase

Pada langkah pertama, kita harus pergi Firebase Console dan membuat proyek. maka Anda harus membuat aplikasi web pada proyek itu seperti yang saya tambahkan di bawah tangkapan layar:

Setelah aplikasi berhasil dibuat, kita akan pergi ke halaman pengaturan dan mendapatkan kunci api server seperti gambar di bawah ini:

Anda dapat menyalin Key  itu dan menambahkan file env seperti di bawah ini:

.env

FCM_SERVER_KEY = XXXXX

Langkah 2: Buat Ruote

Di sini, kita perlu menambahkan beberapa route untuk mengirim pemberitahuan push jadi mari tambahkan route itu di file web.php.

route/web.php

 

<?php
  
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\NotificationController;
  
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
   
Route::get('push-notification', [NotificationController::class, 'index']);
Route::post('sendNotification', [NotificationController::class, 'sendNotification'])->name('send.notification');

 

Langkah 3: Buat Controller

Di sini, kita perlu menambahkan metode index() dan sendNotification() untuk route admin di NotificationController.

 

Dalam metode sendNotification() kita akan mendapatkan semua token perangkat dari tabel pengguna dan mengirimkan notifikasi ke pengguna.

 

sekarang, jadi mari kita tambahkan seperti di bawah ini:

 

app/Http/Controllers/NotificationController.php

 

<?php
 
namespace App\Http\Controllers;
  
use Illuminate\Http\Request;
use 
  
class   
{
    /**
     * Write code on Method
     *
     * @return response()
     */
    public function
    {
        return view('pushNotification'
    } 
  
     /**
     * Write code on Method
     *
     * @return response()
     */
    public function sendNotification(Request $request)
    {
        $firebaseToken = User::whereNotNull('device_token')->pluck('device_token')->all();
            
        $SERVER_API_KEY = env('FCM_SERVER_KEY');
    
        $data = [
            "registration_ids" => $firebaseToken,
            "notification" => [
                "title" => $request->title,
                "body" => $request->body,  
            ]
        ];
        $dataString = json_encode($data);
      
        $headers = [
            'Authorization: key=' . $SERVER_API_KEY,
            'Content-Type: application/json',
        ];
      
        $ch = curl_init();
        
        curl_setopt($ch, CURLOPT_URL, 'https://fcm.googleapis.com/fcm/send');
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $dataString);
                 
        $response = curl_exec($ch);
    
        return back()->with('success', 'Notification send successfully.');
    }
}

 

Langkah 4: Perbarui File Blade

Pada langkah ini, kita akan membuat file pushNotification.blade.php dengan kode berikut:

 

resources/views/pushNotification.blade.php

 

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Laravel Firebase Push Notification to Android and IOS App Example - Medikre.com</title>
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
  
<br/>
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div class="card-header">{{ __('Dashboard') }}</div>
     
                <div class="card-body">
                    @if (session('success'))
                        <div class="alert alert-success" role="alert">
                            {{ session('success') }}
                        </div>
                    @endif
    
                    <form action="{{ route('send.notification') }}" method="POST">
                        @csrf
                        <div class="form-group">
                            <label>Title</label>
                            <input type="text" class="form-control" name="title">
                        </div>
                        <div class="form-group">
                            <label>Body</label>
                            <textarea class="form-control" name="body"></textarea>
                          </div>
                        <button type="submit" class="btn btn-primary">Send Notification</button>
                    </form>
    
                </div>
            </div>
        </div>
    </div>
</div>
</body>
</html>

 

Jalankan Aplikasi Laravel

Semua langkah yang diperlukan telah dilakukan, sekarang Anda harus mengetikkan perintah yang diberikan di bawah ini dan tekan enter untuk menjalankan aplikasi Laravel:

php artisan serve

Sekarang, Buka browser web Anda, ketik URL yang diberikan dan lihat output aplikasi:

http://localhost:8000/push-notification

Saya harap ini dapat membantu Anda ...

firebase laravle push notification push notification android & ios firebase laravel alaravel firebase