Despliegue de Rocketbot en Azure

En esta guía, te explicaremos los pasos para crear una máquina virtual (VM) en Microsoft Azure y montar Rocketbot Studio para ejecutar robots.
Arquitectura recomendada.

Crear y administrar VM de Windows Server
Creación de una máquina virtual de Windows en Azure Portal
Las máquinas virtuales de Azure pueden crearse mediante Azure Portal. Este método proporciona una interfaz de usuario basada en explorador para crear máquinas virtuales y sus recursos asociados. En esta guía de inicio rápido se muestra cómo usar Azure Portal para implementar una máquina virtual (VM) en Azure que ejecuta Windows Server 2022 Datacenter. Para ver la máquina virtual en acción, conéctese a la máquina virtual mediante RDP e instale al servidor web IIS.
Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
Inicio de sesión en Azure
Inicie sesión en Azure Portal.
Crear máquina virtual
- Escriba máquinas virtuales en el cuadro de búsqueda.
- En Servicios, seleccione Máquinas virtuales.
- En la página Máquinas virtuales, selecciona Crear y, luego, Máquina virtual de Azure. Se abrirá la página Creación de una máquina virtual.
- En Detalles de instancia, escriba myVM en Nombre de máquina virtual y elija Windows Server 2022 Datacenter: Azure Edition – x64 Gen2 para la Imagen. Deje los demás valores predeterminados. Nota:Algunos usuarios ahora verán la opción de crear máquinas virtuales en varias zonas. Para más información sobre esta nueva funcionalidad, consulte Creación de máquinas virtuales en una zona de disponibilidad.

- En Cuenta de administrador, proporcione un nombre de usuario, como azureuser, y una contraseña. La contraseña debe tener al menos 12 caracteres de largo y cumplir con los requisitos de complejidad definidos.

- En Reglas de puerto de entrada, elija Permitir los puertos seleccionados y luego seleccione RDP (3389) y HTTP (80) en la lista desplegable.

- Deje los valores predeterminados restantes y luego seleccione el botón Revisar + crear en la parte inferior de la página.

- Después de que se ejecute la validación, seleccione el botón Crear en la parte inferior de la página.
- Una vez finalizada la implementación, seleccione Ir al recurso.

Conexión a la máquina virtual
Cree una conexión a Escritorio remoto en la máquina virtual. Estas instrucciones indican cómo conectarse a la máquina virtual desde un equipo Windows. En un equipo Mac, necesita un cliente RDP como este Cliente de Escritorio remoto de Mac App Store.
- En la página de información general de la máquina virtual, seleccione Conectar>RDP.

- En la pestaña Conectar con RDP, mantén las opciones predeterminadas para conectarte por la dirección IP, a través del puerto 3389, y haga clic en Descargar archivo RDP.
- Abra el archivo RDP que descargó y haga clic en Conectar cuando se le solicite.
- En la ventana Seguridad de Windows, seleccione Más opciones y, después, Usar otra cuenta. Escribe el nombre de usuario como localhost\username, la contraseña que creó para la máquina virtual y, luego, haz clic en Aceptar.
- Puedes recibir una advertencia de certificado durante el proceso de inicio de sesión. Haga clic en Sí o en Continuar para crear la conexión.
Fuente: https://learn.microsoft.com/es-es/azure/virtual-machines/windows/quick-create-portal
Instalar Rocketbot en Windows
- Para instalar Rocketbot dirijase a https://rocketbot.com/es/rocketbot-studio-rpa/
- Elija descargar y seleccione la version de Rocketbot para Windows.
- Descargue y descomprima el ZIP en un carpeta dentro de la maquina donde ejecutará Rocketbot. por ejemplo:
C:\\rocketbot
- Ingrese a la carpeta de Rocketbot y ejecute la aplicacion rocketbot.exe

- Se abrira el navegador por defecto en el puerto 5000 (configurable) y le pedirá una licencia.

- Copie el Token y complete los datos en la pagina de licencias

