Başlangıç
Firebase Push
Firebase Push (FCM) Sunucu Entegrasyonu
Kurulum
npm install firebase-admin(eklendi).- Servis hesabı için
.jsondosya yolunu, base64 içeriğini veya alan bazlı değerleri tanımla (bkz.docs/firebase.env.example). - Env değişkenlerinden biri sağlanmazsa uygulama açılışta hata fırlatır.
Kullanım
Tüm uçlar JWT ile korunur (global JwtAuthGuard).
1) Cihaz token kaydet
POST /notifications/device-token
Body: { "token": "fcm_token", "platform": "ios", "deviceId": "iphone-14-pro" }İstek sahibi kullanıcı ile token ilişkilendirilir, yoksa anonim tutulur. Aynı token tekrar gönderilirse upsert edilir ve lastUsedAt güncellenir.
2) Token sil
DELETE /notifications/device-token/:tokenİstek sahibi kullanıcıya aitse silinir; değilse 404 döner.
3) Test bildirimi gönder
POST /notifications/test
Body: {
"title": "Test",
"body": "Merhaba",
"token": "tekil_token" // veya
"userId": "hedefKullaniciId", // mevcut kullanıcı yoksa zorunlu
"data": { "foo": "bar" }
}token verilirse direkt ona gönderilir, aksi halde userId (ya da login kullanıcı) için kayıtlı tüm tokenlar kullanılır. Geçersiz tokenlar tespit edilip otomatik silinir.
Mesaj formatı
- Android:
priority: high - iOS:
content-available: true,sound: default datapayload stringe çevrilir ve 4KB sınırı içinde olmalıdır.