Tasks
Command Devices with IoT automation
Inamata empowers you to network your devices and automate them with ease. Controller tasks, the smallest unit of action, are the building blocks on which all higher level functionality is built. Set outputs, poll inputs or make use of more advanced logic that is run on device. Combine tasks with a schedule to run them every hour or trigger them through a web hook to connect an external service.
Tasks enable IoT automation and can run once to turn on a light or be part of a local action chain. These run a sequence of logic on device to ensure that connection failures will not impact you.
The tasks section is where you command and monitor your devices. With this IoT automation you can manually run tasks here to turn connected peripherals on and off as well as monitoring then. To automate it, create and run control plans in the next section.
The tasks are run as logic on device. This means that once a controller tasks starts running on controller, it will continue running and end as commanded even if network connectivity is lost. This aspect pairs well with local action chains (LACs) which allow chaining multiple tasks together and even perform simple logic operations on device.
Local action chains resulted from our experience with intermittent network connectivity and drop packets even on local wireless networks. The result was overflowed water tanks as the command to start pumping was received from the local Node-RED instance but the off command sent as an MQTT packet never arrived at the controller to stop the pump. An on-wait-off controller task fixes this problem, however falls short of what is truly possible.
Local action chains allow creating a sequence of branching actions to run tasks locally. This means that once a LAC has started it will run to completion. Taken one step further, this allows simple logic to be run on device boot. This ensures that on a power cycle a safe state can be entered immediately and function minimally even if the network goes down. They are similar to ESPHome’s automations but do not require recompiling and uploading a new firmware binary on each edit.
Some features are still a work in progress, such as the LACs, scheduling and web hooks but are being worked on and will be available in an upcoming release.