Ir para o conteúdo

Robôs

No menu Robôs, você pode visualizar, 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.

Captura de tela do Orquestrador da BotCity, no menu Robôs, apresentando a lista de robôs implantados com informações em colunas: BotID, Versão, Último Deploy, Versão de Release, Tecnologia, Repositório e menu de Ações. Acima da lista, botão de novo Deploy.

Visualização de Robôs

Ao acessar o menu Robôs você pode visualizar todos os robôs implantados no Orquestrador BotCity em uma lista, com as seguintes informações em colunas:

  • BotID: Identificação do robô
  • Versão: Versão definida durante o deploy do robô
  • Último Deploy: Data e hora do deploy ou atualização do robô
  • Versão de Release: Identifica qual versão será executada pela tarefa, outras versões do mesmo robô ficam com a coluna vazia.
  • Tecnologia: Identifica em qual tecnologia o robô foi desenvolvido
  • Repositório: Seleção do repositório onde o robô será alocado
  • Ações: Seleção de ação

Criar um robô

Para cada tipo de tecnologia é necessária uma estrutura específica para ser reconhecida e executada no contexto do Orquestrador BotCity.

Você pode desenvolver um projeto novo ou adequar um projeto existente. Veja os tutoriais abaixo utilizando o template de projeto BotCity:

Construir seu projeto de robô

Após o desenvolvimento completo, para enviar o robô para o Orquestrador BotCity você precisa realizar o processo de build do projeto.

Há arquivos de build disponíveis nos templates de projeto da BotCity, você pode executar o arquivo adequado ao sistema operacional que está utilizando, seja Windows, Linux ou macOS.

.\build.bat
./build.sh

Permissão

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ô, você pode implantá-lo no Orquestrador BotCity e realizar operações diversas descritas a seguir.

Interface de Linha de Comando

Você pode seguir os passos descritos abaixo na plataforma ou realizar as operações como Deploy, Update e Release em interface da linha de comando da BotCity.

Veja mais detalhes em:

Deploy/Implantar

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

Para implantar um robô, você precisa acessar o menu Robôs e clicar em + Deploy, então preencher os campos:

  • BotID: Nome de identificação do robô
  • Versão: Versão definida por caracteres alfanuméricos e especiais
  • Tecnologia: Linguagem de desenvolvimento do projeto
  • Repositório: Seleção do repositório onde o robô será alocado
  • Arquivo: Arquivo do projeto já construido

Captura de tela do Orquestrador da BotCity, apresentando o formulário de Deploy de novo robô. O formulário contém os campos: BotID, Versão, Tecnologia, Repositório e Arquivo. Abaixo, os botões de Cancelar e Criar.

Update/Atualizar

Update é o processo usado para sobrescrever uma versão existente de robô.

Sobrescrita

Observe que o processo de atualização é irreversível e substituirá uma versão existente, mesmo que ela esteja marcada como "release", portanto, tenha cuidado.

Para atualizar um robô existente, você precisa acessar o menu Robôs, clicar em editar no menu de ações da versão do robô a ser atualizado, então preencher os campos:

  • Tecnologia: Linguagem do projeto desenvolvido
  • Arquivo: Arquivo do projeto já construido

GIF demonstrando como atualizar um robô. Fluxo inicia no menu Robôs, clica em Editar no menu de ações de uma versão de robô existente e faz upload do novo arquivo do projeto. Finaliza clicando no botão de Salvar.

Release/Liberar

Release é o processo usado para marcar qual das versões disponíveis de um robô será usada ao executar as tarefas.

A versão marcada é baixada e executada pelo BotCity Runner.

Para definir a versão liberada de um robô existente, você precisa acessar o menu Robôs, clicar em Release no menu de ações da versão do robô a ser marcado.

Coluna Release

Quando há mais de uma versão de um robô, veja na coluna Release qual das versões está marcada.

GIF demonstrando como definir a versão de release de um robô. Fluxo inicia no menu Robôs, clica na opção Release no menu de ações da versão do robô a ser marcada como release. A versão selecionada passa a ser exibida na coluna Versão de Release da lista.

Download

