Pular para o conteúdo principal
Módulos

Utils

Utils

O módulo Utils é responsável por realizar ações que são consideradas úteis para o desenvolvimento de certas rotinas dos robôs.

Métodos​

calculateDateDistance​

Método responsável por calcular a distância entre duas datas em uma determinada unidade de tempo.

js
const distance = await Utils.calculateDateDistance["v1_0_0"]({
dateFrom: '2024-01-01',
dateTo: '2024-12-31',
unity: 'days',
})

Parâmetros obrigatórios​

  • dateFrom: String - data de início.
  • dateTo: String - data de fim.
  • unity: String - unidade de tempo do resultado. Valores: years | months | days | hours | minutes | seconds.

Parâmetros opcionais​

  • inputFormat: String - formato das datas de entrada (ex.: YYYY-MM-DD, DD/MM/YYYY). Se não informado, tenta detectar automaticamente.

Retorno​

A constante ou variável criada, como a distance do exemplo mostrado anteriormente, receberá um número representando a distância entre as duas datas na unidade informada.

callRobot​

Método responsável por chamar outro robô a partir do robô em execução.

js
const result = await Utils.callRobot["v1_0_0"]({
callerRobot: 'meu-robo',
robotKey: 'chave-do-robo-chamado',
args: { parametro: 'valor' }
})

Parâmetros obrigatórios​

  • callerRobot: String - identificador do robô que está realizando a chamada.
  • robotKey: String - chave do robô que será chamado.

Parâmetros opcionais​

  • args: Any - argumentos que serão passados para o robô chamado.

Retorno​

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.error: String - mensagem de erro caso a chamada falhe. Se não houver erro, esta propriedade não estará presente.

clipboardWrite​

Método responsável por armazenar temporariamente um valor no clipboard.

js
await Utils.clipboardWrite["v1_0_0"]({
content: "Roberty"
})

Parâmetros obrigatórios​

  • content: String - espera um valor para ser armazenado temporariamente no clipboard.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

Este método não possui retorno.

clipboardRead​

Método responsável por ler o valor armazenado temporariamente no clipboard.

js
const valor = await Utils.clipboardRead["v1_0_0"]()

Parâmetros obrigatórios​

Este método não possui parâmetros obrigatórios.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

A constante ou variável criada, como a valor do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • valor.content: String - contém o valor armazenado no clipboard.

count​

Método responsável por contar o número de elementos de um valor.

js
const total = await Utils.count["v1_0_0"]({
value: [1, 2, 3, 4, 5]
})

Parâmetros obrigatórios​

  • value: Any - valor a ser contado. Aceita strings (contagem de caracteres), arrays (contagem de itens) e números (contagem de dígitos).

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

A constante ou variável criada, como a total do exemplo mostrado anteriormente, receberá um número representando a quantidade de elementos do valor informado.

delay​

Método responsável por pausar o robô por um determinado período de tempo.

js
await Utils.delay["v1_0_0"](5)

Parâmetros obrigatórios​

  • A quantidade em segundos que o robô deverá aguardar.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

Este método não possui retorno.

downloadFilesInBatch​

Método responsável por baixar múltiplos arquivos de URLs para uma pasta local.

js
const result = await Utils.downloadFilesInBatch["v1_0_0"]({
targetFolder: 'C:/Users/Roberty/Downloads',
files: [
{ url: 'https://exemplo.com/arquivo1.pdf', nameToSave: 'documento1.pdf' },
{ url: 'https://exemplo.com/arquivo2.pdf', nameToSave: 'documento2.pdf' },
],
})

Parâmetros obrigatórios​

  • targetFolder: String - caminho da pasta onde os arquivos serão salvos.
  • files: Object[] - lista de arquivos a serem baixados. Cada objeto deve conter:
    • url: String - URL do arquivo a ser baixado.
    • nameToSave: String - nome com o qual o arquivo será salvo.

Parâmetros opcionais​

  • createTargetFolderIfNot: Boolean - se true, cria a pasta de destino caso ela não exista. Valor padrão: false.

Retorno​

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com as seguintes propriedades:

  • result.allFilesDownloaded: Boolean - indica se todos os arquivos foram baixados com sucesso.
  • result.filesWithSuccess: String[] - lista de nomes dos arquivos baixados com sucesso.
  • result.filesWithError: String[] - lista de nomes dos arquivos que falharam.
  • result.errorsByFile: Object - objeto com os erros de cada arquivo que falhou, indexado pelo nome do arquivo.

execCommand​

Método responsável por executar um comando no terminal do sistema operacional.

js
await Utils.execCommand["v1_0_0"]({
command: 'notepad.exe C:/Users/Roberty/Desktop/arquivo.txt',
})

Parâmetros obrigatórios​

  • command: String - comando a ser executado no terminal.

Parâmetros opcionais​

  • waitCommandFinish: Boolean - se true, aguarda o comando finalizar antes de continuar a execução do robô. Valor padrão: false.

Retorno​

Este método não possui retorno.

focusProcess​

Método responsável por focar a tela de um processo aberto no computador do usuário.

js
await Utils.focusProcess["v1_0_0"]({
processName: "chrome"
})

Parâmetros obrigatórios​

  • processName: String - espera o nome exato do processo que será focado.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

Este método não possui retorno.

getDeviceToken​

Método responsável por obter o token do dispositivo em que o robô está sendo executado.

