Declarative Web Push support? "web_push" additional field support

Aperta
#488 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
csharp
Ambito
api

Direzione di ricerca

La issue non indica alcun file del repository, test o punto di ingresso. Inizia individuando dove vengono modellati o serializzati i payload delle notifiche web-push nel C# SDK, quindi confronta il suo output con il campo web_push dell'esempio. Il lavoro è completato quando l'SDK può produrre il campo richiesto preservando il comportamento esistente dei payload delle notifiche, con una copertura per il formato risultante.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

needs-triage

Any idea about how to format the message to make it compliant with Declarative Web Push?

It only is a minor update to how messages should be formatted, but I don't see how this can be performed with your library (which is excellent work, otherwise).

Sending Declarative Web Push-compliant messages is required for Safari not to drop push subscriptions after some time automatically (see https://github.com/firebase/firebase-js-sdk/issues/8010). Note this behavior, nicknamed Intelligent Tracking Prevention (ITP), may happen with macOS Safari, not just with iOS. Basically, the client service worker may be killed anytime on client machines, and because of that, incoming notifications can no longer be displayed... unless there is a specific field in the payload indicating to the browser it has a green light to display a notification by itself, without even going through the service worker:

{
  "web_push": 8030, // makes push message Declarative Web Push-compliant
  "notification": {
    "title": "...",    
    "body": "...",    
  }
}

A short but good video about the subject, made by Apple, is provided here.

Lingua principale
C#
Stelle
408
Fork
147
Merge medio
1g 3h
PR unite (30g)
10

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di firebase/firebase-admin-dotnet

Tutte le issue di firebase/firebase-admin-dotnet

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.