-
Notifications
You must be signed in to change notification settings - Fork 18
Status and Roadmap
mjkoster edited this page May 27, 2014
·
1 revision
IoT Toolkit Status and Roadmap 26 May 2014
This repository contains a stable development version of IoT Toolkit which can be used to create Smart Object API Instances connected using HTTP/REST, MQTT, and a subset of CoAP protocols.
The state of development is experimental, with a clear set of features yet to implement to produce a developer release.
There is a backlog of features needed for supportability and developer usefulness:
- Structured testing, at least exercising the REST API and testing basic operations and resources using a set of test cases. A base test case exists (weather station)
- Resource delete implementation, making sure memory is cleaned up. Framework started.
- Create bulk notification scheme to support bulk bindings and observers, make notification registration interface for bindings (SmartObject and ObservableProperty classes), notify interface to accept topic + payload, (opt) add topic filter and interface for SmartObject level bindings, (opt) add value filter and interface
- Refactor Observers to Bindings, make Observer a class of binding, build class templates for bindings. Bindings to use the new notification interface. Remove “Observers” container and associated code. Items 3 and 4 are needed to implement well known design patterns and will impact the API structure. Update API documentation.
- Update the CoAP engine to support Draft 18 (final) including Block and Observe
- Replace http server with permissive license code (currently LGPL)
- Add exception handling and server error reporting for common errors
- Code restructure, fix recursive import issues with library modules, dynamic import?
- Package as installable library install using Python setuptools
Roadmap
- Implement Resource Directory catalog server
- Consume data models as constructor for API instances
- Implement service bindings for http: and coap: servers
- Implement service registry in RD server
- Build access control permissions engine based on authorization models
- Integrate Node-RED by creating SmartObject node and javascript application component templates
- Build an open source GUI Dashboard using HTML5, JS and a simple GUI toolkit
- Build a modeling tool for creation and maintenance of semantic models, integrate with github
- Create an Open IoT stack with IoT Toolkit, Node-RED, Mosquitto MQTT, and related tools bundled and integrated
- Create an open source IDE for IoT web applications based on the modeling tool, GUI tool, and Node-RED
- Create distributed DevOps scheme to enable IoT Toolkit stack instances in local embedded Linux, private cloud, and container deployments, managed through github, bootstrapped through a trusted service or image