Your SlideShare is downloading. ×
0
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Web Messaging for Open for Web of Things

1,088

Published on

Published in: Technology, Design
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,088
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
52
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Web Messaging for Open and Scalable Distributed Sensing Applications ICWE2010, Vienna, Austria - 6 July 2010 Vlad Trifa, Dominique Guinard, Vlatko Davidovski, Andreas Kamilaris, and Ivan Delchev
  • 2. The Internet of Things Networked devices everywhere Lots of different devices ‣ Capabilities/functions ‣ Applications/middleware ‣ Networking protocols Internet connectivity ‣ Cheap ‣ Ubiquitous ‣ HTTP also possible
  • 3. Web of Things [1]: Use the Web to combine heterogeneous mobile devices to create interactive ad-hoc applications! [1] Online at: http://www.webofthings.com
  • 4. Show Time! RESTful SunSpot Embedded NanoHTTPD ‣ Talks HTTP (over 802.15.4) ‣ Becomes a Web device Properties and functions are Web resources, so can be ‣ Browsed ‣ Bookmarked ‣ Shared But also use twitter, send emails, chat, etc.. D. Guinard, V. Trifa, T. Pham, and O. Liechti. Towards Physical Mashups in the Web of Things. In Proceedings of the 6th International Conference on Networked Sensing Systems (INSS 2009), 2009.
  • 5. Wait - what about eventing & streaming ? The Web wasn’t quite made for that...
  • 6. Need more than Pull, more than Push! Web mainly request/response (HTTP) Need for eventing & streaming for many users ‣ Sensor data represented as sequence of messages Scalable pub/sub for devices as substrate ‣ Use the Web to build distributed event driven apps Parameterized subscriptions (channels/queries) ‣ Specify what sensors, devices, locations, etc... Many solutions (XMPP, etc....) ‣ None really integrate with the Web ‣ ATOM/ATOMpub is RESTful, but not push
  • 7. Here comes the real-time Web! Very active community expanding Use the Web for distributed event driven apps Comet ‣ Keeps the HTTP connection open ‣ Long polling ‣ Ajax push Web Hooks ‣ Bi-directional ‣ Push from server to HTTP callbacks
  • 8. RESTful Messaging System (RMS) Similar to pubsubhubbub (PuSH) or RestMS ‣ But lighter (less options) to run on devices Interested by a generic “Web push” mechanism ‣ Simple to use ‣ No complex client required Minimal pub/sub support ‣ queues ‣ subscriptions
  • 9. RMS /rms/channels - every sub-resource represents a hierarchical channel where entities can post data to, ex: /rms/channels/ethz/ifw/floor/d/49.2 /rms/subscriptions - contains each subscription of entities to individual channels /rms/channels/x/publishers - contains all entities that are publishing data on the channel x /rms/channels/y/subscribers - contains all entities that are subscribed to events on the channel y
  • 10. Usage examples Subscribe to a channel: curl ­­request POST ­­data "rms­subscription­callback­ url=http://192.168.1.1/handler"  http://localhost:8080/aparat/rms/channels/simulation Publish to a channel: curl ­­basic ­­request POST ­­data "temperature=23"  http://localhost:8080/aparat/rms/channels/simulation
  • 11. Show Time! Live Demo Plogg Smart Meter ‣ Talks HTTP (over Zigbee) ‣ Becomes a Web device Posting through RMS ‣ /aparat/rms/channels/.../hifi Browser client using Comet (Ajax Long Polling)
  • 12. Many devices - one receiver
  • 13. Many receivers
  • 14. Real deployment setup
  • 15. Conclusion Leverage REST as native API for devices ‣ Inherit all the tools & expertise in Web technologies ‣ Caching, security, scalability Flexibility through real-time Web ‣ Loose coupling between application components ‣ Pub/sub helps to scale and is good for ad-hoc interactions Good performances ‣ 100 msg/s delivered with low latency, 200 subscribers notified with 360ms delay in average ‣ Real deployment 15 devices sampling@1Hz (< 60 ms delay) Web of Things @ Vlad Trifa - SAP/ETH Zurich
  • 16. Take away notes Good performances for Web messaging and integrates devices directly with existing Web (REST). The Web goes physical! Tools & best practices for Web-enabled things are needed. Web engineering can contribute a lot towards building a programmable world. We need applications (deployments) and testing! Web of Things, 7.4.2010 Vlad Trifa - SAP/ETH Zurich
  • 17. Thanks for your attention ! www.webofthings.com

×