Tutti conosciamo le notifiche Push, ci arrivano continuamente sul nostro smartphone per fornirci informazioni sui servizi che abbiamo attivi. Lo standard del W3C Push API, attualmente in draft si propone di permettere le notifiche push mentre utilizziamo una Web Application. In buona sostanza mentre navighiamo su un sito web, quest’ultimo, attraverso lo standard Push API, ci può inviare notifiche nel browser.
Premettiano che esistono tecniche alternative, basate spesso su tecnologia Ajax, per far apparire notifiche all’interno di una Web Application, e Push API vuole proprio sopperire a questa mancanza di standardizzazione creare una struttura compatibile con tutte le applicazioni e tutti i browser.
Concetti base
Web App
Una Web Application è un’applicazione software implementate utilizzando tecnologie Web ed eseguita all’interno di un Web Browser come Firefox, Chrome, Safari, IE..
Il termine application server mentre si riferisce alla componente lato server della Web App
Push Message
E’ un messaggio ( dati ) inviati dall’application server verso la Web App
Push subscription
E’ la sottoscrizione del servizio Push effettuata dal Browser nei confronti del servizio Push. Tale sottoscrizione può essere disattivata oppure attivata, in questo caso la nostra Web App è “collegata” dal servizio Push e diventa un push endpoint per il servizio di notifiche
Push Service
E’ il sistema che permette all’application server di inviare notifiche push alla Web App.
Come funziona
Il processo è semplice e lineare ed è pressochè identico alle classiche notifiche Push degli smartphone.
- Autorizzazione a trasmettere: la Web App autorizza il Push Service ad inviare notifiche push
- Registrazione della richiesta e contestuale sottoscrizione della richiesta: attraverso un strumento chiamato Service Worker il canale viene attivato
- Il Push Service invia la notifica alla Web App
- La Web App può, a questo punto, inviare una notifica al browser per visualizzare una sorta di popup oppure instaurare una comunicazione bidirezionale con il push service come risposta alla notifica
Compatibilità browser e approfondimenti
Al momento la compatibilità è esclusivamente per Firefox 44.0 e Chrome 42.0 e vi rimandiamo all’articolo https://hacks.mozilla.org/2015/10/keep-pushing-it-with-the-w3c-push-api/ per scoprire qualcosa di più.