Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
2013 04-09-webinos at-droidcon
1. webinos:
open
web
pla-orm
for
mul2-‐screen
applica2ons
droidcon
2013
9
April
2013
Dipl.-‐Ing.
Mar4n
Lasak:
mar4n.lasak@fokus.fraunhofer.de
2. 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.
webinos – clearly connected 2
3. Agenda
• Intro
• The
webinos
project
• Developing
a
simple
mul4-‐screen
applica4on
with
webinos
• node.js
on
Android
• Outlook
webinos – clearly connected 3
4. About
Fraunhofer
Gesellscha<
Research
Ins2tute
for
Open
Communica2on
Systems
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 4
5. Fraunhofer
FOKUS
Research
Ins2tute
for
Open
Communica2on
Systems
Profile
Competence
Centers
and
Fields
of
Ac2vity
• development
of
ICT
Solu4ons,
such
as
mul4-‐domain
networks
and
interoperable,
ASCT
Automo2ve
Services
&
Communica2on
Technologies
user-‐centric
solu4ons.
Pla-orms
and
Solu2ons
for
Connected
Healthcare
E-‐HEALTH
• strong
scien4fic
and
prac4cal
exper4se
in
crea4ng
technical
infrastructures,
concepts,
ELAN
Electronic
Government
and
Applica2ons
applica4ons
and
prototypes.
Electronic
Safety
and
Security
Systems
for
the
Public
and
Industries
ESPRI
• independent
partner
for
industries
and
public
administra4on.
FAME
Future
Applica2ons
and
Media
• interna4onal
collabora4on.
IT4ENERGY
Energy
Load
Balancing
MOTION
Modeling
and
Tes2ng
for
System
&
Service
Solu2ons
Facts
and
Figures
Next
Genera2on
Network
Infrastructures
NGNI
• founded
1988
• in
2012,
merger
of
the
Fraunhofer
ins4tutes
ISST-‐ QUEST
Embedded
Systems
Quality
Management
Berlin,
FIRST
and
FOKUS
Resource
Op2mized
Networks
RESCON
• 540
employees
from
30
na4ons.
• overall
budget
in
2012:
approx.
30
Mio.
€
VISCOM
Visual
Compu2ng
• approx.
70%
of
budget
consist
of
third-‐party
funds
webinos – clearly connected 5
6. Future
Applica2ons
and
Media
(FAME)
Intelligent
Services
&
Applica2ons
@
FOKUS
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 6
7. 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
[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 7
8. The
webinos
project
what
is
it?
http://www.webinos.org/members/
webinos – clearly connected 8
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
9
10. The
webinos
project
key
deliveries
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 10
11. The
webinos
project
pla-orm
posi2oning
Underlying platform/OS
Firefox Chrome
Tizen Arduino PI
OS OS
FirefoxOS
Application Technology
Tizen
ChromeO
S
Chrome
PhoneGa
p
• 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
webinos – clearly connected 11
12. 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:
• 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 12
13. Personal
zones
interconnec2ng
devices,
apps
and
resources
Hub: Zone
PZP gateway,
Inter-zone comm 24x7 avail.
PZP peer to peer
PZP
Internet
PZP
PZH
PZP PZH (Personal Zone Hub)
(Personal Zone Hub)
Security Policy
Security Policy
PZP
PZP
PZP
Getting the most out of personal devices
Multi-screen/multi-device apps PZP
PZP
“Getting gadgets talking” PZP
http://www.bbc.co.uk/news/technology-19152751
Personal Zone
Proxy:
simultaneously
client and server
webinos – clearly connected 13
based on slide by D. Raggett (W3C)
14. Personal
zones
suppor2ng
a
personal
zone
concept
1) Identified by a URL,
supports a RESTful API
PZH Personal Zone Hub based upon JSON RPC PZH
• Single sign on / Auth PZP PZP PZP PZP
• Sync across devices 2) Discovery, Authentication,
• Storage preferences, policies, Syncronisation
• Discovery & access
• Policy / Trust
PZH
PZP PZP PZP PZP
Personal PZP PZP PZP PZP
Zone 3) Communication
Proxy between devices
(bearer independent)
webinos – clearly connected 14
15. webinos
Architecture
Complemen2ng
device
OS
and
browser
app
PZH
TLS
Browser/ PZP Session Manager
Widget Context Manager TLS Authentication HTTP
Web Runtime S
Certificate Manager Key Storage
User Data Device
Policy Manager
Widget
Manager
(Currently
WebSocket)
Sync Manager
Messaging Manager
Device
Error recovery Routing Messaging queue
webinos API
RPC RPC Handler/Manager Discovery Manager
APIs
APIs
APIs
APIs
APIs
Native Discovery
Mechanisms
Native Device OS
Drivers
webinos – clearly connected 15
16. 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.
webinos – clearly connected 16
17. W3C
Developing
a
webinos
app
DeviceOrientation
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 */ });
};
webinos – clearly connected 17
18. Developing
a
webinos
app
The
result
Internet
Access to
device
orientation
sensor data on
remote device. PZH
(Personal Zone Hub)
Security Policy
webinos – clearly connected 18
19. 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
webinos – clearly connected 19
Partly based on material of P.Byers
20. node.js
on
Android
code
example:
deviceorienta2on
Java side
node.js side
webinos – clearly connected 20
21. 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
webinos – clearly connected 21
22. ??
||
/*
*/
THANK YOU FOR YOUR ATTENTION
webinos – clearly connected 22
23. Contact
the
speaker
Dipl.-Ing. Martin Lasak
Future Applications and Media
Tel + 49 30 3463 7294
Email martin.lasak@fokus.fraunhofer.de
Place Kaiserin-Augusta-Allee 31,
10589 Berlin, Germany
Internet www.fokus.fraunhofer.de/go/fame
webinos – clearly connected 23