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.
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.
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.
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.
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.
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.
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.
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 estrue, 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.
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 estrue, 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.
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.
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.
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.
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 indicaprocessId.processId: Number - espera el id del proceso que será finalizado. Este parámetro no será obligatorio si se indicaprocessName.
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.
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.
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.
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.
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.
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.
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.
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.
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).