Skip to content

Bots

Over the following sections, you will find information about how to manage your bots.

From the Bots menu you can deploy new bots and versions, mark versions of bots as released, update the bot code, download and exclude them.

Bots

How to create a bot

To manage a bot on the platform, we first need to create a project in the Java, Javascript, or Python structure that will be used to develop the bot.

To create a new bot project, follow the tutorials below:

Tip

In addition to template projects, you can also orchestrate your own custom projects.

See more details about orchestrate custom projects.

Building your bot project

To send the bot to Maestro you need to build the project. If you are in Windows run the build.bat file in the root directory of the project, otherwise run the build.sh file under Linux or macOS.

.\build.bat
./build.sh

Tip

If you get a permission error, make sure that your build.sh script has execution permission.

You can set the permission with the following command:

chmod +x build.sh

Java bots

For bots developed in Java, use the generated .jar file in the dist/ folder, if it generates two .jar files use the file with jar-with-dependencies in the filename.

Python bots

For bots developed in Python, use the generated .zip or .tar.gz file in the dist/ folder.

Javascript bots

For bots developed in Javascript, use a .zip file containing the project files such as the bot.js, resources folder and package.json.

Robot operations

After creating the project and doing the bot build process, we can perform the following operations in BotCity Maestro:

Deploy

Deploy is the process of adding new bots or new versions of existing bots on the BotCity Maestro platform.

You can deploy a bot by simply clicking the Deploy button and filling the form with the Bot ID, version, file, and technology used.

Bot Deploy

Update

The Update is the process used to overwrite or replace the code or executable that a given bot is associated with. Please note that this process is irreversible and will overwrite an existing version even if it is marked as release, so please be careful.

You can update a bot by simply clicking on the pencil icon on the right side of the line associated with your desired bot version and selecting a new file to replace the current one.

Bot Update Icon Bot Update

Release

Release is the process used to mark which of the bot available versions is the one currently being used when executing the tasks. This version will be downloaded by the BotCity Runner and executed on your host.

You can define the released version by simply clicking on the ribbon icon (highlighted by the red arrow below).

Bot Release

Download

To download the file referring to the bot that was used for Deploy, you can simply click on the download icon (highlighted by the red arrow).

Bot Download

Delete

To remove a deployed version, you can simply click on the trash icon (highlighted by the red arrow) and confirm on the confirmation dialog that will be displayed.

Bot Delete

Info

Deploy, Update and Release operations can also be done through BotCity Command Line Interface.

See more details about the command lines that can be used.

Technologies

All automation implemented in BotCity Maestro must necessarily have defined its technology. In this section, you will better understand which technologies BotCity Maestro accepts and how to define and use them.

Python

By setting technology to Python, BotCity Maestro will expect you to upload an automation that uses Python language in its development.

Tip

For Python projects, upload the .zip or .tar.gz file generated by the command of build.

Warning

Remembering that the .tar.gz file is generated by the build command of legacy project template

Java

Defining Java technology, BotCity Maestro will expect you to upload automation using Java language in its development.

Tip

For Java Projects, upload the.jar from the /dist folder, generated by the build. If two .jar files are generated, upload the file with jar-with-dependencies in its name.

JavaScript

As in the options above, by setting the technology as JavaScript, the BotCity Maestro will expect you to upload automation using the JavaScript language in its development.

Tip

For Javascript projects, upload a .zip file containing the project files, such as the bot.js, resources folder, and package.json.

Command

When defining the Command option as technology, BotCity Maestro will accept that you run any command type, such as shell, Batch, or Bash. This will also enable the orchestration of automation in other languages such as C#, Ruby, Go, VBA, and more.

Warning

For command-type projects, BotCity Maestro does not expect a specific file type to be loaded, given the range of command options it accepts. That is, you can upload any file that your command requires to run.

By accessing the edit robot option on the menu Bots, you will see a new field, Command. In this field, you can pass commands, arguments, and external parameters so the Runner can execute them.

batch {path}/DemoCommand.bat {maestro_server} {maestro_taskid} {maestro_token}

Image-command-field

Special flags to connect to the BotCity Maestro

Flag Description
{maestro_server} BotCity Maestro url
{maestro_taskid} ID of the current Task
{maestro_token} BotCity Maestro Pre-Authenticated token for integration and API calls

Passing parameters to the task

The automation parameters can also be injected automatically by passing the label between curly brackets, as we can see in the example below for a parameter named name:

{name}

Adding parameters in the automation

Image-params

Passing the parameter to the command

batch {path}/DemoCommand.bat {maestro_server} {maestro_taskid} {maestro_token} {name}

Image-command-name