Skip to content

Automations

An Automation is one of the most important elements of the BotCity Orchestrator, it characterizes a process to be executed.

View Automations

On this screen, you can view a summary of the Automations via the following cards:

  • Total Automations: The total number of Automations created.
  • Complete Automations: The number of automations with a Bot and at least one Runner linked.
  • Incomplete Automations: The number of automations without a Bot, without a Runner, or without both.

Below the summary, you can view the automations in a list format with the following columns:

  • Icon: Icon representing the language of the robot linked to the automation.
  • Name: Unique identifier for the automation, serving as a link to access its details.
  • Label: User-friendly label for the automation.
  • Description: Description defined for the automation.
  • Robot ID: Identifier of the robot linked to the automation.
  • Repository: Name of the repository where the automation is stored.
  • Runners: Runners that can execute the automation's tasks. When more than one Runner is linked, the column shows Multiple runners.
  • Warnings: Indicates the amount of configuration information pending for the automation.
  • Actions menu: Available actions for the automation.

Screenshot of the BotCity Orchestrator showing the Automations menu. The page is titled 'Automations' and includes the description 'Automate your business process by specifying your bot, runner and other attributes', with the 'New Automation' button in the upper right corner. Below are the search field, the filter and sorting fields, the 'Import' button and the bulk actions menu. Next are the summary cards: Total automations, Completed automations and Incomplete automations. Finally, the list of automations with the columns: Icon, Name, Label, Description, Bot ID, Repository, Runners, Warning and actions menu.

Anatomy of an Automation

The automation is responsible for linking the Bot (script, software, or process code) and the Runners (instances of the BotCity Runner service). Therefore, when creating a New Task, the automation will contain information about which Bot to use and which Runners can execute that automation.

More information

Learn more about:

Diagram illustrating the BotCity orchestration flow in three steps: 1) Develop the bot, represented by a Python icon with the text "Bot"; 2) Set up the automation, represented by the BotCity Orchestrator (blue cloud icon) containing an Automation that links the Bot to a Task; 3) Run it, represented by the BotCity Runner receiving the Task from the queue and executing it.

An automation can contain more information and settings about a process to be executed.

When accessing the Automations menu and selecting an existing automation, the information is separated into 3 tabs:

Overview

In this tab, you will find general information about the Automation, separated into blocks:

  • About the automation
    • Name: The friendly name of the automation.
    • Label: The unique identifier of the automation (the label is unique — even if you delete the automation, you will not be able to use it again).
    • Repository: Selection of the repository where the automation will be allocated.
    • Description: A brief description of the automation process.
  • Task management
    • Priority: The default execution priority of this process.
    • Linked Runners: Selection of Runners associated with this automation. The list shows only the Runners linked to the automation's repository. If more than one Runner is attached, the task will be assigned to the first free BotCity Runner that is online and available.
  • Notifications
    • Users to notify: Selection of users to be notified when a notification alert of a certain type occurs.
    • Notification type: The alert notification types for notifying users.

Notifications

The users selected in the Notify users field will receive an email notification every time the automation fires an alert via code.

See more at:

Screenshot of the BotCity Orchestrator, showing the New Automation creation form, on the Overview tab. The form is divided into three sections: "About the automation", containing the Name, Label, Repository and Description fields; "Task management", containing the Priority and Linked Runners fields; and "Notifications", containing the Users to notify and Notification type fields. In the upper right corner, the Cancel and Save buttons. At the top of the page, the navigation tabs: Overview (selected), Development and Execution policy.

Development

In this tab, you will find development information about the automation, separated into blocks:

  • Bot Information
    • Linked Bot: The code of a process or software associated with this automation.
    • Technology: Technology or programming language used in the automation.
  • Parameters: Dynamic information that can be used by the Linked Bot.

Parameters

Automations can be parameterized for greater flexibility and more dynamic code.

Parameters are defined in the Parameters section of the automation when creating or editing it.

In the Development tab, click the Edit button to enable the editing fields, then click the Add + button to add a new parameter.

