Ir para o conteúdo

FAQ

Como resolver o problema da instalação travada em 0%?

Esse tipo de problema é mais comum em casos onde existem bloqueios no ambiente da empresa onde as ferramentas estão sendo utilizadas. Entre os comportamentos observados, estão:

  • Instalação através do Wizard travada em 0%.
  • Erro ao iniciar o Runner
  • Problema de autenticação ao tentar fazer login no BotCity Studio

A solução ideal nesse caso é solicitar para o time de TI da empresa algumas liberações de acesso. Veja mais detalhes sobre as URLs que precisam de liberação de acesso na seção: Problemas com bloqueios do ambiente.

Como resolver o problema com a instalação das dependências ao rodar a automação (ModuleNotFoundError)?

Esse tipo de problema costuma ocorrer quando a etapa de instalação das dependências não é feita da forma correta. Ao rodar o código, é lançada uma mensagem referente a instalação dos pacotes: ModuleNotFoundError: No module named 'botcity’.

A primeira etapa é garantir que o mesmo interpretador Python está sendo utilizado para instalar as dependências e rodar o código. Algo comum de acontecer é a própria IDE criar um ambiente virtual para o projeto, se esse ambiente virtual for utilizado para instalar as dependências porém na hora de rodar está sendo utilizado o Python "global" do sistema, então muito provavelmente esse erro referente a instalação será lançado.

Após garantir que a configuração dos ambientes está correta, basta usar o mesmo interpretador Python para instalar as dependências: pip install --upgrade -r requirements.txt e rodar o código posteriormente.

Aviso

Se você estiver tendo um problema parecido com alguma outra dependência ao rodar sua automação usando o BotCity Runner, verifique se a dependência foi corretamente definida no arquivo requirements.txt do robô.

Quais são os recursos e limitações de uma conta Community no Maestro?

Uma nova conta que é criada no Maestro tem durante um período de 30 dias acesso total as funcionalidades da plataforma (trial). Após esse período de 30 dias, o acesso à plataforma continua da mesma maneira, a única diferença são algumas limitações e o acesso à alguns recursos específicos.

Após o período de trial, não é possível utilizar mais as funcionalidades de:

  • Credenciais
  • Auditoria
  • Agendamentos
  • BotCity Documents (dentro do Studio)

Além disso, o workspace também terá algumas limitações de outros recursos:

  • Tarefas - máximo de 10 tarefas criadas por dia
  • Automações - máximo de 1 processo de automação na plataforma
  • Runners - máximo de 1 Runner Desktop na plataforma

Veja mais detalhes sobre a diferença entre os planos e os recursos disponíveis acessando este link.

Observação

As limitações de uma conta Community são voltadas para a parte de orquestração no Maestro.

A etapa de desenvolvimento das automações não possui nenhum tipo de limitação com relação ao uso dos frameworks e plugins da BotCity.

Onde posso encontrar conteúdos para aprender mais sobre o uso da BotCity?

Uma ótima alternativa para ter um primeiro contato com a ferramenta é acessar os cursos disponibilizados no BotCity Academy.

Além disso, você também pode acessar os tutoriais disponíveis no portal de documentação:

O que fazer quando o Runner parece ficar travado após puxar uma tarefa para execução?

Em situações esporádicas, pode ser que o Runner pareça ficar travado após puxar uma nova tarefa para execução. Nesse tipo de situação, a execução não é iniciada e o status do Runner fica como Executing task... até que o Runner seja reiniciado.

No geral, o que pode causar esse tipo de problema são os recursos utilizados pela execução anterior, que não foram finalizados da forma adequada. Dessa forma, quando há a tentativa no código de acessar esses recursos novamente, ocorre um conflito por causa do sistema operacional considerar que esses recursos já estão "em uso".

Um exemplo clássico é a utilização do WebDriver em automações Web. Sem a finalização adequada, pode ser que o WebDriver continue em execução mesmo após a finalização do processo, fazendo com que isso afete as execuções seguintes.

Uma possível solução para esse tipo de problema, é incluir tratamentos no código para garantir que todos os recursos que são alocados e utilizados pelo robô, sejam finalizados da forma correta ao final da execução, mesmo em casos onde ocorram exceções.

Seguindo essa boa prática, toda vez que esse processo for executado pelo Runner o ambiente vai estar "limpo", e com isso não haverá problemas na tentativa de utilizar determinados recursos.

