Setup
Nesta seção você encontra como fazer a configuração do BotCity Maestro SDK e como estabelecer uma conexão com a plataforma Orquestrador BotCity via código.
Instalação¶
BotCity Maestro SDK está disponível como um pacote Python no PyPI.
Você pode instalá-lo com:
BotCity Maestro SDK está disponível como uma dependência Java no repositório Nexus.
A dependência será instalada automaticamente após ser adicionada ao seu pom.xml:
<repositories>
<repository>
<id>nexus-botcity-public</id>
<url>https://devtools.botcity.dev:8081/repository/botcity-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<dependencies>
<!-- Your other dependencies -->
<dependency>
<groupId>dev.botcity</groupId>
<artifactId>maestro-sdk</artifactId>
<version>2.0.3</version>
</dependency>
</dependencies>
BotCity Maestro SDK está disponível como pacote Javascript no NPM.
Você pode instalá-lo com:
BotCity Maestro SDK está disponível como pacote Javascript no NPM.
Você pode instalá-lo com:
Importar o SDK¶
Você pode importar o SDK para o seu código com:
Você pode importar o SDK para o seu código com:
Você pode importar o SDK para o seu código com:
Criar um novo cliente Maestro¶
O BotMaestroSDK é a classe principal a ser usada ao interagir com as funcionalidades do Orquestrador BotCity.
Você pode criar um novo cliente Maestro com:
Estabelecer uma conexão com o Orquestrador¶
Existem basicamente duas formas de estabelecermos conexão com o Orquestrador BotCity via código.
- Autenticação em execução local
- Autenticação via Runner
Execução local¶
Durante a fase de desenvolvimento, você pode fazer conexão com o Orquestrador BotCity para testar os recursos.
Para fazer a autenticação em código, você precisa das informações do seu workspace:
- Server:
- Comunidade:
https://developers.botcity.dev - Dedicado:
https://sua-empresa.botcity.dev
- Comunidade:
- Login: Código de autenticação
- Key: Chave de autenticação
Autenticação
Encontre as credenciais para autenticação diretamente no seu workspace do Orquestrador BotCity, na seção de Configuração no menu lateral.
Veja mais em:
Atenção!
Esse método deve ser utilizado em contextos de teste local, não é recomendado que o código seja implantado com esse tipo de autenticação.
Execução via Runner¶
Na fase de robô concluido e pronto para implantação, a autenticação deve ser feita dinamicamente via argumentos passados pelo Runner que executará as tarefas.
Tutorial
Você pode utilizar os templates de projeto da BotCity com trechos de código base já prontos para a primeira execução.
Veja mais em:
Obter a referência da execução atual¶
Durante o momento de execução de uma tarefa, você pode retornar informações importantes de uma execução como ID da tarefa ou parâmetros dessa tarefa em execução.
public void action(BotExecution botExecution) {
try {
// Instancia do Maestro SDK
// O objeto BotExecution contém as informações que são passadas pelo Runner
BotMaestroSDK maestro = new BotMaestroSDK();
maestro.login(botExecution);
// Informações da tarefa que está sendo executada
System.out.println(botExecution.getTaskId());
...
// Obtendo parâmetros passados pelo Runner
const args = process.argv.slice(2)
const [server, taskid, token] = args
// Instanciando o Maestro SDK
const maestro = new BotMaestroSdk()
maestro.login(<SERVER>, "<LOGIN>", "<CHAVE>")
// Buscando os detalhes da tarefa atual sendo executada
const executionTask = await maestro.getTask(taskid)
// Obtendo parâmetros passados pelo Runner
const args = process.argv.slice(2)
const [server, taskid, token] = args
// Instanciando o Maestro SDK
const maestro: BotMaestroSdk = new BotMaestroSdk()
maestro.login("<SERVER>", "<LOGIN>", "<CHAVE>")
// Buscando os detalhes da tarefa atual sendo executada
const executionTask: Task = await maestro.getTask(taskid)
using Dev.BotCity.MaestroSdk.Model.Execution;
// Instância do Maestro SDK
BotMaestroSDK maestro = BotMaestroSDK.FromSysArgs();
// Busca os detalhes da tarefa atual sendo executada
Execution execution = await maestro.GetExecutionAsync(maestro.GetTaskId());
// Informações da tarefa que está sendo executada
Console.WriteLine("Task ID is: " + execution.TaskId);
Console.WriteLine("Task Parameters are: " + string.Join(", ", execution.Parameters));
Pronto¶
Com o setup pronto, você pode fazer a troca de informações de maneira segura entre a execução pelo Runner e o Orquestrador BotCity.
Todas informações geradas no processo de execução de uma tarefa podem ser armazenadas no Orquestrador BotCity, mas para isso você precisa usar os métodos explicitamente em código.
Orquestrador BotCity
O Orquestrador BotCity não acessa nem assume qualquer valor gerado na execução da tarefa. São registrados automaticamente apenas informações básicas de marcador de tempo de fila, tempo de execução e nome de Runner que executou a tarefa.