bitninja wrote: ↑
Wed Dec 12, 2018 4:55 pm
...have you thought about formulating an additional layer to the protocol that standardizes common data exchange messages that occurs for IOT applications?...
My aims for this project, in order of importance, were
- Resilience (obviously).
- Minimal RAM use. I wanted it to be usable on an ESP8266 without recourse to frozen bytecode or cross-compilation.
- Generality: to provide an interface not tied to any particular protocol.
My aim was to provide a socket-like interface supporting full-duplex streaming communication which can be used for any purpose (a "socket" which persists through outages).
There was some discussion on GitHub regarding enhancements. Some, like guaranteed message delivery, can readily be accomplished at application level as per my doc/demos. Other enhancements are probably best achieved by subclassing to avoid compromising RAM usage for people wanting to use the base class.
In the applications I envisage, the data being exchanged between the server and the ESP8266 nodes comprises JSON-encoded Python objects. These would contain very low-level information such as sensor readings or required Pin states or PWM values. In consequence the user code on the ESP8266 nodes would be minimal (barring device drivers).
I envisage all the clever internet stuff being done on the server.
This view may be a reflection of my background in hardware/firmware rather than web development. I'll be interested to see what others (e.g. @kevinkk525) come up with.