SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
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
The Internet of Things
Networked devices everywhere

Lots of different devices
  ‣ Capabilities/functions
  ‣ Applications/middleware
  ‣ Networking protocols

Internet connectivity
  ‣ Cheap
  ‣ Ubiquitous
  ‣ HTTP also possible
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
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.
Wait - what about eventing &
streaming ?

The Web wasn’t quite made
for that...
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
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
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
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
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
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)
Many devices - one receiver
Many receivers
Real deployment setup
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
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
Thanks for your
attention !




     www.webofthings.com

Mais conteúdo relacionado

Semelhante a Web Messaging for Open for Web of Things

Internetandjava
InternetandjavaInternetandjava
Internetandjava
muniinb4u
 
JavaInternetlearning
JavaInternetlearningJavaInternetlearning
JavaInternetlearning
muniinb4u
 
Internetandjava
InternetandjavaInternetandjava
Internetandjava
muniinb4u
 
Javauserguide
JavauserguideJavauserguide
Javauserguide
muniinb4u
 

Semelhante a Web Messaging for Open for Web of Things (20)

API Design and WebSocket
API Design and WebSocketAPI Design and WebSocket
API Design and WebSocket
 
WoT Tutorial @ Cisco
WoT Tutorial @ CiscoWoT Tutorial @ Cisco
WoT Tutorial @ Cisco
 
Web of Things - Towards Open and Sharable Networks of Embedded Devices
Web of Things - Towards Open and Sharable Networks of Embedded DevicesWeb of Things - Towards Open and Sharable Networks of Embedded Devices
Web of Things - Towards Open and Sharable Networks of Embedded Devices
 
The Web of Things
The Web of ThingsThe Web of Things
The Web of Things
 
Web of Things - Connecting People and Objects on the Web
Web of Things - Connecting People and Objects on the WebWeb of Things - Connecting People and Objects on the Web
Web of Things - Connecting People and Objects on the Web
 
The Web of Things - IoTExpo SF - May 2014
The Web of Things - IoTExpo SF - May 2014The Web of Things - IoTExpo SF - May 2014
The Web of Things - IoTExpo SF - May 2014
 
TechHub pitch
TechHub pitchTechHub pitch
TechHub pitch
 
Internetandjava
InternetandjavaInternetandjava
Internetandjava
 
ppttips
ppttipsppttips
ppttips
 
ppttips
ppttipsppttips
ppttips
 
Java
JavaJava
Java
 
ppttips
ppttipsppttips
ppttips
 
JavaInternetlearning
JavaInternetlearningJavaInternetlearning
JavaInternetlearning
 
ppt tips
ppt tipsppt tips
ppt tips
 
ppttips
ppttipsppttips
ppttips
 
Internetandjava
InternetandjavaInternetandjava
Internetandjava
 
Javauserguide
JavauserguideJavauserguide
Javauserguide
 
02 intro
02   intro02   intro
02 intro
 
Cs2305 nol
Cs2305 nolCs2305 nol
Cs2305 nol
 
Cs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT VCs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT V
 

Mais de Dominique Guinard

Activity Digital Identities in the Web of Things
Activity Digital Identities in the Web of ThingsActivity Digital Identities in the Web of Things
Activity Digital Identities in the Web of Things
Dominique Guinard
 

Mais de Dominique Guinard (20)

From the internet of things to the web of things course
From the internet of things to the web of things courseFrom the internet of things to the web of things course
From the internet of things to the web of things course
 
1 billion thngs at a time
1 billion thngs at a time1 billion thngs at a time
1 billion thngs at a time
 
5 Years of Web of Things Workshops
5 Years of Web of Things Workshops5 Years of Web of Things Workshops
5 Years of Web of Things Workshops
 
The Art of API Crafting for the IoT
The Art of API Crafting for the IoTThe Art of API Crafting for the IoT
The Art of API Crafting for the IoT
 
Dumb Products can be Smart Too!
Dumb Products can be Smart Too!Dumb Products can be Smart Too!
Dumb Products can be Smart Too!
 
3 Cups of Java Drivers with a Slice of MongoDB
3 Cups of Java Drivers with a Slice of MongoDB3 Cups of Java Drivers with a Slice of MongoDB
3 Cups of Java Drivers with a Slice of MongoDB
 
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of ThingsIf Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
 
Business Aspects of the IoT: Making Products Smart
Business Aspects of the IoT: Making Products SmartBusiness Aspects of the IoT: Making Products Smart
Business Aspects of the IoT: Making Products Smart
 
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, ArduinoAndroid and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
 
Evrythng @ Web of Things
Evrythng @ Web of ThingsEvrythng @ Web of Things
Evrythng @ Web of Things
 
Activity Digital Identities in the Web of Things
Activity Digital Identities in the Web of ThingsActivity Digital Identities in the Web of Things
Activity Digital Identities in the Web of Things
 
A Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
A Universal Application Platform for Sensors, RFID, NFC and Embedded DevicesA Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
A Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
 
Tourism and the Web of Things
Tourism and the Web of ThingsTourism and the Web of Things
Tourism and the Web of Things
 
Web of Things Application Architecture
Web of Things Application ArchitectureWeb of Things Application Architecture
Web of Things Application Architecture
 
HTML5, Websockets & the Mobile Web
HTML5, Websockets & the Mobile WebHTML5, Websockets & the Mobile Web
HTML5, Websockets & the Mobile Web
 
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
 
EPC Cloud: Using the Web to Simplify the Global RFID Network
EPC Cloud: Using the Web to Simplify the Global RFID NetworkEPC Cloud: Using the Web to Simplify the Global RFID Network
EPC Cloud: Using the Web to Simplify the Global RFID Network
 
WoT @ Oracle-Labs
WoT @ Oracle-LabsWoT @ Oracle-Labs
WoT @ Oracle-Labs
 
Giving RFID a REST: Web-enabled EPCIS
Giving RFID a REST: Web-enabled EPCISGiving RFID a REST: Web-enabled EPCIS
Giving RFID a REST: Web-enabled EPCIS
 
A ROA for the WOT
A ROA for the WOTA ROA for the WOT
A ROA for the WOT
 

Último

Último (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Web Messaging for Open for Web of Things

  • 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.
  • 10. 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
  • 11. 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
  • 12. 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)
  • 13. Many devices - one receiver
  • 16.
  • 17. 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
  • 18. 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
  • 19. Thanks for your attention ! www.webofthings.com