comparison mod_web_push/README.markdown @ 3614:f74444b0e187

mod_web_push: README: Fix list formatting
author Maxime “pep” Buquet <pep@bouah.net>
date Sun, 09 Jun 2019 22:05:39 +0200
parents a5da9172362a
children
comparison
equal deleted inserted replaced
3613:a5da9172362a 3614:f74444b0e187
30 is essentially the same principle as Mobile OS vendors' Push notification 30 is essentially the same principle as Mobile OS vendors' Push notification
31 systems. It is implemented by most browsers vendors except Safari on iOS 31 systems. It is implemented by most browsers vendors except Safari on iOS
32 (mobile). 32 (mobile).
33 33
34 For more information, see: 34 For more information, see:
35
35 - https://developer.mozilla.org/en-US/docs/Web/API/Push_API 36 - https://developer.mozilla.org/en-US/docs/Web/API/Push_API
36 - https://developers.google.com/web/ilt/pwa/introduction-to-push-notifications 37 - https://developers.google.com/web/ilt/pwa/introduction-to-push-notifications
37 38
38 Compared to [XEP-0357: Push Notifications], Web Push doesn't need an App 39 Compared to [XEP-0357: Push Notifications], Web Push doesn't need an App
39 Server. 40 Server.
40 41
41 The general flow for subscription is: 42 The general flow for subscription is:
43
42 - XMPP server generate ECDH keypair, publishes public key 44 - XMPP server generate ECDH keypair, publishes public key
43 - XMPP client generates an ECDH keypair 45 - XMPP client generates an ECDH keypair
44 - XMPP client fetches server public key 46 - XMPP client fetches server public key
45 - XMPP client subscribes to browser Push server using the Web Push API, and 47 - XMPP client subscribes to browser Push server using the Web Push API, and
46 gets back an HTTP endpoint 48 gets back an HTTP endpoint
47 - XMPP client enables Push notifications telling the server the HTTP endpoint, 49 - XMPP client enables Push notifications telling the server the HTTP endpoint,
48 and its public key 50 and its public key
49 51
50 The flow for notifications is as follow: 52 The flow for notifications is as follow:
53
51 - XMPP server receives an _important_[^1] message 54 - XMPP server receives an _important_[^1] message
52 - XMPP server generates something something JWT + signature with ECDH key 55 - XMPP server generates something something JWT + signature with ECDH key
53 - XMPP server can optionally include payload encrypted for the client 56 - XMPP server can optionally include payload encrypted for the client
54 - XMPP server initiates HTTP POST request to the Push server 57 - XMPP server initiates HTTP POST request to the Push server
55 - Push server sends notification to web browser 58 - Push server sends notification to web browser