js
const token = await Utils.getDeviceToken["v1_0_0"]()

Parâmetros obrigatórios​

Este método não possui parâmetros obrigatórios.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

A constante ou variável criada, como o token do exemplo mostrado anteriormente, receberá uma string com o token do dispositivo.

getInstanceByRobotKey​

Método responsável por obter a instância de execução de um robô a partir de sua chave.

js
const instance = await Utils.getInstanceByRobotKey["v1_0_0"]({
robotKey: 'chave-do-robo',
})

Parâmetros obrigatórios​

  • robotKey: String - chave do robô cuja instância será obtida.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

A constante ou variável criada, como a instance do exemplo mostrado anteriormente, receberá uma string com o identificador da instância do robô.

killProcess​

Método responsável por encerrar um processo aberto no computador do usuário.

js
await Utils.killProcess["v1_0_0"]({
processName: "chrome"
})

Parâmetros obrigatórios​

  • processName: String - espera o nome exato do processo que será encerrado. Este parâmetro não será obrigatório se o processId for informado.
  • processId: Number - espera o id do processo que será encerrado. Este parâmetro não será obrigatório se o processName for informado.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

Este método não possui retorno.

maximizeProcess​

Método responsável por maximizar a tela de um processo aberto no computador do usuário.

js
await Utils.maximizeProcess["v1_0_0"]({
processName: "chrome"
})

Parâmetros obrigatórios​

  • processName: String - espera o nome exato do processo que será maximizado.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

Este método não possui retorno.

minimizeProcess​

Método responsável por minimizar a tela de um processo aberto no computador do usuário.

js
await Utils.minimizeProcess["v1_0_0"]({
processName: "chrome"
})

Parâmetros obrigatórios​

  • processName: String - espera o nome exato do processo que será minimizado.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

Este método não possui retorno.

runPythonCode​

Método responsável por executar um trecho de código Python e retornar sua saída.

js
const output = await Utils.runPythonCode["v1_0_0"]({
code: 'print("Hello from Python!")'
})

Parâmetros obrigatórios​

  • code: String - código Python a ser executado.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

A constante ou variável criada, como o output do exemplo mostrado anteriormente, receberá uma string com o conteúdo impresso no stdout pela execução do código Python.

screenshot​

Método responsável por capturar uma imagem da tela inteira e salvá-la em um arquivo.

js
await Utils.screenshot["v1_0_0"]({
fullPath: `C:\\Users\\Roberty\\Downloads\\imagem.png`
})

Parâmetros obrigatórios​

  • fullPath: String - espera o caminho completo onde a imagem capturada será salva, incluindo o nome do arquivo e sua extensão (ex.: .png).

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

Este método não possui retorno.

screenshotRegion​

Método responsável por capturar uma imagem de uma região específica da tela e salvá-la em um arquivo.

js
await Utils.screenshotRegion["v1_0_0"]({
byPositionProtocol: {
x: 0,
y: 0,
width: 800,
height: 600,
fullPath: 'C:/Users/Roberty/Downloads/regiao.png'
}
})

Parâmetros obrigatórios​

  • byPositionProtocol: Object - objeto com as coordenadas e configurações da região a ser capturada:
    • x: Number - coordenada x do canto superior esquerdo da região.
    • y: Number - coordenada y do canto superior esquerdo da região.
    • width: Number - largura da região em pixels.
    • height: Number - altura da região em pixels.
    • fullPath: String - caminho completo onde a imagem capturada será salva.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

Este método não possui retorno.

sendWebhookResponse (Profissional)​

Método responsável por responder um valor para o webhook do seu robô.

js
await Utils.sendWebhookResponse["v1_0_0"]({
webhookCallId: "webhookCallId"
})

Parâmetros obrigatórios​

Este método não possui parâmetros obrigatórios.

Parâmetros opcionais​

  • args: Any - recebe um valor para ser respondido ao webhook.
  • webhookCallId: String - recebe o webhookCallId do robô.

Retorno​

Este método não possui retorno.

startProcess​

Método responsável por iniciar um processo no computador do usuário.

js
const process = await Utils.startProcess["v1_0_0"]({
fileName: "chrome",
arguments: "https://www.google.com"
})

Parâmetros obrigatórios​

  • fileName: String - espera o nome exato do processo que será iniciado ou, caso necessário, o caminho completo do executável desejado.

Parâmetros opcionais​

  • arguments: String - espera uma string com os argumentos para inicialização do processo.

Retorno​

A constante ou variável criada, como a process do exemplo mostrado anteriormente, receberá um objeto com as seguintes propriedades:

  • process.id: Number - retorna o id do processo iniciado.
  • process.processName: String - retorna o nome do processo iniciado.

waitHumanAction​

Método responsável por pausar a execução do robô aguardando uma ação humana. O robô aguarda até que o usuário confirme a continuação ou até que o tempo limite seja atingido.

js
const result = await Utils.waitHumanAction["v1_0_0"]({
timeout: 300000
})

Parâmetros obrigatórios​

  • timeout: Number - tempo máximo em milissegundos que o robô aguardará pela ação humana.

Parâmetros opcionais​

Este método não possui parâmetros opcionais.

Retorno​

A constante ou variável criada, como o result do exemplo mostrado anteriormente, receberá um objeto com a seguinte propriedade:

  • result.result: String - indica o resultado da espera. Valores: CONTINUE (usuário confirmou) | TIMEOUT (tempo limite atingido).