Başlangıç

Firebase Push

Firebase Push (FCM) Sunucu Entegrasyonu

Kurulum

  • npm install firebase-admin (eklendi).
  • Servis hesabı için .json dosya 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
  • data payload stringe çevrilir ve 4KB sınırı içinde olmalıdır.

On this page