From 54382287dacadc73615a2be21bf9066ecbc8ed2b Mon Sep 17 00:00:00 2001 From: Marco Colli Date: Thu, 23 Sep 2021 16:58:05 +0200 Subject: [PATCH] Change VAPID expiration from 24h to 12h The default value of 24h is not a safe default value. Sometimes when you restart a server and the clock is wrong by a few seconds, it may result in notifications being rejected by Google Firebase. Note that 24h is the limit for Firebase, so even a small bias can cause issues. 12h is a better default because it ensures the notification delivery even if the clock is not perfect. 12h is the average between 24h (max) and 0 (min) and, given a random deviation in the clock, it maximizes the probability of successful notifications. --- lib/webpush/request.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/webpush/request.rb b/lib/webpush/request.rb index d90a01f..f29ea69 100644 --- a/lib/webpush/request.rb +++ b/lib/webpush/request.rb @@ -112,7 +112,7 @@ def audience end def expiration - @vapid_options.fetch(:expiration, 24 * 60 * 60) + @vapid_options.fetch(:expiration, 12 * 60 * 60) end def subject