Ir para o conteúdo

Robôs

Nas seções a seguir, você encontrará informações sobre como gerenciar seus robôs.

No menu Robôs, você pode implantar novos robôs e versões, gerenciar a versão que será utilizada na execução, atualizar o código do robô, baixar e também excluí-los da plataforma.

Bots

Como criar um robô

Para gerenciar um robô na plataforma, precisamos primeiramente criar um projeto na estrutura Java, Javascript ou Python que será utilizado para desenvolver o robô.

Para criar um novo projeto de robô, siga os tutoriais abaixo:

Dica

Além dos projetos que seguem um modelo, você também pode orquestrar seus próprios projetos customizados.

Veja mais detalhes sobre como orquestrar projetos customizados.

Construindo seu projeto de robô

Para enviar o robô para o Maestro você precisa realizar o processo de "build" do projeto.

Se você estiver no Windows, execute o arquivo build.bat no diretório raiz do projeto, caso contrário, execute o arquivo build.sh no Linux ou macOS.

.\build.bat
./build.sh

Dica

Se você receber um erro de permissão, certifique-se de que seu script build.sh tenha permissão de execução.

Você pode definir a permissão com o seguinte comando:

chmod +x build.sh

Robôs Java

Para robôs desenvolvidos em Java, utilize o arquivo .jar gerado na pasta dist/. Se dois arquivos .jar forem gerados, utilize o arquivo com jar-with-dependencies no nome.

Robôs Python

Para robôs desenvolvidos em Python, utilize o arquivo .zip ou .tar.gz gerado na pasta dist/.

Robôs Javascript

Para robôs desenvolvidos em Javascript, utilize um arquivo .zip contendo os arquivos do projeto, como bot.js, pasta resources e package.json.

Operações com robôs

Após criar o projeto e fazer o processo de "build" do robô, podemos realizar as seguintes operações no BotCity Maestro:

Deploy/Implantar

Deploy é o processo usado para adicionar novos robôs ou novas versões de robôs existentes na plataforma BotCity Maestro.

Você pode implantar um robô simplesmente clicando no botão Deploy e preenchendo o formulário com o Bot ID, versão, arquivo e tecnologia usados.

Bot Deploy

Update/Atualizar

Update é o processo usado para sobrescrever ou substituir o código ou executável ao qual um determinado robô está associado. Observe que esse processo é irreversível e substituirá uma versão existente, mesmo que esteja marcada como "release", portanto, tenha cuidado.

Você pode atualizar um robô simplesmente clicando no ícone de lápis no lado direito da linha associado à versão do robô desejada e selecionando um novo arquivo para substituir o atual.

Ícone de Atualização de Bot Bot Update

Release/Liberar

Release é o processo usado para marcar qual das versões disponíveis está sendo usada atualmente ao executar as tarefas. Esta versão será baixada pelo BotCity Runner e executada em seu host.

Você pode definir a versão liberada simplesmente clicando no ícone da faixa de opções (destacado pela seta vermelha abaixo).

Liberação de bot

Download

Para baixar o arquivo referente ao robô usado para Deploy, você pode simplesmente clicar no ícone de download (destacado pela seta vermelha).

Download de bot

Excluir

Para remover uma versão implantada, basta clicar no ícone do lixo (destacado pela seta vermelha) e confirmar na caixa de diálogo de confirmação que será exibida.

Delete Bot

Info

As operações Deploy, Update Release também podem ser feitas através da interface da linha de comando BotCity.

Veja mais detalhes sobre as linhas de comando que podem ser utilizadas.

Tecnologias

Toda automação que é implantada no BotCity Maestro, precisa obrigatóriamente ter definida a sua tecnologia. Nesta seção você entenderá melhor quais tecnologias o BotCity Maestro aceita, como definí-las e utilizá-las.

Python

Ao definir a tecnlogia Python o BotCity Maestro esperará que voce carregue uma automação que utiliza a linguagem Python em seu desenvolvimento.

Dica

Para projetos Python, carregue o arquivo .zip, ou .tar.gz gerados pelo comando de build.

Aviso

Lembrando que o arquivo .tar.gz é gerado pelo comando de build do template de projeto legado.

Java

Definindo a tecnologia Java, o BotCity Maestro entende que voce carregará uma automação utilizando a linguagem Java em seu desenvolvimento.

Dica

Para projetos Java, carregue o .jar da pasta /dist, gerados pelo comando de build. Caso sejam gerados dois arquivos .jar, carregue o arquivo que possui jar-with-dependencies em seu nome.

JavaScript

Assim como nas opções acima, ao definir a tecnologia JavaScript o BotCity Maestro esperará que voce carregue uma automação utilizando a linguagem JavaScript em seu desenvolvimento.

Dica

Para projetos JavaScript, carregue um arquivo .zip contendo os arquivos do projeto, como bot.js, pasta resources e package.json.

Comando

Ao definir a opção Comando como tecnologia, o BotCity Maestro aceitará que você rode qualquer tipo de comando como shell, batch ou bash possibilitando também a orquestração de automações em outras linguagens como C#, Ruby, Go, VBA bem como qualquer outra.

Aviso

Para projetos do tipo comando, o BotCity Maestro não espera que um tipo de arquivo específico seja carregado, pela variedade de opções de comandos aceitos. Ou seja, você pode carregar qualquer arquivo que possui os comandos que deseja executar.

Feito isso, ao acessar a opção editar robô no menu Meus Robôs, você visualizará um novo campo, o Comando. É neste campo que voce poderá passar comandos, argumentos e parâmetros externos para que o Runner seja capaz de executá-los.

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

Image-command-field

Flags especiais para se conectar ao BotCity Maestro

Flag Descrição
{maestro_server} Url do BotCity Maestro
{maestro_taskid} ID da tarefa em execução
{maestro_token} Token do BotCity Maestro pré-autenticado para uso em integração

Passando parâmetros para a tarefa

Os parâmetros das tarefas também podem ser injetados de forma automática passando o label entre chaves, como podemos ver no exemplo abaixo para um parâmetro chamado name:

{name}

Adicionando parâmetros na automação

Image-params

Passando o parâmetro para o comando

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

Image-command-name