1 / 49

JMS, WebSocket , and the Internet of Things

JMS, WebSocket , and the Internet of Things. Controlling Physical Devices on the Real Time Web. David Witherspoon Prashant Khanal Sep 25, 2013. About Us. Prashant Khanal Software Engineer – Kaazing Prashant.Khanal@kaazing.com Twitter : @ ipras. David Witherspoon

yaholo
Download Presentation

JMS, WebSocket , and the Internet of Things

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JMS, WebSocket, and the Internet of Things Controlling Physical Devices on the Real Time Web David Witherspoon Prashant Khanal Sep 25, 2013

  2. About Us • Prashant Khanal • Software Engineer – Kaazing • Prashant.Khanal@kaazing.com • Twitter: @ipras • David Witherspoon • Software Engineer – Kaazing • David.Witherspoon@kaazing.com • Twitter: @dpwspoon

  3. Demo!

  4. Agenda • Requirements for the IoT • Creating a reference architecture for IoT • Live Demos, Live Demos, Live Demos • Source Code, Source Code, Source Code • WoT and IoT

  5. Internet of Things

  6. Raspberry Pi • Image source: http://www.oracle.com/technetwork/articles/java/raspberrypi-1704896.html

  7. Raspberry Pi Resources • RaspberryPi.org • Wheezy (OS) • Oracle JVM • Pi4J (Raspberry Pi Java Library)

  8. Demo!

  9. Demo Setup

  10. Raspberry Pi Controlling the Light Directly

  11. Raspberry Pi Controlling the Light Directly

  12. Raspberry Pi Controlling the Light Directly

  13. Raspberry Pi Controlling the Light Directly

  14. Demo Setup

  15. Raspberry Pi Reading from a Toggle Switch

  16. Raspberry Pi Reading from a Toggle Switch

  17. Raspberry Pi Reading from a Toggle Switch

  18. Demo Setup

  19. Messaging for the IoT • Messaging Style • Interconnected / Bidirectional • Dynamic States (Could be on or off) • Messaging Protocol Requirements • Identity • Data formats • Transactions • Acknowledgments • And more …

  20. Message Systems/Protocols for the IoT • Java Message Service (JMS) • Standard messaging API • Vendor independent • Pub / Sub • Loosely Coupled

  21. Controlling the Light Remotely Using Pub-Sub

  22. Demo!

  23. LightJmsTcpControllerUsing JMS to Control a Light

  24. LightJmsTcpController Using JMS to Control a Light

  25. LightJmsTcpController Using JMS to Control a Light

  26. LightJmsTcpController Using JMS to Control a Light

  27. ToggleJmsTcpListener Using JMS to Send Events

  28. ToggleJmsTcpListener Using JMS to Send Events

  29. Controlling the Light Remotely Using Pub-Sub

  30. Challenges with TCP • Isolated networks • Firewalls • Ports • Web browsers

  31. How to Extend This to the Web

  32. Controlling the Light Remotely Using Pub-Sub Over the Web

  33. HTML5 WebSocket: TCP for the Web • Standard Protocol (IETF): RFC-6455 • Standard API: • W3C: JavaScript • JSR 356: Java EE • Single socket, full-duplex • Low overhead: <1% of HTTP • Low latency: low milliseconds • SSL support Full duplex

  34. Protocol Layering Browsers, Native Applications and IoT Devices WebSocket JMS XMPP AMQP B2B FTP VNC mktdata etc TCP Internet WebSocket Gateway WebSocket Gateway

  35. Controlling the Light Remotely Using Pub-Sub Over the Web

  36. Demo!

  37. WebSocket with Brokers

  38. WebSocket with Brokers

  39. WebSocket with Brokers

  40. Internet of Things

  41. Internet of Things == Web of Things

  42. The Architecture

  43. The Web of Things

  44. WebSocket Powering the Web of Things WS WS WS WS WS WS WS WS WS

  45. Extending Protocols to the Web of Things XMPP/WS MQTT/WS AMQP/WS STOMP/WS JMS/WS

  46. Raspberry Pi Resources • RaspberryPi.org • http://www.raspberrypi.org/ • Wheezy (OS) • http://www.raspberrypi.org/downloads • Oracle JVM on the Pi • http://www.oracle.com/technetwork/articles/java/raspberrypi-1704896.html • Pi4J (Raspberry Pi Java Library) • http://pi4j.com/

  47. Find Out More • The Zinger – Blog: • http://blog.kaazing.com • HTML5 Developer Conference • October 22-23, 2013, San Francisco, Moscone North • JMS WebSocket Tutorial • http://tutorial.kaazing.com • More developer content • http://developer.kaazing.com • RC Car / Light and Switch Code • https://github.com/dpwspoon/kaazingPi • The Definitive Guide to HTML5 WebSocket, (Apress, 2013) • First comprehensive guide on WebSocket • Use WSK214 for 40% of the e-book

  48. The End

More Related