Dica

Você também pode sempre consultar o arquivo de log.txt gerado pelo Runner, para verificar eventuais exceções que possam ser lançadas durante a preparação do ambiente e execução do processo.

Como encontrar elementos usando visão computacional em conexões remotas?

Em alguns casos, por motivos de segurança, o cliente não permite que o desenvolvedor acesse o ambiente diretamente, obrigando que a construção da automação seja feita através de uma conexão remota, desta forma, podem surgir algumas dificuldades ao manipular uma aplicação que está em um ambiente remoto.

Através do Framework Desktop BotCity, podemos controlar uma máquina remota via RDP utilizando visão computacional.

Abaixo estão listados alguns pontos importantes para obter sucesso na busca de elementos dentro deste cenário de conexão remota e visão computacional:

  • A conexão RDP deve ser configurada para usar uma resolução constante (não pode ser adaptativa como tela cheia, pois pode variar de caso para caso).
  • A conexão RDP deve ser configurada para usar um parâmetro de experiência fixo e não automaticamente com base na velocidade da conexão.

Dica

Você pode configurar os parâmetros acima clicando em Mostrar opções e depois em Exibir para a resolução, e Experiência para o parâmetro de qualidade da conexão. Feito isso, as capturas de tela serão constantes entre as conexões.

Lembrando que é fundamental recapturar elementos visuais após alterar as configurações de acesso remoto.

Com uma configuração de resolução definida, você conseguirá utilizar tranquilamente o BotCity Studio para fazer as capturas de tela e manipular os elementos de uma aplicação que está rodando em um ambiente remoto.

O que fazer ao receber o erro OSError: screen grab failed ao executar uma automação utilizando o Runner em um ambiente remoto?

O erro OSError: screen grab failed normalmente é lançado ao tentar executar uma automação que faz uso da visão computacional para encontrar elementos em um ambiente onde a conexão remota já foi encerrada. Isso ocorre porque ao encerrar a conexão, o sistema operacional fará com que a tela fique preta, impedindo que os robôs capturem a tela e realizem a procura por elementos gráficos.

Para contornar esse problema, a BotCity oferece dois scripts para conseguir rodar robôs que utilizam a interface gráfica do ambiente sem que seja necessário estar conectado a sessão. Esses scripts desconectam a sessão atual do usuário e a redireciona para uma sessão de terminal, mantendo a sessão e interface gráfica ativas para o BotCity Runner.

Esses scripts estão disponíveis dentro da pasta do BotCity Studio SDK, e podem ser usados nas configurações de execução do Runner. Você pode optar por executá-los ao iniciar o Runner usando o parâmetro startup, ou antes de cada tarefa que será executada pelo Runner, através do parâmetro beforeTask.

Informação

Scripts:

  • Startup: Esse script está disponível na pasta startup e ao defini-lo no arquivo de configuração do Runner, ele terá a função de desconectar a sessão atual e redireciona-la para uma sessão de terminal.

  • Console Session: Esse script está disponível na pasta scripts e ao defini-lo no arquivo de configuração do Runner, ele também terá a função de desconectar a sessão atual e redireciona-la para uma sessão de terminal, tendo a opção de definir uma resolução de tela específica para essa nova sessão.

Veja mais detalhes sobre o uso e implementação desses scripts na seção Mantendo a sua sessão remota ativa.

Como configurar a codificação para evitar problemas na digitação de caracteres em sessões RDP no MacOS?

Em alguns casos, ao utilizar o Microsoft Remote Desktop no MacOS para iniciar uma sessão RDP, é necessário alterar a configuração da codificação para evitar problemas na digitação de caracteres especiais e também caracteres maiúsculos.

Esse problema pode ocorrer, por exemplo, ao tentar utilizar no código da sua automação a função kb_type() do framework Desktop da BotCity para digitar caracteres maiúsculos em um processo que está rodando em uma VM.

Nesse tipo de situação, a codificação configurada por padrão no Microsoft Remote Desktop do MacOS pode fazer com que a digitação dos caracteres não funcione corretamente dentro da VM.

Para configurar a codificação e evitar esse tipo de problema na sessão RDP, basta acessar a aba Connections e marcar a opção Keyboard Mode > Unicode no aplicativo do Microsoft Remote Desktop.

MacOS Remote Desktop