Interactive Mode
In complex processes unexpected errors can happen. The interactive mode allows you to define automation processes which, in different situations, can react different to errors.
If an execution that runs in interactive mode encounters an error, the execution halts and a user or user group is notified. The user(s) can then decide whether to ignore the error, retry the execution or fail the execution.
The user(s) can decide on how to proceed.
Use Cases
Use interactive mode
- When parts of an automated process sometimes fail.
- An operator should be able to manually resolve errors and resume the processing.
- The same process sometimes also runs unattended.
Concept
The interactive mode feature is implemented as a Wrapper.
Importing the Wrapper bundle will provide you with a wrapper called interactive
.
As all wrappers, the interactive
wrapper can be statically attached and configured. Please refer to Static Wrappers for more information.
Alternatively, the interactive
wrapper can be dynamically attached and configured. Please refer to Dynamic Wrappers for more information.
The most common usage is to statically attach and configure the interactive
wrapper to a flow or connector. This way all executions of the flow or connector will allow interactive operations in case an error occurs.
The interactive
wrapper provided by Engine is considered an example which can be extended or modified to your needs.
Parameters
Refer to the interactive
wrapper for its parameters.
Examples
Starting a flow which can be restarted interactively
import flow_api
def handler(system: flow_api.System, this: flow_api.Execution, inputs: dict):
this.using('interactive').flow('<name-of-a-flow>')
return this.success('all done')