Bots¶
In the Bots menu, you can view, deploy new bots and versions, manage the version to be used during execution, update the bot's code, download, and also remove them from the platform.
Viewing Bots¶
When accessing the Bots menu, you can view all bots deployed in the BotCity Orchestrator in a list, with the following column information:
- BotID: Bot identifier
- Version: Version defined during the bot's deploy
- Last Deploy: Date and time of the bot's deploy or update
- Release Version: Identifies which version will be executed by the task; other versions of the same bot have an empty column.
- Technology: Identifies the technology the bot was developed in
- Repository: Selection of the repository where the bot will be allocated
- Actions: Action selection
Creating a Bot¶
For each type of technology, a specific structure is required to be recognized and executed in the context of the BotCity Orchestrator.
You can develop a new project or adapt an existing one. See the tutorials below using the BotCity project template:
-
Python
-
Java
-
Javascript
Building your bot project¶
After full development, to send the bot to the BotCity Orchestrator you need to perform the project build process.
Build files are available in BotCity project templates; you can run the file appropriate for the operating system you are using, whether Windows, Linux, or macOS.
Java Bots
For bots developed in Java, use the .jar file generated in the dist/ folder. If two .jar files are generated, use the file with jar-with-dependencies in its name.
Python Bots
For bots developed in Python, use the .zip or .tar.gz file generated in the dist/ folder.
Javascript Bots
For bots developed in Javascript, use a .zip file containing the project files, such as bot.js, resources folder, and package.json.
Bot Operations¶
After creating the project and performing the bot's build process, you can deploy it to the BotCity Orchestrator and perform various operations described below.
Command Line Interface
You can follow the steps described below on the platform or perform Deploy, Update, and Release operations using the BotCity command line interface.
See more details at:
Deploy¶
Deploy is the process used to add new bots or new versions of existing bots to the BotCity platform.
To deploy a bot, you need to access the Bots menu and click on + Deploy, then fill in the fields:
- BotID: Bot identification name
- Version: Version defined by alphanumeric and special characters
- Technology: Development language of the project
- Repository: Selection of the repository where the bot will be allocated
- File: Already built project file
Update¶
Update is the process used to overwrite an existing version of a bot.
Overwrite
Note that the update process is irreversible and will replace an existing version, even if it is marked as "release", so be careful.
To update an existing bot, you need to access the Bots menu, click edit in the action menu of the bot version to be updated, then fill in the fields:
- Technology: Language of the developed project
- File: Already built project file
Release¶
Release is the process used to mark which of the available versions of a bot will be used when executing tasks.
The marked version is downloaded and executed by the BotCity Runner.
To define the released version of an existing bot, you need to access the Bots menu, click Release in the action menu of the bot version to be marked.
Release Column
When there is more than one version of a bot, check the Release column to see which version is marked.
Download¶
You can download the file of any bot deployed in the BotCity Orchestrator. To do this, access the Bots menu and click Download Bot in the action menu of the chosen bot version.
Delete¶
You can remove the version of any bot deployed in the BotCity Orchestrator. To do this, access the Bots menu and click Delete.
Deletion
Note that the deletion process is irreversible and will permanently delete an existing version, so be careful.
Technologies¶
Every automation deployed in the BotCity Orchestrator must have its technology defined.
See below which technologies are accepted, how to define them, and how to use them.
Python¶
When defining the Python technology, the BotCity Orchestrator expects you to upload an automation that uses the Python language in its development.
Expected file type
For Python projects, upload the .zip or .tar.gz file generated by the build command.
Legacy template
Note that the .tar.gz file is generated by the build command of the legacy project template.
Java¶
When defining the Java technology, the BotCity Orchestrator expects you to upload an automation using the Java language in its development.
Expected file type
For Java projects, upload the .jar from the /dist folder, generated by the build command. If two .jar files are generated, upload the file that has jar-with-dependencies in its name.
JavaScript¶
When defining the JavaScript technology, the BotCity Orchestrator expects you to upload an automation using the JavaScript language in its development.
Expected file type
For JavaScript projects, upload a .zip file containing the project files, such as bot.js, resources folder, and package.json.
Command¶
When defining the Command option as technology, the BotCity Orchestrator allows you to execute any type of command such as shell, batch, or bash, also enabling the orchestration of automations in languages such as C#, Ruby, Go, VBA, as well as any other.
Expected file type
For Command type projects, the BotCity Orchestrator does not expect a specific file type to be uploaded, due to the variety of accepted command options. That is, you can upload any file that contains the commands you want to execute.
For this type of technology, when deploying or editing a bot, you need to fill in a new field called Command.
In this field you can pass commands, arguments, and external parameters for the Runner to be able to execute them.
Special flags to connect to the BotCity Orchestrator¶
| Flag | Description |
|---|---|
| {maestro_server} | BotCity Orchestrator URL |
| {maestro_taskid} | ID of the running task |
| {maestro_token} | Pre-authenticated BotCity Orchestrator token for use in integration |
Command example
Passing task parameters¶
It is common to use parameters in automations to define dynamic values at the time of creating tasks.
In this context, parameters can be passed using the parameter's label in curly braces when creating the command.
Command example with the name parameter
Integrations¶
Even using the Command technology, you can integrate with BotCity Orchestrator features such as alerts, result files, errors, etc.
To do this, you can use the API and integrate with any language used in development.
Finish task
The most important integration is task finalization, where you can track the status of each task, and data reporting, informing the number of items executed successfully or with failure in a run.
See more details at:








