|
|
| Line 1: |
Line 1: |
| = Overview =
| |
| Push notifications is a a collection of features, webAPIs, and servers enabling web applications to efficiently notify client browsers of an event. Ideal use cases are a messaging, email, calendar, and games.
| |
|
| |
|
| = High Level Design =
| |
| Push Notification contains the following technologies:
| |
|
| |
| ==== Notification API ====
| |
| WebAPI landed in Fx22. Can be used without push and service workers, but will be a popular use case.
| |
|
| |
| https://developer.mozilla.org/en-US/docs/Web/API/notification
| |
|
| |
| ==== Service Workers ====
| |
| Service workers is the ability for your browser to run a script in the background enabling offline applications, background processing, and push notifications.
| |
|
| |
| https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker
| |
|
| |
| ==== Push WebAPI ====
| |
| Web DOM API that enables a website to subscribe a client, upon granting permission, to send events to the client.
| |
|
| |
| https://developer.mozilla.org/en-US/docs/Web/API/Push_API
| |
|
| |
| ==== Push Server ====
| |
| Mozilla hosted server that brokers the registration and sending of push events from web app servers to clients. Past terms for this include: SimplePush and WebPush which distinguished low level design and protocol support. For web developers, the server architecture may migrate when appropriate, but the WebAPI will remain the same.
| |
|
| |
| https://wiki.mozilla.org/Services/SimplePushServer
| |
|
| |
| http://autopush.readthedocs.org/en/latest/api.html
| |
|
| |
| ==== Mobile ====
| |
| Mobile is targeting Fx43 to support. Android and iOS will use leverage Google Cloud Messaging (GCM) and Apple Push Notification Services(APNS) respectively.
| |
|
| |
| = Product =
| |
| * Initial draft of user stories - https://etherpad.mozilla.org/push-notifications
| |
|
| |
| = Milestones =
| |
|
| |
| '''M1: Targeting Fx42'''
| |
| * Initial implementation of Push WebAPI
| |
| * Currently no changes to the existing Notification UI
| |
| ** Fx42 Notification UI uplifts requested for improved user control exposed due to the Push WebAPI
| |
| ** bug tree TBA
| |
| * Supports service workers, enabling push events when all tabs are closed.
| |
| * Support for Android or iOS in M2
| |
| * Push event contains no data at this time.
| |
|
| |
| '''M1.1: Server side policies for large scale usage.'''
| |
|
| |
| '''M2: Fx43/44'''
| |
| * Improved Notification management and user control features.
| |
| *
| |
|
| |
| '''Future'''
| |
| * Use HTTP2 to conform to W3C WebPush spec.
| |
|
| |
| = TEAM / RACI =
| |
| Server
| |
| * Dev: Ben Bangert, JR Conlin, Kit Cambridge, Ian Bicking (mgr)
| |
|
| |
| Platform
| |
| * Dev: Martin Thompson, Doug Turner(mgr), Nikhil Marathe
| |
|
| |
| Desktop
| |
| * ckarlof is finding dev person
| |
|
| |
| UX
| |
| * Philipp Sackl
| |
|
| |
| General
| |
| * Approvers: Dave Camp, Doug Turner, Nick Nguyen
| |
| * Product: Bill Maggs, Karen R.
| |
| * Technical Program Manager: Edwin Wong
| |
|
| |
| = Communications =
| |
| email: dev-push@mozilla.org - https://lists.mozilla.org/listinfo/dev-push
| |
|
| |
| irc: #push - [[ IRC | IRC info ]]
| |
|
| |
| mtgs: Wed - 11AM PDT - Vidyo:Services
| |
|
| |
| = Demos and Testing =
| |
| Requires Firefox 42 or later
| |
| * http://johnme-gcm.appspot.com/
| |
| * https://simple-push-demo.appspot.com/
| |
| * http://edmoz.github.io/push-notification-test/
| |