diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 11e5b6e9..6eefb88e 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -188,6 +188,7 @@ model User { initiatedBackups DatabaseBackup[] @relation("BackupInitiatedBy") restoredBackups DatabaseBackup[] @relation("BackupRestoredBy") emailStatus EmailStatus @default(ACTIVE) @map("email_status") + fcmToken String? @map("fcm_token") notifications Notification[] linkClicks LinkClick[] emailEngagements EmailEngagement[] diff --git a/src/notifications/notifications.service.ts b/src/notifications/notifications.service.ts index b897852f..f9ead75c 100644 --- a/src/notifications/notifications.service.ts +++ b/src/notifications/notifications.service.ts @@ -28,6 +28,12 @@ export class NotificationsService { }); // 2. Try real-time delivery + // FCM Push Integration + const user = await this.prisma.user.findUnique({ where: { id: userId }, select: { fcmToken: true } }); + if (user?.fcmToken) { + console.log(Sending FCM notification to token: \); + // In production, use admin.messaging().send() here + } const delivered = this.gateway.sendToUser(userId, 'notification', notification); if (delivered) {