2013 04-09-webinos at-droidcon
-
Upload
droidcon-berlin -
Category
Technology
-
view
486 -
download
0
description
Transcript of 2013 04-09-webinos at-droidcon
webinos: open web pla-orm for mul2-‐screen applica2ons
9 April 2013 Dipl.-‐Ing. Mar4n Lasak: [email protected]
droidcon 2013
webinos – clearly connected
Abstract
In liBle more than two decades the World Wide Web has passed through an amazing development. As a rapidly increasing informa4on medium it has become an integral part of our daily lives. This development equally affects personal and commercial environments in our informa4on oriented society. From its original purpose to display linked documents the Web evolved towards a fully-‐fledged plaOorm powering rich applica4ons and services. The technological influence is broadly no4ceable on many different device types. There is barely a new connected device introduced that is not equipped with an Web browser or provides access to Web based offerings. Paired with plaOorm heterogeneity and u4liza4on of advanced device capabili4es new opportuni4es arise for exci4ng applica4ons in this seRng. But to handle this diversity service providers and applica4on developers are faced with fundamental challenges like the secure end device to end device communica4on and privacy preserving service and resource accesses. This is the star4ng point for the webinos project. webinos delivers an open source plaOorm that interconnects user's devices securely and allows Web technologies based applica4ons to run and use services and resources across different domains like mobile, desktop, home media, in-‐car infotainment and internet of things (IoT). Taking the current realiza4on of the webinos concepts for the Android plaOorm as an example, shows how interoperability with other device types and plaOorms can be fostered and how mul4-‐screen applica4on development can be eased.
2
webinos – clearly connected
Agenda
• Intro • The webinos project • Developing a simple mul4-‐screen applica4on with webinos • node.js on Android • Outlook
3
webinos – clearly connected
About Fraunhofer Gesellscha< Research Ins2tute for Open Communica2on Systems
4
The Fraunhofer Gesellschaft is Europe‘s largest organization for
applied research.
• Fraunhofer develops products and processes through to technical or commercial maturity
• Individual solutions are elaborated in direct contact with the customers
• The Fraunhofer Gesellschaft maintains – 66 self-contained Fraunhofer Institutes
throughout Germany – with a staff of 22, 000 scientists and
engineers – 1.9 billion Euro annual budget
• More than 70% of funding are raised through innovative development projects, license fees and contract research
• Sub-companies and representative offices all over the world
webinos – clearly connected
Fraunhofer FOKUS Research Ins2tute for Open Communica2on Systems
5
ASCT
E-‐HEALTH
ELAN
ESPRI
FAME
IT4ENERGY
MOTION
NGNI
QUEST
RESCON
VISCOM
Automo2ve Services & Communica2on Technologies
Pla-orms and Solu2ons for Connected Healthcare
Electronic Government and Applica2ons
Electronic Safety and Security Systems for the Public and Industries
Future Applica2ons and Media
Energy Load Balancing
Modeling and Tes2ng for System & Service Solu2ons
Next Genera2on Network Infrastructures
Embedded Systems Quality Management
Resource Op2mized Networks
Visual Compu2ng
Competence Centers and Fields of Ac2vity
Profile • development of ICT Solu4ons, such as mul4-‐domain networks and interoperable, user-‐centric solu4ons.
• strong scien4fic and prac4cal exper4se in crea4ng technical infrastructures, concepts, applica4ons and prototypes.
• independent partner for industries and public administra4on.
• interna4onal collabora4on. Facts and Figures • founded 1988 • in 2012, merger of the Fraunhofer ins4tutes ISST-‐Berlin, FIRST and FOKUS
• 540 employees from 30 na4ons. • overall budget in 2012: approx. 30 Mio. € • approx. 70% of budget consist of third-‐party funds
webinos – clearly connected
Future Applica2ons and Media (FAME) Intelligent Services & Applica2ons @ FOKUS
6
Research & Development in the following areas: • Cross platform applications
– Mobile web, multi-screen interaction – Mobile cloud, distributed applications & services
• Smart Media – Connected TV – Media clients & enablers for (un)managed IPTV – Interactive content, UX – Video streaming, content delivery networks
• Personalization – Social media & social network management – Recommendation systems – Content guides & metadata management
webinos – clearly connected
Mo2va2on star2ng situa2on
• More connected devices than people on earth [1] • Parallel device usage increases:
– “77% of the 4me when we’re using a TV, we’re using another device.” [2] • Devices are geRng more and more powerful and feature rich at the same 4me
– Lots of sensors, but data olen shared thoughtlessly impairing privacy – High storage capaci4es, but files synced with centralized services due to convenience
• Even if most new connected devices offer access to Internet services, they rather coexists than interplay with other devices
• Realiza4on of seamless experiences is a demanding task for service providers and developers – Diversity of device types – Fragmenta4on of plaOorms – Olen manual handling of synchroniza4on, communica4on mechanisms, privacy
protec4on, user preferences
7
[1] http://www.cisco.com/web/about/ac79/docs/innov/IoT_IBSG_0411FINAL.pdf [2] Google, “The New Multi-screen World: Understanding Cross-platform Consumer Behavior”, August 2012
webinos – clearly connected
The webinos project what is it?
8
http://www.webinos.org/members/
9
The webinos project the value of open
webinos supports 3 essential open principles that we believe are essential for long term success
Open Standards
Open Source
Open Market
10
The webinos project key deliveries
webinos – clearly connected
Five Target Devices
8 Ported OS’s
Platform
APIs
Apps Store
Security devices and people in a distributed manner
Applications
SDK and Portal
webinos – clearly connected
The webinos project pla-orm posi2oning
• webinos is not an opera4ng system on its own, it is an applica4on execu4on environment that enables web applica4ons and services to be used and shared consistently and securely over a broad spectrum of converged and connected devices
• webinos abandons exclusivity for single device plaOorms, it fosters compa4bility and interoperability • webinos allows applica4ons and devices to securely discover and make use of each other’s services remotely
11
Tizen Firefox OS Arduino PI Chrome
OS
FirefoxOS
Tizen
ChromeOS
Chrome
PhoneGap A
pplic
atio
n Te
chno
logy
Underlying platform/OS
webinos – clearly connected
The personal zone key concept introduced by webinos
The Personal Zone: • defines the set of all devices and services owned by a par4cular user. • re-‐establishes user’s control over own personal devices, apps, services and data.
Key features:
12
• Interoperability – Service access across domains
• Easy development – Abstrac4on layer for
(remote) APIs and communica4on
• Portability – “one virtual device”
• Control – Explicit policy based access
control to services and resources
webinos – clearly connected
Personal zones interconnec2ng devices, apps and resources
13
Internet
PZH (Personal Zone Hub)
Security Policy
PZH (Personal Zone Hub)
Security Policy
Hub: Zone gateway,
24x7 avail. Inter-zone comm peer to peer
Getting the most out of personal devices Multi-screen/multi-device apps “Getting gadgets talking” http://www.bbc.co.uk/news/technology-19152751
based on slide by D. Raggett (W3C)
PZP
PZP PZP
PZP
PZP PZP
PZP
PZP
PZP
PZP
PZP
Personal Zone Proxy:
simultaneously client and server
webinos – clearly connected
Personal zones suppor2ng a personal zone concept
14
PZH Personal Zone Hub
• Single sign on / Auth • Sync across devices • Storage preferences, policies, • Discovery & access • Policy / Trust
PZP Personal
Zone Proxy
PZP PZP PZP
PZH
PZP PZP PZP PZP
PZH
PZP PZP PZP PZP
3) Communication between devices
(bearer independent)
2) Discovery, Authentication, Syncronisation
1) Identified by a URL, supports a RESTful API based upon JSON RPC
webinos – clearly connected
webinos Architecture Complemen2ng device OS and browser app
15
PZH
Native Device OS
webinos API
PZP Browser/ Widget Web Runtime
Messaging Manager
Widget Manager
Discovery Manager
Context Manager
TLS
Session Manager
Native Discovery Mechanisms
Drivers
Routing
User Data Device
TLS Authentication HTTPS
(Currently WebSocket)
Certificate Manager Key Storage
RPC Handler/Manager
Messaging queue Error recovery
APIs
APIs
APIs
APIs
APIs
RPC
Policy M
anag
er
Sync Manager
Dev
ice
webinos – clearly connected
Developing a webinos app 3-‐steps process overview
1. Start realizing your app idea using well known Web technologies.
2. Decide which services and resources you would like to use by selec4ng form the provided webinos APIs (http://dev.webinos.org/specifications/api/). Implement against an abstract device, that comes with all proper4es provided by all physical devices.
3. Package (http://www.w3.org/TR/widgets/) the applica4on and publish it on apps stores (example: https://webinos.fokus.fraunhofer.de/ ) or on a Web site. Downloading this applica4on will allow for installa4on and execu4on on the device. LaBer even in local peer network without internet connec4vity.
16
webinos – clearly connected
Developing a webinos app discovery, binding and usage of services on remote devices
Search service
window.webinos.discovery.findServices( {api:'http://webinos.org/api/deviceorientation'},
{onFound: serviceFoundCB, onLost: serviceLostCB} );
Bind service
function serviceFoundCB(service) { service.bindService({onBind: bindCB}); };
Use service
function bindCB(service) { service.addEventListener("deviceorientation", function(event) { /* use the data */ }); };
17
W3C DeviceOrientation
webinos – clearly connected
Developing a webinos app The result
18
PZH (Personal Zone Hub)
Internet
Security Policy
Access to device
orientation sensor data on remote device.
webinos – clearly connected
node.js on Android por2ng webinos
• Android chosen as first mobile plaOorm to port webinos to, reasons: – Accessible embedded plaOorm – Broad range of interes4ng data sources (sensors) and actuators – Not limited to smartphones only (Android based home media equipment, tablets)
• Most of the webinos core components (in par4cular PZP) are implemented in node.js – Problem: the node.js interpreter cannot run on Android out-‐of-‐the-‐box – Solu2on: the interpreter has been build as library and integrated in java run4me – Result: the interpreter is deployable on non-‐rooted devices
• A Java Bridge was developed to access the Java plaOorm from node.js. This made implementa4on in Java plus interac4on with the unchanged PZP code possible à portability
• For more informa4on visit Paddy Byers github page on the anode project: https://github.com/paddybyers/anode/wiki
19 Partly based on material of P.Byers
webinos – clearly connected
node.js on Android code example: deviceorienta2on
20
Java side
node.js side
Java side
webinos – clearly connected
Outlook
• Improve the Web Run4mes, e.g. replacing na4ve WebView by chromium/blink builds on Android • Stabilize the plaOorm (v1.0 by Q3 2013) • Port webinos to even more devices and device types • Build further demo apps
à contact us and/or get involved! http://developer.webinos.org
21
webinos – clearly connected
?? || /* */
22
THANK YOU FOR YOUR ATTENTION
webinos – clearly connected
Contact the speaker
23
Dipl.-Ing. Martin Lasak Future Applications and Media Tel + 49 30 3463 7294 Email [email protected]
Place Kaiserin-Augusta-Allee 31, 10589 Berlin, Germany
Internet www.fokus.fraunhofer.de/go/fame