physical mashups in the web-home
TRANSCRIPT
Enabling Physical Mashups in a
Dominique Guinard, SAP Research Zurich & ETH ZurichTouch the Web 2010 @ ICWE Vienna06.07.2010
Mashing Up Your Web-Enabled Home
1. MOTIVATIONWeb of Things? Physical Mashups?
[http://www.flickr.com/photos/moragcasey/]
Embedded Devices Invade us!
• Emergence of the physical Web, everyday devices:– Getting Ubiquitous– Getting Connected
What if we Could Recompose Them as we Wish?
• Easing the currently complicated development.
• Creating a re-useable/composable physical world.
• From Web mashups to physical mashups.
Towards Physical Mashups
REST URL
[http://www.pachube.com] [http://www.webothings.com/energievisible]
REST
[http://www.clickscript.ch]
JavaScript JavaScript
REST
PHP
Contribution
• Methodology for Web-enabling things. [GuiWoT10]
• Discussing the requirements of physical mashups.
• Introducing a Web framework supporting physical mashup editors.
[GuiWoT10] Dominique Guinard, Vlad Trifa, Erik WildeArchitecting a Mashable Open World Wide Web of Things, Technical Report No 663, Institude for Pervasive Computing, ETH Zurich, February 2010.
Today’s Menu
1. Motivation2. Enabeling a Web of
Things3. Case-study :
Clickscript4. Discussing the
requirements of physical mashups.
5. A Physical Mashup Framework.
[http://www.flickr.com/photos/lessio/1346732230/]
2. ENABLEING A WEB OF THINGSPush the Web down to devices!
[http://www.flickr.com/photos/julianbleecker]
Integrating Smart Things to the Web
• Connecting them to the Internet:– Directly: IPv6 Lowpan
– Indirectly: Through reverse proxies (smart gateways).
• “RESTful” Things:– Functionality as resources:
• BASE_URI/sunspot/sensors/light
– Serving several linked representations:• HTML for browsability,
• XML / JSON for integration,
• ATOM for aggregation.
– Using HTTP as an application protocol:• GET, POST, PUT, DELETE,
• Error codes, Content negotiation. [GuiWoT10] Dominique Guinard, Vlad Trifa, Erik WildeArchitecting a Mashable Open World Wide Web of Things, Technical Report No 663, Institude for Pervasive Computing, ETH Zurich, February 2010.
Example: RESTful SunSPOTs
• Web-enabling the Sun SPOT platform:– All sensors and
actuators become resources.
• Two implementation:– Web-server on the
nodes.– Web-server on the
gateway.[http://www.sunspotworld.com]
[GuiSpot09] Dominique Guinard, Vlad Trifa, Thomas Pham, Olivier Liechti. Towards Physical Mashups in the Web of Things. Proceedings of IEEE INSS 2009
3. CASE STUDY: CLICKSCRIPTTrying out physical mashups
[http://www.flickr.com/photos/lpettinati/]
Adapting a Mashup Editor
• Clickscript:– Javascript
(JQuery / DOJO) based visual language.
• Added wrappers for WoT devices:– RFID, SunSPOT,
Ploggs.
[http://www.clickscript.ch]
Demo
4. DISCUSSING REQUIREMENTSWhat do we need for physical mashups to become reality?
[http://www.flickr.com/photos/sharynmorrow/]
Requirements for supporting Physical Mashups (1/3)
• R1: Support for several UIs and modalities:– Domain specific editors (e.g. energy,
security, etc.).– Beyond the desktop (e.g. mobile).– Ideally through a RESTful API.
Mashup Framework
Mashup Editor
Mashup Editor
MashupAPI
Requirements for supporting Physical Mashups (2/3)
• R2: Support for Described Things:– REST is a good start but not enough.– Describe for humans (search) and machines
(discovery).– Supporting semantic service discovery:
• RDF(a), Microformats, Microdata, etc.
Mashup Framework
Microformat
RDFa Discovery Module
Requirements for supporting Physical Mashups (3/3)
• R3: Support for Event-Based Mashups:– Many “things” are naturally event-based (e.g.
sensors).
– Pull for control, push for monitoring.
– HTTP callbacks (Web Hooks), PuSH, etc.
Mashup Framework
PuSH Client
Web HookListener
Hub
GW PuSHHub
Web SocketServer
Editors
Editors
5. A Physical Mashup Framework
Towards Supporting Real-World Mashup Editors
[www.flickr.com/photos/docman ]
Concept
Features of the Framework
•Workflow Engine:
–Execute the mashups (wait, start, stop)
–Supports REST & WS-* things.
–Supporting long running workflows.
–Using on Ruote.
•Discovery Component:
–Things “crawler”
–RDFa Descriptions
•REST API:
–Create mashups with HTTP.
•Mashup Entry Point:
–Manage the mashup lifecycle with REST.
Editor on Top : Energy Mobile Mashup Editor
• Energy aware mashups:– « Turn the heating off
when I’m more than two KMs away from home ».
• Wizard-based:
– Scan tags (QR)
– Setup rules
– Create actions:
• Physical (thing)
• Virtual (e.g. xmpp, Atom, Twitter, SMS, etc.)
OPEN CHALLENGESWhere do we go from here?
[http://www.flickr.com/photos/parmiter/]
Challenges Towards Physical Mashups
• Discovering/searching things and their services:– We use a “proprietary” RDFa
description.– Standard? Currently experimenting
using Microformats.
• Scalability? Usefulness?– Need for qualitative/quantitative
evaluation.
Thanks a lot for your attention
• Contact:– Dominique Guinard– dguinard a t ethz.ch– www.guinard.org
• Special thanks to:– Azulena Aguilar.
23
www.webofthings.com
Backup Slides
Web of Things (WoT)?
Social Web
Real-time Web
Programmable WebSemantic Web
Internet of
Things
Web of Things
I. Connecting Embedded Devices to the Internet
IPv6
lowpan
[TrifaGW] Vlad Trifa, Samuel Wieland, Dominique Guinard, Thomas Michael Bohnert: Design and Implementation of a Gateway for Web-based Interaction and Management of Embedded Devices.Proceedings of the 2nd International Workshop on Sensor Network Engineering (IWSNE 09). Marina del Rey, CA, USA, June 2009
NonIP
devices