ctf0 / firebase-broadcast-driver
a firebase broadcast driver for laravel
Fund package maintenance!
ctf0
Installs: 352
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 1
Forks: 8
Open Issues: 0
pkg:composer/ctf0/firebase-broadcast-driver
Requires
- illuminate/support: >=5.5 <10.0
- kreait/firebase-php: *
Suggests
- morrislaptop/firestore-php: Required to use with firestore db.
README
FireBase Broadcast Driver
Installation
-
composer require ctf0/firebase-broadcast-driver -
the package internally use
kreait/firebase-phpto send data to firebase.
Config
// config/broadcasting return [ 'connections' => [ // ... 'firebase' => [ 'driver' => 'firebase', 'type' => 'firestore', // database, firestore or messaging '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=firebaseto.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.