A parameter is defined by the following elements:

  • Name: The friendly name of the parameter.
  • Label: The unique identifier of the parameter.
  • Description: A brief description of the parameter.
  • Type: Selection of the parameter data type, which can be:
    • Text: Text input type.
    • Integer: Integer number input type.
    • Double: Decimal number input type.
    • Date: Date input type.
  • Range: Indicates the minimum and maximum value for numeric data input.
  • Default Value: Indicates which input value is set as default for the field.
  • Required:
    • Yes: It is required to provide a value for the field when creating a task.
    • No: It is optional to provide a value for the field when creating a task.
  • Actions:
    • Delete: Deletes the parameter.
    • Edit: Opens the parameter for editing.
    • Cancel: Cancels the parameter editing.
    • Save: Saves the parameter editing.

Data type

The Type will determine how the parameter is displayed when creating a new task in the BotCity Orchestrator.

See more details on how to access the Parameters via SDK in code.

Screenshot of the BotCity Orchestrator, showing the New Automation creation form, on the Development tab (selected). The form is divided into two sections: "Bot Information", containing the Bot and Bot Technology fields; and "Parameters", containing a "How to use parameters?" link, the "Add +" button and a table with the columns Name, Label, Description, Type, Range, Default Value, Required and Actions. In the upper right corner, the Cancel and Save buttons. At the top of the page, the navigation tabs: Overview, Development (selected) and Execution policy.

Execution Policy

In this tab you have the option to define the maximum expected time for a task of this automation to execute.

When the timeout is enabled, you can select the expected time option in:

  • Minute
  • Hour
  • Day

The time value must be set to a minimum of 1 minute and a maximum of 1 day.

Attention!

  • The timeout will be applied to new tasks of this automation. If there are already tasks in the queue, they will not be affected.
  • The time defined in timeout starts counting from the moment the task begins its execution by the Runner. The time in queue is not considered.

Screenshot of the BotCity Orchestrator, showing the New Automation creation form, on the Execution policy tab (selected). The form displays the "Timeout" section. Below, an enabled toggle with the text "Enable timeout in this automation" and the "Expected timeout" field with two selection fields: time unit and numeric value. In the upper right corner, the Cancel and Save buttons. At the top of the page, the navigation tabs: Overview, Development and Execution policy (selected).

Actions

You can perform some actions in the Automations menu.

Create

To create an automation, follow the steps:

  • Access the Automations menu in the BotCity Orchestrator
  • Click the + New Automation button in the upper right corner
  • Fill in the information for:
  • Click the Save button in the upper right corner

Select Runners on creation

The Linked Runners field is disabled until you choose the automation's Repository. After that, the field shows only the Runners linked to that repository.

No Runner is selected by default. You can select as many Runners as you want or use the select all option. You can also create the automation without any Runner, for example, when the workspace does not have Runners created yet.

If you change the repository before saving:

  • The new repository shares some of the selected Runners: only the shared Runners remain selected.
  • The new repository shares none of the selected Runners: the Linked Runners field is cleared and you select the Runners again.

Required fields

The required fields are: Name, Label, Repository and Description.

The other information can be filled in later. To execute tasks of this automation, however, it must have the Bot and at least one Runner linked.

Another way to create

Automations can also be created in a simplified way through Easy Deploy.

Complete and incomplete automations

You can create just the automation, with the required fields, and link the Bot and the Runner later, at another point in your journey. While these links don't exist, the automation is considered incomplete.

The automation status considers two links:

  • Linked Bot: the automation has a Bot linked.
  • Linked Runner: the automation has at least one Runner linked.

The automation is complete when it has both links. When one of them, or both, is missing, it is incomplete.

Incomplete automations don't execute tasks

You can't create or execute tasks of an incomplete automation. Link the Bot and at least one Runner to the automation before creating a new task.

On the automation details page, a warnings panel shows what is missing:

  • No Runner linked: the automation has no Runner linked. See more at Runners.
  • No Bot linked: the automation has no Bot linked. See more at Bots.
  • Not reporting items: the automation is not reporting processed items to BotCity Insights and, therefore, does not feed the efficiency indicators. See how to report at Finish task and report data.

Item reporting doesn't change the status

The Not reporting items warning is not considered when defining whether the automation is complete or incomplete. An automation with a Bot and a Runner linked is complete even if it doesn't report items to BotCity Insights yet.

Screenshot of the BotCity Orchestrator, showing the details page of an automation. Highlights a yellow warnings panel with the title "3 Warnings for this automation" and the following warnings: 1) "Not reporting items" - the automation is not reporting items and therefore is not feeding the efficiency indicators, with a "Learn how to report" link; 2) "No runner attached" - the automation has no runner attached to it, with an "Attach runner(s)" link; 3) "No bot attached" - the automation has no bot attached to it, with an "Attach bot" link. In the upper right corner of the page, the Share, Delete, Edit and Export buttons.

