CloudServices/Notifications: Difference between revisions
Jump to navigation
Jump to search
(→v.2) |
(→v.2) |
||
Line 67: | Line 67: | ||
= v.2 = | = v.2 = | ||
The next generation of [[Services/Notifications/Push notifications is described here]]. | The next generation of [[Services/Notifications/Push|notifications is described here]]. |
Revision as of 20:25, 26 July 2011
Overview
Mozilla Push Notifications is a project that aims to create a system that allows for notifications from clients (such as web applications or services) to be sent directly to the browsers of its users. A typical example where such a system could be useful is the eBay auctioning system. If a user makes a bid on an item, it would be convenient if that user could leave eBay and start browsing another web site, but still receive notifications if another user bids on that item, allowing them to act on the bid.
You probably want to go read the specification for more information.
Project
Engineers
- Alex Amariutei
- Shane da Silva
- Toby Elliot
- Philipp von Weitershausen
Meetings
Goals
- Push notifications from the cloud to the browser and other 3rd party clients (e.g. phones)
- receive notification of new email, eBay auction ending, new FB message, etc. without the need to have the tab open
- possibly client-to-client in the future, e.g. open this tab on my mobile phone, pull-sync, etc.
- Messages are encrypted so that the service provider (Mozilla) does not get to read them (like Sync)
- People should be able to run their own service (like Sync)
- Must be super easy for web apps to implement (adoption!)
Milestones
First prototype and research phase (End of Jan 2011)
- First prototype
- Server: simple Python app
- Client: use HTTP long polling
- No encryption
- Server code at http://hg.mozilla.org/users/sdasilva_mozilla.com/notifs_prototype1
- Client code at XXX
- Research messaging protocols (XMPP and AMQP)
- Decide on protocol + technology
- protocol: AMQP
- RabbitMQ broker + REST agents in Python
Second prototype using AMQP (End of Mar 2011)
- Develop system specification
- Notifications client API (AMQP + REST)
- Web app facing REST API
- Second prototype
- Client: (partially) implement AMQP client protocol for Firefox
- Server: Set up RabbitMQ broker, implement client + web app facing agents
- Assume users have Sync accounts
- Encryption: inspired by Sync
Proof of concept (End of Apr 2011)
- Goals
- Incorporate input from
- Brian Smith (crypto)
- UX team
- Ragavan (PM)
- Provide experimental Firefox + Fenec add-on
- Incorporate input from
- Code
- Demo
- [Video of Alex's and Shane's presentation]
- [Demo site] (requires MV VPN)
v.2
The next generation of notifications is described here.