Skip to content

chatisk/laravel-firebase-broadcast-driver

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FireBase Broadcast Driver
Latest Stable Version Total Downloads

Installation

  • composer require ctf0/firebase-broadcast-driver

  • the package internally use kreait/firebase-php to send data to firebase.

Config

// config/broadcasting

return [
    'connections' => [
        // ...

        'firebase' => [
            'driver'          => 'firebase',
            'type'            => 'firestore', // database or firestore
            'databaseURL'     => env('FB_DB_URL'), // the real time database url
            'creds_file'      => env('FB_CREDENTIALS_FILE'), // service account json file
            'collection_name' => env('FB_COLLECTION_NAME'), // ex.notifications
        ],
    ],
];

Usage

  • add BROADCAST_DRIVER=firebase to .env

  • atm there no support for laravel-echo "any help is appreciated" but no worries, you still get the same payload as other broadcast drivers.

    however you can check the firebase api docs or vuefire if you are using vue, on how to listen for changes and update your app users accordingly.

Notification Data Sample

{
    "notifications" : {
        "-LkgtAVVw0Ztwyjayd9n" : {
            "channel" : "private-App.User.091b0f7e-805b-4aab-8c99-445039157783",
            "data" : {
                "body" : "some body",
                "id" : "d54c44a2-8a42-43a4-bae0-e2b159d1533b",
                "title" : "some title",
                "type" : "App\\Notifications\\AlertUser"
            },
            "event" : "Illuminate\\Notifications\\Events\\BroadcastNotificationCreated",
            "timestamp": 1564183089538
        }
    }
}

Security

If you discover any security-related issues, please email ctf0-dev@protonmail.com.

About

a firebase broadcast driver for laravel

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%