GIF demonstrating how to create a new automation. Flow accessing the Automations menu, clicks on + New Automation, fills in the required form fields: Name, Label, Repository and Description. Finishes by clicking the Save button in the upper right corner.

Edit

After creating an automation, you can follow these steps to edit it:

  • Access the Automations menu in the BotCity Orchestrator
  • Access the details by clicking on the automation name
  • Click the Edit button in the upper right corner
  • Change the values of the desired fields
  • Click Save in the upper right corner

When editing, the Linked Runners field shows only the Runners linked to the automation's repository.

Automations with a linked Runner

If the automation already has at least one linked Runner, you cannot save the edit without any Runner. If the automation has no Runner, the edit can be saved normally.

GIF demonstrating how to edit an automation. Flow accessing the Automations menu, clicks on an existing Automation, navigates to the Execution policy tab and disables the timeout. Finishes by clicking the Save button in the upper right corner.

Export

You can export the information of an automation from one workspace to use in others.

To export, you can follow the steps:

  • Access the Automations menu in the BotCity Orchestrator
  • Access the details by clicking on the automation name
  • Click the Export button in the upper right corner
  • The file download should start automatically

GIF demonstrating how to export an automation. Flow accessing the Automations menu, clicks on an existing Automation, clicks the Export button in the upper right corner.

Import

You can import the information of an Automation from one workspace to use in others, without going through the creation step.

To import, you can follow the steps:

  • Export the automation from another workspace
  • Access the Automations menu in the BotCity Orchestrator
  • Click the + Import button in the upper right corner
  • Select the automation's .json file
  • Select the repository for this automation
  • Click the + Import button

JSON file

The .json file contains the information of an automation to be imported into another workspace. However, it is necessary to link the Runners and Bots of this automation after importing.

File example
    {
      "label" : "demo",
      "name" : "Automation Demo",
      "description" : "Automation used as an example.",
      "parameters" : [ {
        "defaultValue" : "value",
        "description" : "Demo Param",
        "label" : "paran",
        "name" : "Param",
        "required" : true,
        "resourceLabel" : null,
        "rules" : { },
        "type" : "TEXT"
      } ],
      "notification" : {
        "monitored_types" : [ "INFO", "WARN", "ERROR" ],
        "users" : [ 9314 ]
      },
      "status" : null,
      "priority" : 0,
      "automationExists" : false
    }

GIF demonstrating how to import an automation. Flow accessing the Automations menu, clicks on + Import to open a modal window with the import form. In the window, selects the import file with the ".json" extension, selects the repository for the automation and finishes by clicking "Import" at the bottom of the form.

Move to Repository

To move an automation to another repository, edit the automation:

  • Access the Automations menu in the BotCity Orchestrator
  • Access the details by clicking on the automation name
  • Click the Edit button in the upper right corner
  • In the Repository field, select the new repository
  • In the Linked Runners field, select the Runners of the new repository
  • Click Save in the upper right corner

When you change the repository, the Moving resources to a new repository notice appears at the top of the screen. The Linked Runners field follows the same rule as on creation: it keeps only the Runners shared with the new repository or is cleared when there are none in common.

Resources moved along with the automation

This action also moves the bots, schedules and other resources linked to the automation. After saving, only users with permission on the new repository can view and operate the automation.

Runners required when moving

If the automation already had a linked Runner, the Save button stays disabled until you select at least one Runner of the new repository.

If the Linked Runners field was cleared by the change and you go back to the original repository, the previous Runners are not restored. Select them again.

Search and filters

You can combine multiple filters to search in the Automations menu, according to your needs.

Search by:

  • Automation: Search by the automation name or label.

Available filters:

  • Label: Selects one or more labels.
  • Automation: Selects one or more names.
  • Repository: Selects a specific repository.
  • Complete: Filters the automations with a Bot and at least one Runner linked.
  • Incomplete: Filters the automations without a Bot, without a Runner, or without both.

Sorting:

  • Alphabetically
  • Most recent first
  • Oldest first

GIF of the BotCity Orchestrator, showing the filters for searching automations. Shows the three main fields available for filtering: Search by automation name or label, Filter, Sorting.