Ir al contenido

Migración desde Automation Anywhere

Si llegas desde Automation Anywhere (A360 / Control Room), encontrarás equivalencias claras en NORA. La diferencia central es que los robots de NORA son Python nativo: no hay TaskBots ni MetaBots construidos en un editor visual. Reescribes la automatización en Python, la empaquetas y NORA la ejecuta, programa y controla en tus máquinas Windows y macOS.

Esta guía traduce la terminología y propone un plan de migración. Si la nomenclatura de NORA te resulta nueva, empieza por el glosario.

Automation AnywhereNORANotas
Control RoomRobots CenterEl centro que orquesta y controla todos tus robots desde la plataforma.
Bot / TaskBotPaqueteTu código Python empaquetado. Cada subida genera una versión (Release).
Process / Process DiscoveryProcesoUnidad ejecutable que apunta a un Release de un Paquete.
Queue (WLM)ColaTrabajo pendiente con ítems (items) que los robots consumen.
Credential / LockerAsset / CredencialValores y secretos cifrados, separados por entorno (environment).
Bot Runner / Bot AgentAgente + MáquinaEl Agente es el proceso instalado; la Máquina es el host registrado donde corre.
Schedule / TriggerProgramación / TriggerEjecución por calendario (cron) o por evento/webhook.
Activity / DeploymentJobUna ejecución concreta de un Proceso en una Máquina.
FolderCarpeta (folder)Agrupa procesos para organización y permisos.
  • Python nativo, sin editor de bots. En Automation Anywhere construyes TaskBots con acciones arrastrables. En NORA escribes Python normal con las librerías que prefieras (playwright, selenium, pyautogui, requests, pandas, etc.) y registras eventos con el SDK de NORA en lugar de la acción Log To File.
  • Ejecución en tus máquinas. El Agente de NORA se instala en tus equipos Windows y macOS y ejecuta los robots ahí. NORA orquesta; el cómputo corre en tu infraestructura.
  • Integración por API pública. Donde A360 usa la API del Control Room, NORA ofrece una API pública con cabecera X-API-Key (claves con prefijo nora_ak_) y scopes por recurso (jobs:write, queues:write, etc.). La feature de API keys está disponible en los planes Pro y Enterprise.
  • Asignación de Bot Runner simplificada. Al disparar un Job por API puedes omitir machine_id: NORA elige automáticamente una máquina activa y en línea del tenant, en lugar de gestionar device pools.
flowchart TD
    A[Reimplementar la logica en Python] --> B[Empaquetar el bot]
    B --> C[Subir el Paquete a NORA]
    C --> D[Crear un Proceso sobre el Release]
    D --> E[Configurar Colas y Credenciales]
    E --> F[Programar con Programacion o Trigger]
    F --> G[Ejecutar y monitorear Jobs]
  1. Reimplementa la lógica en Python. Traduce cada acción del TaskBot a código. Las credenciales del Locker pasan a ser Assets/Credenciales de NORA (leídos por API o SDK); las acciones de log se sustituyen por el logging del SDK (niveles info / warning / error). Revisa procesos y paquetes para la estructura esperada.
  2. Empaqueta el bot. Reúne código y dependencias en un Paquete. Al subirlo, NORA crea un Release versionado.
  3. Sube el Paquete a NORA desde la plataforma.
  4. Crea un Proceso que apunte al Release. Aquí defines timeout_seconds, reintentos (max_retries, auto_retry), input_schema y los required_assets.
  5. Configura Colas y Credenciales equivalentes a tus Queues (WLM) y Lockers, separando por entorno.
  6. Programa la ejecución con una Programación (cron) o un Trigger (evento/webhook), o dispara bajo demanda por API.

Alimentar una Cola por API (equivalente a cargar work items)

Sección titulada «Alimentar una Cola por API (equivalente a cargar work items)»
Ventana de terminal
curl -X POST "https://nora-api.valisoftconsulting.com/api/v1/queues/by-name/facturas/items" \
-H "X-API-Key: nora_ak_..." \
-H "Content-Type: application/json" \
-d '{
"data": {"numero": "F-001", "monto": 1250.50},
"priority": 3,
"reference": "F-001"
}'

Respuesta (envuelta en data):

{
"success": true,
"data": {
"id": "7c6d5e4f-...",
"queue_id": "2b3c4d5e-...",
"status": "new",
"priority": 3,
"reference": "F-001",
"data": {"numero": "F-001", "monto": 1250.50},
"created_at": "2026-06-19T12:00:00Z"
}
}