3 ms·
Things connected to the internet should expose an API defining what they are, what they do, and what they need to perform their magic, so consumers can act acco
by Thiz 12y ago
Things connected to the internet should expose an API defining what they are, what they do, and what they need to perform their magic, so consumers can act accordingly.
name: thermostat
task: control room temperature
icon: [base64]
functions:
- turn on
- turn off
- set temperature (temp:num)
With that information my cell phone can interact with all the things around it. If I click on the thermostat icon I get the info shown and three butons with the actions I can perform on it. If I want to control the temperature I just enter a number and done.
If a TV is around, I can easily turn it on/off, switch channels, volume, etc.
No need for specialized apps, they're universal APIs every device can access, provided some level of security or trust.
Is that the IoT we want?
- bradfa 12y agoBasically, yes. But how do you authenticate that the thing telling the TV to turn off actually has the authority to tell it to turn off? This is a whole nother level of complexity which consumers will need to navigate after the API for all the things are standardized and many companies are going to screw up the security way worse than they are currently screwing up the interoperability. The real problem with IoT isn't the standardization of the transfer medium, it's the security implications of having your things on an internet.
- bergie 12y agoThat is actually pretty close to how we define components in the FBP protocol. You'll just want to add a bit more information about the inputs, and a possible set of outputs too (for example, a temperature reading?) http://noflojs.org/documentation/protocol/#component http://noflojs.org/documentation/protocol/#component For IoT use the default WebSocket transport isn't desirable, of course. But maybe something like MQTT? A subset of the protocol already works with serial-over-USB when talking to microcontrollers