Saltar al contenido principal
Módulos

Utils

Utils

El módulo Utils es responsable de realizar acciones que se consideran útiles para el desarrollo de ciertas rutinas de los robots.

Métodos

calculateDateDistance

Método responsable de calcular la distancia entre dos fechas en una determinada unidad de tiempo.

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

Parámetros obligatorios

  • dateFrom: String - fecha de inicio.
  • dateTo: String - fecha de fin.
  • unity: String - unidad de tiempo del resultado. Valores: years | months | days | hours | minutes | seconds.

Parámetros opcionales

  • inputFormat: String - formato de las fechas de entrada (ej.: YYYY-MM-DD, DD/MM/YYYY). Si no se indica, intenta detectarlo automáticamente.

Retorno

La constante o variable creada, como la distance del ejemplo mostrado anteriormente, recibirá un número que representa la distancia entre las dos fechas en la unidad indicada.

callRobot

Método responsable de llamar a otro robot desde el robot en ejecución.

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

Parámetros obligatorios

  • callerRobot: String - identificador del robot que está realizando la llamada.
  • robotKey: String - clave del robot que será llamado.

Parámetros opcionales

  • args: Any - argumentos que serán pasados al robot llamado.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.error: String - mensaje de error en caso de que la llamada falle. Si no hay error, esta propiedad no estará presente.

clipboardWrite

Método responsable de almacenar temporalmente un valor en el clipboard.

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

Parámetros obligatorios

  • content: String - espera un valor para ser almacenado temporalmente en el portapapeles.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

clipboardRead

Método responsable de leer el valor almacenado temporalmente en el clipboard.

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

Parámetros obligatorios

Este método no tiene parámetros obligatorios.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la valor del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • valor.content: String - contiene el valor almacenado en el portapapeles.

count

Método responsable de contar el número de elementos de un valor.

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

Parámetros obligatorios

  • value: Any - valor que será contado. Acepta strings (conteo de caracteres), arrays (conteo de elementos) y números (conteo de dígitos).

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la total del ejemplo mostrado anteriormente, recibirá un número que representa la cantidad de elementos del valor indicado.

delay

Método responsable de pausar el robot por un determinado período de tiempo.

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

Parámetros obligatorios

  • La cantidad en segundos que el robot deberá esperar.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

downloadFilesInBatch

Método responsable de descargar varios archivos desde URL a una carpeta 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 obligatorios

  • targetFolder: String - ruta de la carpeta donde serán guardados los archivos.
  • files: Object[] - lista de archivos que serán descargados. Cada objeto debe contener:
    • url: String - URL del archivo que será descargado.
    • nameToSave: String - nombre con el que será guardado el archivo.

Parámetros opcionales

  • createTargetFolderIfNot: Boolean - si es true, crea la carpeta de destino en caso de que no exista. Valor predeterminado: false.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con las siguientes propiedades:

  • result.allFilesDownloaded: Boolean - indica si todos los archivos fueron descargados con éxito.
  • result.filesWithSuccess: String[] - lista de nombres de los archivos descargados con éxito.
  • result.filesWithError: String[] - lista de nombres de los archivos que fallaron.
  • result.errorsByFile: Object - objeto con los errores de cada archivo que falló, indexado por el nombre del archivo.

execCommand

Método responsable de ejecutar un comando en la terminal del sistema operativo.

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

Parámetros obligatorios

  • command: String - comando que será ejecutado en la terminal.

Parámetros opcionales

  • waitCommandFinish: Boolean - si es true, espera que el comando finalice antes de continuar la ejecución del robot. Valor predeterminado: false.

Retorno

Este método no tiene retorno.

focusProcess

Método responsable de enfocar la pantalla de un proceso abierto en la computadora del usuario.

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

Parámetros obligatorios

  • processName: String - espera el nombre exacto del proceso que será enfocado.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

getDeviceToken

Método responsable de obtener el token del dispositivo en el que el robot se está ejecutando.

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

Parámetros obligatorios

