Dall'archivio articoli > ASP.NET Core
Inviare web push notification da ASP.NET Core
Per poter utilizzare questa funzionalità, devi fare il login o iscriverti.
Quando sviluppiamo un'applicazione sappiamo che le notifiche sono gli alert che ricordano all'utente l'esistenza della nostra applicazione, e che ne garantiscono un utilizzo continuo nel corso del tempo.
Sebbene a prima vista il concetto di notifica possa sembrare semplice, andando un po' più a fondo scopriamo che la creazione un sistema di notifiche non è così banale. Creando applicazioni cross-platform dobbiamo riuscire a creare anche delle notifiche cross platform. Sui dispositivi dove la gestione delle notifiche è demandata a background task, la realizzazione si traduce nella sottoscrizione, a seconda del device, dell'applicazione ad un centro di notifica differente (iOs, Android, Microsoft) o a servizi universali (Aws, Azure).
Con l'utilizzo di un'applicazione PWA (Progressive Web App), la registrazione è completamente demandata al browser! Quindi la discriminante non sarà più la piattaforma di utilizzo, bensì un url di endpoint fornito dal browser stesso!
Ogni browser implementa uno standard di comunicazione definito Push API (qui le specifiche complete), il quale consente, chiamando il push service dedicato, di inviare una notifica ad una applicazione che gira sul browser.
Ecco un tipico esempio di sottoscrizione fornita dal browser:
{ "endpoint": "https://pushservice.com/browser-identify", "keys": { "p256dh": "BIPUL12DLfytvTajnryr2PRdAgXS3HGKiLqndGcJGabyhHheJYlNGCeXl1dn18gSJ1WAkAPIxr4gK0_dQds4yiI=", "auth":"FPssNDTKnInHVndSTdbKFw==" } }
Come possiamo dedurre, l'url indicato come endpoint sarà il servizio di push su cui il browser sarà in ascolto:
In entrambi i casi la comunicazione dovrà obbligatoriamente avvenire su protocollo https per consentire la sicurezza del messaggio nella comunicazione.
Questo standard, implementato su tutti i browser moderni, fa sì che la nostra applicazione possa essere complementamente platform agnostic il che garantirà a noi molti meno sforzi!
All'interno di questo articolo andremo ad utilizzare la libreria Lib.Net.Http.WebPush (https://github.com/tpeczek/Lib.Net.Http.WebPush), libreria per .NET Core, che implementa il protocollo di comunicazione per l'invio delle notifiche ai diversi endpoint.
Attenzione: Questo articolo contiene un allegato.
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.