Você pode baixar o arquivo de qualquer robô implantado no Orquestrador BotCity, para isso você precisa acessar o menu Robôs, clicar em Baixar robô no menu de ações da versão do robô escolhido.

GIF demonstrando como baixar um robô. Fluxo inicia no menu Robôs, clica em Baixar robô no menu de ações da versão do robô escolhida. O download do arquivo do robô começa automaticamente.

Excluir

Você pode remover a versão de qualquer robô implantado no Orquestrador BotCity, para isso você precisa acessar o menu Robôs, clicar em Excluir

Exclusão

Observe que o processo de exclusão é irreversível e excluirá uma versão existente permanentemente, tenha cuidado.

GIF demonstrando como excluir um robô. Fluxo inicia no menu Robôs, clica em Excluir no menu de ações da versão do robô a ser removida e confirma a exclusão na janela de confirmação exibida.

Tecnologias

Toda automação implantada no Orquestrador BotCity precisa ter obrigatóriamente definida a sua tecnologia.

Veja a seguir quais tecnologias aceitas, como definí-las e utilizá-las.

Python

Ao definir a tecnologia Python, o Orquestrador BotCity espera que você carregue uma automação que utiliza a linguagem Python em seu desenvolvimento.

Tipo de arquivo esperado

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

Template legado

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

Java

Ao definir a tecnologia Java, o Orquestrador BotCity espera que você carregue uma automação utilizando a linguagem Java em seu desenvolvimento.

Tipo de arquivo esperado

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

Ao definir a tecnologia JavaScript, o Orquestrador BotCity espera que você carregue uma automação utilizando a linguagem JavaScript em seu desenvolvimento.

Tipo de arquivo esperado

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 Orquestrador BotCity aceita que você execute qualquer tipo de comando como shell, batch ou bash, possibilitando também a orquestração de automações em linguagens como C#, Ruby, Go, VBA, bem como qualquer outra.

Tipo de arquivo esperado

Para projetos do tipo Comando, o Orquestrador BotCity 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.

Para esse tipo de tecnologia, ao fazer a implantação ou editar um robô, é necessário preencher um novo campo chamado Comando.

Neste campo que você pode passar comandos, argumentos e parâmetros externos para que o Runner seja capaz de executá-los.

Captura de tela do Orquestrador da BotCity, apresentando o formulário de Atualização com a tecnologia Comando selecionada. Destaca o campo Comando, onde é possível inserir comandos.

Flags especiais para se conectar ao BotCity Orquestrador

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

Exemplo de comando

cmd /c start {path}/DemoCommand.bat {maestro_server} {maestro_taskid} {maestro_token}

Passar parâmetros da tarefa

É comum a utilização de parâmetros nas automações para definir valores dinâmicos no momento de criar tarefas.

Como criar parâmetros na automação

Entenda mais sobre parâmetros em:

Nesse contexto, os parâmetros podem ser passados utilizando o label do parâmetro entre chaves, no momento de criar o comando.

Exemplo de comando com o parâmetro name

cmd /c start {path}/DemoCommand.bat {maestro_server} {maestro_taskid} {maestro_token} {name}
  • Parâmetro criado na automação Captura de tela do Orquestrador da BotCity, apresentando a aba Desenvolvimento de uma automação com o parâmetro de nome "name" criado na seção Parâmetros.
  • Parâmetro recebido no comando Captura de tela do Orquestrador da BotCity, apresentando o formulário de Deploy com a tecnologia Comando selecionada. Destaca o campo Comando preenchido com o exemplo de uso do parâmetro "name" entre chaves ao final do comando.

Integrações

Mesmo utilizando a tecnologia Comando, você pode fazer integrações com as funcionalidades do Orquestrador BotCity, como alertas, arquivos de resultado, erros, etc.

Para isso, você pode utilizar a API e integrar com qualquer linguagem utilizada no desenvolvimento.

Finalizar tarefa

A integração mais importante é a finalização de tarefa, onde você pode acompanhar o estado de cada tarefa, e o reporte de dados, informando a quantidade de itens executados com sucesso ou falha em uma execução.

Veja mais detalhes em: