Confirmed users
945
edits
(Weekly Standups and notes link) |
No edit summary |
||
(29 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
'''Note:''' This project is not being actively maintained. Information below is provided for archival purposes. | |||
<div style="float: right; margin: 0px 0px 10px 25px;">[[File:FlyWeb.png|link=]]</div> | |||
=='''Program Description'''== | |||
The web already powers the world's email, media, shopping, and more. Interacting with these things is a breeze because they all use the web. What if the electronics around us were the same? | The web already powers the world's email, media, shopping, and more. Interacting with these things is a breeze because they all use the web. What if the electronics around us were the same? | ||
Meet | Meet FlyWeb. FlyWeb is a very simple idea at its core. Instead of phones interacting only with the cloud, they can discover and interact with electronics around them that are running empty web clients, such as TV's, projectors, game consoles, etc. The electronics come to life when connected to phones. The key here is that either the phones serve web apps to these electronics, or the electronics serve web apps to the phones. | ||
Line 19: | Line 20: | ||
The web is the best platform for serving all of these needs. Indeed, it has been designed for them for over a decade. | The web is the best platform for serving all of these needs. Indeed, it has been designed for them for over a decade. | ||
== | ===User Stories and Acceptance Criteria=== | ||
Coming soon! | |||
<!--- {| class="wikitable" | |||
! style="text-align: center;" | Title | |||
! style="text-align: center;" | BUG ID | |||
! style="text-align: center;" | User story | |||
! style="text-align: center;" | Acceptance Criteria | |||
|- | |||
| Bugzilla Lite | |||
| [https://bugzilla.mozilla.org/show_bug.cgi?id=1180660 1180660] | |||
| As a user I want to be able to raise bugs directly from the device so that I can inform Mozilla directly of any of my requirements. | |||
| it should be easy to attach logs - it should be easy to attach screenshots - it should receive feedback on the ID of the bug i have raised - it should be easy to get an overview of all the items I have raised | |||
|} ---> | |||
=='''Program Status'''== | |||
{| class="wikitable" | |||
! style="text-align: center;" | Milestone | |||
! style="text-align: center;" | Date | |||
! style="text-align: center;" | Status | |||
|- | |||
| MozFest Demo | |||
| 11/6-7/2015 | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Mozlando Demo | |||
| 12/7-11/2015 | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Platform Development | |||
| 1/2016 | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Land on Master | |||
| 6/2016 | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| London All Hands Conference | |||
| 6/2016 | |||
! style="background:#00EC00;" | ON TARGET | |||
|} | |||
---- | |||
=='''Program Timeline'''== | |||
[[File:FWMilestones.png]] | |||
---- | |||
FlyWeb | =='''Detailed Milestones'''== | ||
{| class="wikitable" | |||
! style="text-align: center;" | Milestone | |||
! style="text-align: center;" | Status | |||
|- | |||
| FlyWeb internal (privileged) APIs written up in WebIDL and implemented. | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| FlyWebDiscoveryManager WebIDL class that serves as an abstract fronted for service-discovery across multiple transports. | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| An internet-and-mdns-specific backend implementation for FlyWebDiscoveryManager that lets the APIs discover ‘_http._tcp’ and ‘_flyweb._tcp’ services advertised on the local network via MDNS (Bonjour). | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Integration with the firefox UI to present a toolbar button that lists discovered FlyWeb services in a menu. | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| When the user selects a menu item, open a tab that browses to the service (currently using an ip-based URL). | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Implementation of initial ‘publishServer’ and ‘connectToService’ web APIs exposed to content. | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Addition of a temporary “FlyWeb” protocol (flyweb://) to enable testing and mockup of an http-like server embedded in gecko | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Implement anonymous, browser-based naming of services. For security purposes, the browser will have to assign a token hostname to a service as needed, and route that hostname to the service’s IP address (bypassing normal DNS mechanics). | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Modify the “publishServer” Web API to hook into FlyWeb’s backend service publishing API. | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Modify the "publishServer" API to implement a http server rather than the custom flyweb:// protocol. | |||
! style="background:#00B2FF;" | DONE | |||
|- | |||
| Modify the "publishServer" API to implement a http server rather than the custom flyweb:// protocol. | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Implement JS fallback mDNS implementation (Android, Windows) | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Draft web API | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Draft protocol spec for FlyWeb | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Wi-Fi Direct transport implementation on Android | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Implement Certificate protocol for encrypted communication | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Implement Stable Naming based on Certs | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| All-Hands Conference Demo implementation | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Maker community for IoT use cases | |||
! style="background:#00EC00;" | ON TARGET | |||
|- | |||
| Web dev community for Peer-2-Peer use cases | |||
! style="background:#00EC00;" | ON TARGET | |||
|} | |||
---- | |||
=='''MVP Scope'''== | |||
<bugzilla> | |||
{ | |||
"blocks":"1228662", | |||
"status":["NEW","REOPENED","UNCONFIRMED","ASSIGNED","RESOLVED","VERIFIED","CLOSED"], | |||
"include_fields": "id, summary, status, target_milestone, resolution, assigned_to, depends_on, blocks, whiteboard, cf_feature_b2g" | |||
} | |||
</bugzilla> | |||
---- | |||
=='''Program Stakeholders'''== | |||
{| class="wikitable" | |||
! style="text-align: center;" | Role | |||
! style="text-align: center;" | Name | |||
! style="text-align: center;" | IRC | |||
|- | |||
| EPM | |||
| Nicole Yee | |||
| nicoleyee | |||
|- | |||
| EM | |||
| Jonas Sicking | |||
| sicking | |||
|- | |||
| TL | |||
| Kannan Vijayan | |||
| djvj | |||
|- | |||
| Engineering | |||
| Justin D'Arcangelo | |||
| justindarc | |||
|- | |||
= | |} | ||
*EPM = Engineering Program Manager | |||
*EM = Engineering Manager | |||
*TL = Tech Lead | |||
---- | |||
= | ==Reference Links== | ||
==Demo | =Demo Videos= | ||
* [https://youtu.be/j3E4dKNaQRM | * [https://air.mozilla.org/friday-plenary-flyweb/ Demo at Mozlando 12/11/15] | ||
* [https://blog.mozilla.org/blog/2015/11/09/mozfest-2015-demo-garage-showing-whats-possible-with-the-open-web/?fb_action_ids=10208274568127989&fb_action_types=og.likes Demo at Mozfest 11/5/15] | |||
* [https://youtu.be/j3E4dKNaQRM Early Trailer Video] | |||
** [https://youtu.be/kq1ygsQzuO0 Developer commentary over this video.] | ** [https://youtu.be/kq1ygsQzuO0 Developer commentary over this video.] | ||
* [https://youtu.be/g-zHE33xKng Early-stage browser casting demo.] | * [https://youtu.be/g-zHE33xKng Early-stage browser casting demo.] | ||
= | =Proposal= | ||
* [https://docs.google.com/document/d/ | * [https://docs.google.com/document/d/12i_UjTvmhViXho-wIy4UWrghuFxLls_HYEk1F9-f_GM/edit?usp=sharing Draft Proposal Link] | ||
* [https:// | * [https://github.com/flyweb/spec Draft Specification Link] | ||
=Security= | |||
* [https://docs.google.com/document/d/1eqLb6cGjDL9XooSYEEo7mE-zKQ-o-AuDTcEyNhfBMBM/edit?usp=sharing A discussion about FlyWeb security by Ekr] | |||
* [https:// | * [[FlyWeb/Security scenarios|A list of example scenarios that are useful when discussing security]] | ||
* [ | |||
=Communication= | =Communication= | ||
Line 64: | Line 213: | ||
<br> | <br> | ||
You have been invited to attend a Mozilla Vidyo conference. Please click on the link below to attend:<br> | You have been invited to attend a Mozilla Vidyo conference. Please click on the link below to attend:<br> | ||
<br> | <br>https://v.mozilla.com/flex.html?roomdirect.html&key=kMx0n47x0LUONw0P2Zhr2HDS0b0<br> | ||
https://v.mozilla.com/flex.html?roomdirect.html&key= | |||
<br> | <br> | ||
If you do not have a user account, please enter your name in the "Guest Name" field and then click "Join".<br> | If you do not have a user account, please enter your name in the "Guest Name" field and then click "Join".<br> | ||
Line 82: | Line 230: | ||
NZ/Auckland: +64 9 555 1100, extension 92, 98860 | NZ/Auckland: +64 9 555 1100, extension 92, 98860 | ||
|} | |} | ||
=Project Management= | =Project Management= | ||
Line 97: | Line 238: | ||
=Meetings= | =Meetings= | ||
==Calendar== | ==Calendar== | ||
Line 124: | Line 255: | ||
==Standups== | ==Standups== | ||
We have weekly standups on | We have two weekly standups, with both times available on the [[#Calendar|Public Calendar]]. These standups happen in the [[#Video Conferencing - Vidyo Room|FlyWeb Vidyo room]]. | ||
==All meeting minutes== | ==All meeting minutes== | ||
===2016=== | |||
* [https://public.etherpad-mozilla.org/p/flywebstandups Weekly Standups] | |||
===2015-Q3=== | |||
* [[FlyWeb/Meetings/2015-08-20 - FlyWeb+Presentation API|2015-08-20 - FlyWeb+Presentation API]] | |||
* [[FlyWeb/Meetings/2015-08-13 - Standup, late|2015-08-13 - Standup, late]] | |||
* [[FlyWeb/Meetings/2015-08-12 - Use case culling|2015-08-12 - Use case culling]] | |||
* [[FlyWeb/Meetings/2015-08-12 - Technical materials compilation|2015-08-12 - Technical materials compilation]] | * [[FlyWeb/Meetings/2015-08-12 - Technical materials compilation|2015-08-12 - Technical materials compilation]] | ||
=See Also= | |||
* [https://docs.google.com/document/d/1MoyseigM7iYSoQZ0PsnIyU6yE1GzwE7-ETCZOS1hmFw/edit User and Market Research]: Due to the confidential nature of the interviews, and our respect for our interviewees' privacy, we are restricting access to this information. | |||
==Strategy Essays== | |||
* [https://docs.google.com/document/d/1o3pY73CBiFSx7fNDwDfzJ1TggUIIa-RWBL4-eqpy_nE/edit 2015-05 Operational Overview] | |||
* [https://docs.google.com/document/d/1948ryrtM2_zCQKy7ADcnwoxcviTC4sOvCeCtJGcwDVU/edit 2015-07 In-depth Strategy Document] | |||
==Related Initiatives== | |||
* [https://github.com/google/physical-web Google's "Physical Web" Initiative] | |||
* [http://coap.technology/impls.html Constrained Application Model - Internet of Things] | |||
==Related APIs== | |||
* [http://www.w3.org/TR/presentation-api/ W3C Presentation API] | |||
* [https://blog.mozilla.org/blog/2015/05/14/first-panasonic-smart-tvs-powered-by-firefox-os-debut-worldwide/ Mozilla Smart TV's] | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1143996 KDDI Web-Cast] | |||
* [https://en.wikipedia.org/wiki/Discovery_and_Launch Discovery and Launch (DIAL)] |