Este método no tiene parámetros obligatorios.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la token del ejemplo mostrado anteriormente, recibirá un string con el token del dispositivo.

getInstanceByRobotKey

Método responsable de obtener la instancia de ejecución de un robot a partir de su clave.

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

Parámetros obligatorios

  • robotKey: String - clave del robot cuya instancia será obtenida.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la instance del ejemplo mostrado anteriormente, recibirá un string con el identificador de la instancia del robot.

killProcess

Método responsable de finalizar un proceso abierto en la computadora del usuario.

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

Parámetros obligatorios

  • processName: String - espera el nombre exacto del proceso que será finalizado. Este parámetro no será obligatorio si se indica processId.
  • processId: Number - espera el id del proceso que será finalizado. Este parámetro no será obligatorio si se indica processName.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

maximizeProcess

Método responsable de maximizar la pantalla de un proceso abierto en la computadora del usuario.

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

Parámetros obligatorios

  • processName: String - espera el nombre exacto del proceso que será maximizado.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

minimizeProcess

Método responsable de minimizar la pantalla de un proceso abierto en la computadora del usuario.

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

Parámetros obligatorios

  • processName: String - espera el nombre exacto del proceso que será minimizado.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

runPythonCode

Método responsable de ejecutar un fragmento de código Python y devolver su salida.

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

Parámetros obligatorios

  • code: String - código Python que será ejecutado.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la output del ejemplo mostrado anteriormente, recibirá un string con el contenido impreso en stdout por la ejecución del código Python.

screenshot

Método responsable de capturar una imagen de la pantalla entera y guardarla en un archivo.

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

Parámetros obligatorios

  • fullPath: String - espera la ruta completa donde será guardada la imagen capturada, incluyendo el nombre del archivo y su extensión (ej.: .png).

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

screenshotRegion

Método responsable de capturar una imagen de una región específica de la pantalla y guardarla en un archivo.

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 obligatorios

  • byPositionProtocol: Object - objeto con las coordenadas y configuraciones de la región que será capturada:
    • x: Number - coordenada x de la esquina superior izquierda de la región.
    • y: Number - coordenada y de la esquina superior izquierda de la región.
    • width: Number - ancho de la región en píxeles.
    • height: Number - altura de la región en píxeles.
    • fullPath: String - ruta completa donde será guardada la imagen capturada.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

Este método no tiene retorno.

sendWebhookResponse (Profissional)

Método responsable de responder un valor al webhook de tu robot.

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

Parámetros obligatorios

Este método no tiene parámetros obligatorios.

Parámetros opcionales

  • args: Any - recibe un valor para ser respondido al webhook.
  • webhookCallId: String - recibe el webhookCallId del robot.

Retorno

Este método no tiene retorno.

startProcess

Método responsable de iniciar un proceso en la computadora del usuario.

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

Parámetros obligatorios

  • fileName: String - espera el nombre exacto del proceso que será iniciado o, en caso necesario, la ruta completa del ejecutable deseado.

Parámetros opcionales

  • arguments: String - espera un string con los argumentos para la inicialización del proceso.

Retorno

La constante o variable creada, como la process del ejemplo mostrado anteriormente, recibirá un objeto con las siguientes propiedades:

  • process.id: Number - devuelve el id del proceso iniciado.
  • process.processName: String - devuelve el nombre del proceso iniciado.

waitHumanAction

Método responsable de pausar la ejecución del robot esperando una acción humana. El robot espera hasta que el usuario confirme la continuación o hasta que se alcance el tiempo límite.

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

Parámetros obligatorios

  • timeout: Number - tiempo máximo en milisegundos que el robot esperará por la acción humana.

Parámetros opcionales

Este método no tiene parámetros opcionales.

Retorno

La constante o variable creada, como la result del ejemplo mostrado anteriormente, recibirá un objeto con la siguiente propiedad:

  • result.result: String - indica el resultado de la espera. Valores: CONTINUE (el usuario confirmó) | TIMEOUT (se alcanzó el tiempo límite).