# Automation (low-code)

The new automation functionality, built on the low-code visual programming engine and its own scripting and execution system, allows users to create arbitrary event processing scenarios using visual blocks and establishing links between them.

To build Scenarios, both basic Blocks of the system library and local functions, written by the user in the C# scripts scripting language, are available

Guidelines for creating a new scenario

# Architecture of processing Automation scenarios

Image

# General principle of building a Service Model

Image

# Scenario management screen

Image

The main screen of the Automation menu presents a list of scenarios with the following information:

  • Scenario name
  • Scenario type (in the first version -- CMDBAutoDiscovery)
  • Scenario Owner (Workgroup)
  • Scenario State

# Scenario constructor

The constructor includes the ability to view and edit the scenario itself, as well as basic information about it.

Image

The scenario can be in the active or inactive state.

  • Active scenario - the scripting and execution system runs it to handle events.
  • Inactive scenario - the system for launching and executing scripts does not run it in event processing.

Immediately after creation, the scenario is set to Inactive mode. You can activate a scenario from the scenario builder or from the scenario management screen.

# Object Manager

Object Manager

The Object Manager is available to the user, allowing him to work with the declared entities of the current scenario. Every declared local function, variable or structure in the scenario will be displayed in this list.

The user can go to the settings of these entities (Object Inspector) immediately from the manager, without the need to add them to the graph.

In the object manager, you can create new scenario entities, namely:

  • Local functions,
  • Local variables,
  • Local structures.

When added new entities are assigned default names:

In a case of names repetition a serial number is added to them.

Image

# Object Inspector

Object Inspector

Image

# Debug terminal / Compiler log

To work with the logs of the compiler and the engine itself, a debug terminal is available.

The debug terminal is available in the scenario editing mode.

Logs are presented in separate tabs:

  • Compiler log,
  • Debug terminal

The tab containing log errors has an indicator that displays the presence of errors.

Image

The panel can be collapsed and expanded as needed.

# Compiling scenarios

After making changes to the scenario graph, configuration or block script, the system will prompt the user to compile the final scenario to check for correctness.

# Import/export scenarios

Users can share scenario designs with each other thanks to the Export and Import scenario tools.

When exporting, the mechanism for serializing the scenario into the base64 format is used. Based on the results, the user will be prompted to copy a string to the clipboard or download a txt file with its contents.

image

In addition to the standard scenario creation, the user will have access to the import option. After selecting this option it is necessary to fill in a string with content in the base64 format.

image

During the import process, the system will check the versions of the involved modules, and if successful, will create a scenario with all the necessary local functions and structures.