Browse Source

Fix web push subscriptions being deleted on rate limit or timeout (#11826)

pull/4/head
Eugen Rochko 4 years ago
committed by GitHub
parent
commit
e8703c281e
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 1 deletions
  1. +7
    -1
      app/workers/web/push_notification_worker.rb

+ 7
- 1
app/workers/web/push_notification_worker.rb View File

@ -11,7 +11,13 @@ class Web::PushNotificationWorker
subscription.push(notification) unless notification.activity.nil?
rescue Webpush::ResponseError => e
subscription.destroy! if (400..499).cover?(e.response.code.to_i)
code = e.response.code.to_i
if (400..499).cover?(code) && ![408, 429].include?(code)
subscription.destroy!
else
raise e
end
rescue ActiveRecord::RecordNotFound
true
end

Loading…
Cancel
Save