- Recibirá en su correo la licencia. Pegue el código en Rocketbot Studio y comience a programar robots.
Consideraciones y TIPs
Rocketbot Studio/Runner requiere una sesion activa y desktop activo.
Mantener interfaz al desconectarse del servidor
Para evitar estos problemas, los servidores windows cuentan con un comando llamado tscon.exe que permite tomar la sesión que tienes abierta en el servidor y moverla a la consola, de esta manera tu robot tendrá una interfaz donde trabajar luego de desconectarte del servidor.
En las pestañas Desconectarme y ejecutar una tarea o Desconectarme y ejecutar ROC de la aplicación RDP-Rocketbot puedes crear un archivo bat con el comando tscon. Este archivo debes ejecutarlo como administrador cada vez que quieras desconectarte del servidor (o ejecutar tu robot, según la opción elegida) y te desconectará del servidor y mantendrá la interfaz gráfica.
Cuidado! Al no abrir el escritorio remoto desde una pantalla física, la resolución puede cambiar y ser menor. Revisa la sección tres para ver como trabajar con esto.
El bat puedes editarlo y revisar que es lo que contiene, pero resumimos lo importante acá. El bat tiene un script de powershell que obtiene el id de la sesión que estas usando al entrar al rdp y la utiliza en el comando tscon para que este la abra en la sesión de la consola.
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "$sessionid=((quser $env:USERNAME | select -Skip 1) -split '\\s+')[2]; tscon $sessionid /dest:console" 2> UnlockErrors.log
Si necesitas que el bat ejecute tu robot al desconectarte, verás algo así
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "$sessionid=((quser $env:USERNAME | select -Skip 1) -split '\\s+')[2]; tscon $sessionid /dest:console" 2> UnlockErrors.log
timeout 10
cd c:\\rocketbot
rocketbot.exe -start=nombre_robot
Mantener la interfaz al minimizar el escritorio remoto
Para poder minimizar el escritorio remoto y no afectar el funcionamiento del robot, debes modificar algunos registros en la máquina que abre el rdp, estos registros son:
- Para el usuario actual:
HKEY_CURRENT_USER\\Software\\Microsoft\\Terminal Server Client(32 bit)HKEY_CURRENT_USER\\Software\\Wow6432Node\\Microsoft\\Terminal Server Client(64 bit)
- Para todos los usuarios:
HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Terminal Server Client(32 bit)HKEY_LOCAL_MACHINE\\Software\\Wow6432Node\\Microsoft\\Terminal Server Client(64 bit)
En la pestaña Conectarme a Escritorio Remoto de la aplicación RDP-Rocketbot, puedes cambiar los registros con un solo botón. Solo recuerda ejecutar la aplicación como administrador.
Cambio de resolución al desconectarte del servidor
Si ya solucionaste los problemas anteriores, pero tu robot falla y/o aún no reconoce las imagenes, es probable que tengas un problema con la resolución. Ya mencionamos en la primera parte de este post que al desconectarte el servidor pierde la interfaz gráfica y es necesario utilizar tscon. Esto permite que el robot pueda sacar capturas, pero como el servidor ya no cuenta con tu pantalla para ajustar una resolución, toma sus propias resoluciones por defecto, que en la mayoría de los casos es de 1024×768.
Si tu robot trabaja con virtualización, este cambio de resolución puede afectarlo, por lo cual es importante que, antes de comenzar a desarrollar tu robot, revises las resoluciones que permite tu servidor al desconectarte.
En la pestaña Ver las resoluciones de pantalla de la aplicación RDP-Rocektbot, puedes ver las resoluciones que permite el servidor en la tabla Resolucoones de pantalla desde la consola de TSCON.
Esas resoluciones son las resoluciones que puedes utilizar, pero no quiere decir que puedes comenzar a construir el robot. Debes revisar la resolución que tiene el servidor al desconectarte y si es posible cambia a la resolución que necesitas. Para cambiar la resolución de pantalla, puedes utilizar el módulo Windows y también puedes utilizar el comando Sacar captura de pantalla de la sección Desktop para válidar si la resolución es la correcta o no.
Ésto lo puedes realizar con RDP-Helper, acá encontrarás los pasos necesarios 👉 Pasos Resolución
Si al salir de un escritorio remoto no es posible modificar la resolución de forma manual y/o usando el módulo de Rocketbot, puedes modificar realizar la siguiente modificación:
Buscar en el regedit todos los registros que se llamen DefaultSettings_XResolution y DefaultSettings_YResolution y cambiar la resolución a la que necesitas
Prevenir el bloqueo de pantalla
Para evitar que el servidor bloquee la pantalla debes, en primer lugar, consultar con el equipo de TI si es posible modificar las configuraciones necesarias para que esto no ocurra, ya que dependiendo de las politicas de seguridad de la empresa, podría no ser posible modificar esta configuración.
En la sección Configuraciones de la aplicación RDP-Rocketbot, puedes modificar los registros necesarios para deshabilitar el bloqueo de pantalla. El registro que se modificará es HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows
Cambiando Policies Link
For Windows 7/Windows 10/Windows Server 2012 and above:
- Press + and type gpedit.msc
Windows+R - Navigate the tree view on the left to Computer Configuration/Administrative Templates/Windows Components/Remote Desktop Services/Remote Desktop Session Host/Session Time Limits
- Adjust the four settings as desired (I believe you want to adjust Set time limit for disconnected sessions and Terminate session when time limits are reached)
Habilitar Pantallas Virtuales
En algunos casos, la VM solo permitía una resolución muy baja por defecto. Siguiendo la documentación indicada y asegurándonos de apagar la VM antes de activar la casilla de configuración, logramos establecer una resolución adecuada para el proceso requerido.
Conectar con Orquestador
Para conectar con el Orquestador de Rocketbot debe contar con una cuenta habilitada de Rocketbot Orchestrator Center. En la VM de AWS tiene que tener habilitado el acceso a las web *.myrb.io y *.rocketbot.com esto permitirá al cliente de orquestador NOC conectarse con las url de api de orquestador.
Permisos de red y dominios
Para la conexión con Orquestador debe estar habilitado el acceso a:
- *.myrb.io
- Puerto: 443 (HTTPS)
El puerto 443 debe estar libre y permitido para conexiones salientes sin inspección profunda (SSL inspection).
Conectividad y rendimiento
Para evitar timeouts y desconexiones durante ejecuciones o conexiones con Orquestador, se requieren:
- Tiempo de respuesta máximo recomendado (timeout): ≤ 30 segundos
- Ancho de banda mínimo recomendado: 200–250 Mbps
Habilitar URL
- https://storage.googleapis.com/* (URL de descarga de los drivers del navegador, en caso de que automatices Chrome)
- https://chromedriver.storage.googleapis.com/* (URL para mantener sincronizado el webdriver con la versión de Google Chrome)
- https://googlechromelabs.github.io/* (URL de revisión y obtención de la versión de los drivers de Chrome)
- https://market-api.rocketbot.co/* (URL de descarga y actualización de módulos de Rocketbot)
- http://raw.githubusercontent.com/* (URL de consulta para actualizaciones de Rocketbot Studio)
INSTALACIÓN Y CONFIGURACIÓN CLIENTE ORQUESTADOR
Para conectar una instacia siga la siguiente GUIA: https://docs.rocketbot.com/2024/08/23/orquestador-rocketbot-instancias/#Conectar_instancia_al_cliente


























