https://w3c.github.io/push-api/ -- абстрактное описание того, как браузер может принимать push.
Мозилла, например, утверждает, что это уже работает и предлагает настраивать сайты, которым можно, и которым нельзя.
Я вот только одного не понял.
С точки зрения пользоваеля:
1. Вот у меня работает например комп. Для начала комп, а не телефон.
2. Firefox запущен.
3. Боб и Элис присылают мне сообщение, что бы это умное слово ни значило.
4. Вкладочка с сайтом, на котором я это сообщение буду читать, не открыта.
5. Файерфокс, соответственно его *получает*.
6. Файерфокс запускает соответствующий воркер, открывает вкладочку, всем чмафки, мимими. Ну короче это уже дело вских там JS, похапе и прочей подобной срани.
Как происходит (5)? *Куда* он его получает?
Ну и сразу усложним и одновременно упростим задачу. Работает телефон. Файерфокс не запущен, телефон спит, и только *вендорозависимый* push -- канал слушает эфир. То, что он *вендорозависимый* здесь тоже принципиально.
Короче, я ни хрена не понял.