This repository was archived by the owner on Sep 21, 2022. It is now read-only.

Description
An additional timestamp field can be used to schedule operations for future execution. An example use case is the gateway (NTP) time-synchronized reset of nodes. Another use case is a complete scheduled (automated) experiment execution.
After a scheduling request is received it will be forwarded to the responsible gateways and a status is returned indicating that the operation has been scheduled. Later, during execution status codes are sent to the controller as was the case before (e.g. 0 to 100 for flash progress).
- Support for scheduling is optional, i.e. if a timestamp but scheduling is not supported an error message will be returned that indicates that the scheduling is not yet supported.
- If supported, API implementations such as Testbed Runtime should schedule the operations physically as near as possible to the nodes that the operations will run on (e.g. the gateways).