This talk at the Nordic APIs event looks at the Internet of Things (IoT), and its potential impact on API design. We will look at some of the characteristics of IoT applications and give a brief overview over emerging technologies and patterns.
11. Get in Touch
Twitter: @hlgr360
Email: holger.reinhardt@ca.com
Blog: http://www.layer7tech.com/blogs/index.php/author/holger
Notes de l'éditeur
Real-time web functionality is the ability to have server-side code push content to the connected clients as it happens
WebSockets, GET upgrade, 101Socket.IO,JavaScript library for realtime web applications. It has two parts: a client-side library that runs in the browser, and a server-side library for node.js. Both components have a nearly identical API. Like node.js, it is event-driven.Socket.IO primarily uses the WebSocket protocol, but if needed can fallback on multiple other methods, such as Adobe Flash sockets, JSONP polling, and AJAX long polling, while continuing to provide the same interface. Although it can be used as simply a wrapper for WebSocket, it provides many more features, including broadcasting to multiple sockets, storing data associated with each client, and asynchronous I/O.SignalR,ASP.net .. For .NETWebRTC Data ChannelThe Peer-to-peer Data API lets a web application send and receive generic application data peer-to-peer. The API for sending and receiving data models the behavior of WebSockets. Uses Real Time Protocol (RTP). STUN/ICEA component allowing calls to use the STUN and ICE mechanisms to establish connections across various types of networks.http://dev.w3.org/2011/webrtc/editor/webrtc.html#peer-to-peer-data-example
Pub Sub: MQTT, XMPP, CoAP, REST, STOMPhttp://mholdmann.wordpress.com/2013/05/17/the-choice-of-protocol-for-iot-and-m2m-will-dictate-the-emergence-and-success-of-the-market/CoAP:The CoRE group has proposed the following features for CoAP:RESTful protocol design minimizing the complexity of mapping with HTTP.Low header overhead and parsing complexity.URI and content-type support.Support for the discovery of resources provided by known CoAPservices.Simple subscription for a resource, and resulting push notifications.Simple caching based on max-age.The mapping of CoAP with HTPP is also definedMQTT:It offers three qualities of service: 1) fire-and-forget / unreliable,2) “at least once” to ensure it is sent a minimum of one time (but might be sent more than one time), and 3) “exactly once”.MQTT’s strengths are simplicity (just five API methods), a compact binary packet payload (no message properties, compressed headers, much less verbose than something text-based like HTTP), and it makes a good fit for simple push messaging scenarios such as temperature updates, stock price tickers, oil pressure feeds or mobile notifications.STOMP:A STOMP client is a user-agent which can act in two (possibly simultaneous) modes:as a producer, sending messages to a destination on the server via a SEND frameas a consumer, sending a SUBSCRIBE frame for a given destination and receiving messages from the server as MESSAGE frames.