Confirmed users
964
edits
(update) |
(update) |
||
| Line 25: | Line 25: | ||
* Fx44-Android-Nightly: Land Push Notifications in Fx44 Nightly and evaluate user experience. | * Fx44-Android-Nightly: Land Push Notifications in Fx44 Nightly and evaluate user experience. | ||
=== Engineering and dependent technologies === | === Engineering and dependent technologies === | ||
| Line 33: | Line 31: | ||
Push Notification contains the following technologies: | Push Notification contains the following technologies: | ||
====Web Notification API==== | |||
WebAPI landed in Fx22. Can be used without push and service workers, but will be a popular use case. | WebAPI landed in Fx22. Can be used without push and service workers, but will be a popular use case. | ||
| Line 39: | Line 38: | ||
https://developer.mozilla.org/en-US/docs/Web/API/notification | 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. | Service workers is the ability for your browser to run a script in the background enabling offline applications, background processing, and push notifications. | ||
| Line 49: | Line 48: | ||
Spec: https://slightlyoff.github.io/ServiceWorker/spec/service_worker/index.html | Spec: https://slightlyoff.github.io/ServiceWorker/spec/service_worker/index.html | ||
====Push API==== | |||
Web DOM API that enables a website to subscribe a client, upon granting permission, to send events to the client. | Web DOM API that enables a website to subscribe a client, upon granting permission, to send events to the client. | ||
| Line 59: | Line 58: | ||
spec: http://www.w3.org/TR/push-api/ | spec: http://www.w3.org/TR/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. | 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. | ||
| Line 69: | Line 68: | ||
Current Server docs: http://autopush.readthedocs.org/en/latest/api.html | Current Server docs: http://autopush.readthedocs.org/en/latest/api.html | ||
====Mobile==== | |||
Mobile is targeting Fx44 to for initial support. Android and iOS will leverage Google Cloud Messaging (GCM) and Apple Push Notification Services (APNS) respectively. Work is done by three teams: Android eng, Android platform, and Services Dev. We will be gathering a list of dependencies on landing this on Android. | Mobile is targeting Fx44 to for initial support. Android and iOS will leverage Google Cloud Messaging (GCM) and Apple Push Notification Services (APNS) respectively. Work is done by three teams: Android eng, Android platform, and Services Dev. We will be gathering a list of dependencies on landing this on Android. | ||
| Line 75: | Line 74: | ||
Android Bug Tree: https://bugzilla.mozilla.org/showdependencytree.cgi?id=1206207&maxdepth=1&hide_resolved=1 | Android Bug Tree: https://bugzilla.mozilla.org/showdependencytree.cgi?id=1206207&maxdepth=1&hide_resolved=1 | ||
====Testing==== | |||
Testing & QA owner is tbd. There's a fairly complex test plan here, considering the permissions dialogs, service workers, and API. | Testing & QA owner is tbd. There's a fairly complex test plan here, considering the permissions dialogs, service workers, and API. | ||
===FAQ=== | |||
What are recent changes from Mozilla's SimplePush prototypes: | |||
* Currently the Push API does not access data in the push message, it simply fires an event in the service worker. | |||
* Push events only work with service workers. SimplePush did not require service workers. | |||
* The web application does not need to be active tab in client session. | |||
* about:serviceworkers can be used to manage running service workers. | |||
* notification permissions cannot be requested inside a service worker, it must be in the web application. | |||
What's the difference between SimplePush and WebPush. | |||
* They use different DOM APIs. | |||
* WebPush is intent on implementing the IETF spec. SimplePush was a Mozilla specific implementation and works with FxOS specifically for Find My Device. | |||
* There are other low level differences in the protocol and background processes. | |||
=== Communications=== | |||
email: gGroupsList: | |||
* Public: dev-push@mozilla.org | |||
irc: #push - IRC info: https://wiki.mozilla.org/IRC | |||
=== Demos=== | |||
Requires Firefox 42 or later | |||
* Fx, Chrome, Chrome Android: https://people.mozilla.org/~ewong2/push-notification-test/ | |||
* http://johnme-gcm.appspot.com/ | |||
* Chrome only: https://simple-push-demo.appspot.com/ | |||