Здравствуйте!
Реализовал пуш-уведомления по этой статье
https://habrahabr.ru/post/321924/
Все работает змечательно кроме того, что когда приходит пуш и окно браузера с моим сайтом не активно (открыт другой сайт) или сайт совсем закрыт, то сообщение исчезает само через 20 сек.
В моем файле
https://hdlava.me/j/firebase_subscribe.js я добавил флаг requireInteraction: true в функции messaging.onMessage для того, чтобы сообщение не исчезало само пока пользователь не кликнет по нему. Это работает если сообщение прилетело в момент, когда сайт открыт. Я прописал тот же флаг в функции messaging.setBackgroundMessageHandler в файле
https://hdlava.me/firebase-messaging-sw.js. Эта функция должна срабатывать (судя по документации
https://firebase.google.com/docs/clo...ging/js/client), когда окно с сайтом не активно и прилетело пуш-уведомление. Но ничего не срабатывает и пуш по прежнему исчезает через 20 сек. Даже console.log в firebase-messaging-sw.js messaging.setBackgroundMessageHandler не срабатывает, а значит и сам обработчик этот не срабатывает совсем.
Может кто-нибудь помочь разобраться в чем проблема?
PS: пробовал в firebase-messaging-sw.js добавить self.addEventListener("push",function(event) вместо messaging.setBackgroundMessageHandler. Срабатывает, но приходит аж 2 сообщения одновременно, одно исчезает, второе нет, но второе не кликабельно. Возможно при self.addEventListener повесить обработчик чтобы пуш кликабельным стало, и предотвратить отображение первого пуш-сообщения?