firebase / firebase/firebase-admin-java

Duplicate Notifications Delivered through FC

Đang mở
#863 3 bình luận 0 reaction 0 người được giao Xem trên GitHub
api: messaging
Ngôn ngữ chính
Java
Star
620
Fork
305
Merge trung bình
3 giờ 23 phút
Pull request đã merge (30 ngày)
1

Mô tả

### Environment:

* Operating System version: Java 8
* Firebase SDK version: 10.11.0
* Library version: 8.1.0
* Firebase Product: messaging (auth, database, storage, etc)

### Problem:

We're seeing multiple instances of a single message being sent via Cloud Messaging using the Firebase Admin SDK, and users seeing duplicates on iOS. We have logs both on the server side, directly before and after on the server side, and on the client side upon receipt in a Notification Service Extension.

We've verified through these logs (tied to data from user screenshots), that the message is sent only once on our server, we receive a success response from the Firebase SDK, and the user receives that exact notification twice.

#### Server Logs:
```
16:08:16.542 | al-pool-2228 | INFO | w.SendNotificationWorker$ | 303 | 31ec5101-b43e-4519-99a1-9bb3650471c7: Successfully sent notification 2273480
16:08:16.537 | al-pool-7377 | INFO | .n.NotificationDispatcher | 342 | Notification id 2273480 sent status true
16:08:16.537 | al-pool-7377 | INFO | c.s.f.s.FirebaseService$ | 158 | Submitted notification to Firebase with messageId: projects/{redacted}/messages/{redacted} for notification id: 2273480
16:08:16.336 | al-pool-4602 | INFO | w.SendNotificationWorker$ | 92 | 31ec5101-b43e-4519-99a1-9bb3650471c7: Sending notification 2273480
```

#### Client Logs:
```
16:08:21.092 AM -0700 | INFO | {redacted} | NotificationService | did receive notification | notificationId = 2273480
16:08:21.091 AM -0700 | INFO | {redacted} | NotificationService | did receive notification | notificationId = 2273480
```

#### Relevant Code:

```
val messageId = FirebaseMessaging.getInstance.send(messageBuilder.build)
logger.info(s"Submitted notification to Firebase with messageId: $messageId for notification id: ${notificationId
.getOrElse(0L)}")
```

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

No repository file or test is named. Start at the FirebaseMessaging.getInstance.send call and compare the server message ID and send logs with the Notification Service Extension receipt logs. Done requires identifying whether duplication originates in the SDK, Firebase Cloud Messaging, or downstream delivery, with a reproducible verification or documented external cause.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
firebase, java
Lĩnh vực
api, backend
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.