States are the building blocks of a circuit that can perform tasks, make decisions, or simply pass the output from one state to another. The state defines a specific task or process that has to be executed in that segment of the circuit.
Circuit states are categorized as follows:
Flow Controls
Functional states
Bridge Controls
Flow controls help you create complex workflows that orchestrate the flow of logic and data in the circuit. Flow Controls comprises the following states:
Pass - Passes input from one state to another
Branch - Defines the execution branches, a state's input and/or output directs the execution flow
Parallel - Performs simultaneous executions
Wait - Inserts a delay for the specified time
Batch - Implements multiple group executions
Success - Terminates an execution, returning the Success status
Failure - Terminates an execution, returning the Failure status
Functional states help you create real-time workflows to execute business logic in a circuit. You can accomplish this by composing functions using a built-in editor, generating webhooks through links, or linking circuits within a circuit.
The following functional states are avaialble in a circuit:
Function
Webhook
Circuit
These controls are used to perform certain operations in an application, database, or computer in any private network. The tasks in these controls require the bridge agent to be deployed and active in the end user's network. To learn how to deploy a bridge, click here. Bridge Controls include the following:
Task Engine - Connects and executes an API from a closed space
DB Task - Executes a SQL query in a Database hosted on a private network
SSH Task - Perform actions using shell commands or script in the intended Linux machine.
Files - Create workflows for file management
File Upload
File Transfer
AD Task - Integrate and perform actions in the AD service in the client network.
Add AD User
Add AD Group
Add User to Group
Add AD Computer
Enable AD User
Disable AD User
Reset AD Password
Unlock AD User
Remove AD Object
Update AD Object
Read AD Object
PowerShell Engine
Install WindowsApp
Uninstall WindowsApp
Start Service
Stop Service
Restart WindowsServer
Every State is defined by a set of attributes; most of the attributes are common for states, and a few states have some exclusive attributes as well. Each state must have a Type field indicating what type of state it is. Except for Success and Failure states, the rest require a Next field or can become a terminal state by specifying an End field.
Name: A unique name assigned to states when they are added to a circuit to identify the states within the circuit. The name can be modified under the Configuration section in the right pane.
Type: The actual state type is mentioned in this field. While you drag and add a state to the circuit, the state will be automatically allocated in the Type field. You can also select the state from the dropdown list available in this field.
Next State: The name of the next state that has to be run after the completion of the current state is given in this field. Except for the terminal states 'Success' and 'Failure', all other states must define this field. The last state of the Circuit should be assigned the next state value as End.
Input Path: Allows you to control the actual input passed to the state. It selects parts of the input JSON to pass to the state.
Result Path: Allows you to manipulate the output of a state. After the input is processed by the state, the result path determines what combination of the state result and the actual state input has to be passed to the output.
Output Path: Output path further filters the data from the Result Path to pass it as state output.
Parameters: Parameters allow you to control the actual input passed to the state. Parameters enable you to insert a collection of key-value pairs into the input. Parameter values can either be static or parts of the input JSON selected as paths.
For more details, visit the Input and Output processing section.
You are currently viewing the help articles of Qntrl 3.0. If you are still using our older version and require guidance with it, Click here.