Ir para o conteúdo

Lab 3.2: Integração com Orquestrador

Com o script pronto e testado localmente, podemos incluir a integração dele com o Orquestrador BotCity através do BotCity Maestro SDK.

Para isso, faremos algumas adaptações no código para que ele possa se comunicar e ser executado pelo Orquestrador BotCity.

Setup

Para a integração, começaremos com o setup, adicionando as dependências do BotCity Maestro SDK e fazendo a autenticação com o Orquestrador BotCity no script.

  • Dependencias: No arquivo requirements.txt adicione o pacote do BotCity Maestro SDK.

    # Configuração para usar esta versão específica do pacote
    selenium==4.10.0
    # Incluindo a dependência BotCity Maestro SDK para orquestrar
    botcity-maestro-sdk
    
  • Código da automação: No arquivo bot.py adicione as linhas destacadas.

    from time import sleep
    
    from botcity.maestro import *
    from selenium import webdriver
    from selenium.webdriver.common.by import By
    
    BotMaestroSDK.RAISE_NOT_CONNECTED = False
    
    
    def main():
        # Instância do Orquestrador
        maestro = BotMaestroSDK.from_sys_args()
        execution = maestro.get_execution()
    
        try:
            ...
    

O que cada linha adicionada faz:

  • from botcity.maestro import *: Importa as funcionalidades do BotCity Maestro SDK para o script.
  • BotMaestroSDK.RAISE_NOT_CONNECTED = False: Configura o SDK para não levantar uma exceção caso o bot não esteja conectado ao Orquestrador (para execuções locais).
  • maestro = BotMaestroSDK.from_sys_args(): Cria uma instância do SDK utilizando os argumentos do sistema, permitindo a comunicação com o Orquestrador quando executado pelo Runner.
  • execution = maestro.get_execution(): Obtém o contexto da tarefa em execução atual do bot no Orquestrador.

Nos próximos passos, utilizaremos o objeto maestro para integrar com as funcionalidades do Orquestrador BotCity.