Comments (3)
This also means that notification_delivered will get called even when the notifications following the failed one did not get delivered. It will get called repeatedly on each retry.
from rpush.
We want to keep a counter updated of notifications that have succeeded or failed so we worked around this by adding additional a couple additional reflections.
Since notification_delivered gets called even for notifications that we later discover we need to resend, we added an :apns_need_to_resend
reflection to decrement the delivered count when any notifications get queued up again. We also make sure to call the notification_failed reflection when the notification failed (Normally this reflection wants the notification instance to be passed in, but since this value wasn't available in the apns_tcp class we used notification_id instead). Here's the commit: https://github.com/gdeglin/rpush/commit/413ad3fb378496158ed3bfd3e07cfebdd4118cd3
from rpush.
Thanks for the detailed report. Your commit looks like the right approach, i'll work on merging it (with some minor changes) this weekend.
from rpush.
Related Issues (20)
- Rpush can't find app with id HOT 1
- Mutable-conetnt does not get added in resposne HOT 4
- Web Push Subscriptions In Chrome Include expirationTime
- Rails 7 Time.now.to_s deprecation warning HOT 1
- How to switch from RPush APNS app to an APNS2/APNSP8 app? HOT 1
- 400/BadDeviceToken issue HOT 1
- HMS (Huawei Mobile Service) push notification HOT 2
- Pipelining commands on a Redis instance is deprecated and will be removed in Redis 5.0.0 HOT 5
- Psych::DisallowedClass exception is raised when creating a Webpush notification in Rails 6.1.6.1 HOT 1
- Interrupts stdout when running in foreground mode using foreman HOT 1
- Too many logs HOT 4
- BadDeviceToken on ios Testflight, but not when debugging HOT 2
- `content_available` stops sending push notification to Apple APNS silently. HOT 3
- APNSP8 : a very few amount of ios rpush notifications are stuck in processing mode HOT 5
- create an Apns2 app without persisting the certificate
- [Discussion] Consider migration to web-push fork? HOT 1
- [Query] What's the significance of connections attribute in Rpush::App model?
- How to add lockbox encryption for rpush columns HOT 1
- Name is already taken HOT 2
- APNS alerts with content_available not displayed
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rpush.