Resources
This content applies solely to Appian RPA, which must be purchased separately from the Appian base platform.

What is a resource?

A digital worker needs a workspace, just like a human worker does. The environment in which the digital worker completes the robotic process is known as a resource. A host machine can be a physical machine, such as a separate computer, or a virtual machine on a cloud server.

To start an execution, the resource needs certain data or information from the server. The resource communicates with the server through an agent, which is a program you'll install on the resource. Agents are required to be up and running for robotic processes to execute properly and communicate the results back to the console.

This page describes the Resources tab in the Appian RPA console, which you'll use to setup and monitor resources.

Add a resource

Required role: Administrator

Create a resource for each physical or virtual machine (VM) that will run robotic processes. Every resource has a corresponding agent, which can only be used on one machine.

Multiple resources can map to the same machine. For example, if you connect your personal computer to both your development and staging environments for testing purposes, you will create two resources.

Avoid trying to run multiple robotic processes on the same machine at the same time because they will likely conflict with each other.

When running your robotic processes in a production environment, we recommend using a dedicated machine, whether that be a provisioned virtual machine (VM) or physical machine, as the resource.

To add a resource:

  1. On the Resources tab, click the Add resource icon rpa-add-icon.png. The Resource definition editor page displays.
  2. Configure the following fields:
    • Name: Editable name for the resource that is shown throughout the console.
    • Operating system: Choose the resource's operating system: Windows, Linux, or Mac.
    • JRE path (%JAVA_HOME%): Optional field to specify where Java is installed on the resource.
    • Permissions: Assign or edit permissions for the resource. A resource must have permissions in common with any robotic process you want to use the resource.
  3. Click Save. The Resource detail page for the new resource displays.
  4. Configure resource parameters.

To execute a robotic process on a new resource, remember to install the agent.

Be sure to add the resources to your Appian environment's firewall allow list, if applicable. The robotic process may not be able to execute successfully if the firewall blocks communication between the agent, resource, and server.

Using a virtual machine resource

You can use a VM as a resource to run robotic processes. By default, VMs may timeout and become unavailable after a period of inactivity. To ensure the resource remains available, you may want to complete additional configuration when creating a VM resource.

Microsoft Remote Desktop users can configure the following to prevent VM resources from timing out:

  • Configure Set time limit for disconnected sessions to Never. See Microsoft Help for instructions.
  • Keep Microsoft Remote Desktop running. If you need to end the session:
    1. Go to the resource window.
    2. Open the Start menu.
    3. Select Disconnect.

Additionally, ensure that the agent you have downloaded on the resource has administrator privileges to allow them to unblock sessions as needed.

View the list of resources

Required role: Any

The List of resources table contains all resources available to you based on your permissions. You can access the details of a resource by clicking on any of its columns.

rpa-resources.png

The resources are listed in alphabetical order in a grid with the following information:

  • Status: Blocked keys, Concurrence, Disabled, Locked session, Online, Offline, or Running Robot
  • Type: Production, Development, Development without restrictions or Remote development
  • Operating system: Windows, Linux or Mac
  • Robotic processes
  • Actions
  • Permissions

Types of resources

Type Icon Description
Production 951052.png A production resource has no restriction at all.
Development 951054.png A development resource is not permitted to execute robotic processes that take more than 2 hours.
Development without restrictions 951055.png In the same console there can be, at most, one resource of this type.
Remote development 951056.png A resource specifically configured to remote development, where the resource is the one connecting to the developer.
Windows resource 951057.png The agent is executed on a Windows operating system.
Linux resource 951058.png The agent is executed on a Linux operating system.
macOS resource 951059.png The agent is executed on a macOS operating system.

Available actions

You can perform several actions on resources in the list. Available actions depend on the resource's connectivity, whether the agent is started, and on whether its status is "Online" or "Offline."

Icon Description
951066.png Switches off a resource with connectivity and "Online" status.
951067.png Switches on a resource with connectivity and "Offline" status.
2229123.png Removes the session currently associated with the resource. Useful when we do know that the session doesn't exist anymore, but the console needs more time to be sure of that.
2229048.png Allows you to assign permissions to the resource.

Assign permissions to a resource

Required role: Developer or Administrator

RPA components rely on shared permissions for security. Users, robotic processes, and resources must have tags in common to see and interact with each other. To assign or edit permissions for a resource, see Assign or Edit Permissions.

Looking to edit permissions for multiple resources? Save time by modifying resource permissions in bulk.

View resource details

Required role: Any

Details include:

  • information related to the computer where the agent is running.
  • information related to the agent itself.

rpa-resource-detail.png

  • Last communication:
    • Agent: last time the agent connected with the console.
    • Console: last time the console connected with the agent.
  • Identifier: Unique identifier for the resource.
  • Version (revision): Version of the agent on the resource and the internal build number.
  • Name: Editable name of the resource that will be shown throughout the console instead of the identifier.
  • Agent with elevated privileges: When checked, the resource is running with administrator privileges.
  • Execute with block: When checked, the resource can execute robots in a blocked session unblocking it previously.
  • Screen saver: When checked, robotic processes can work with the screen saver enabled.
  • Screen blocked: When checked, the session is currently locked.
  • Input blocked: When checked, the keyboard and mouse input are locked for the user in the resource, but not for robotic processes. This is a security measure to avoid problems in machines not dedicated exclusively to robotic processes. You can also enable this option through the console or the SDK.
  • Blocked keys: When checked, an issue related to the keyboard is detected. For example, any key held down.
  • Local plugins: When checked, execution of local plugins is enabled. Plugins are fragments of code than can be executed without connection with the console (for instance, to use a VPN to gain access to the console itself).
  • Reserved memory: Reserved memory status of the JVM for the agent.
  • Generate event if % >: When checked, an event "resource_LIMIT_MEMORY" is generated when the memory percentage is over the maximum specified.
  • Screen resolution: Screen dimensions on the image representing your monitor.
  • Available disk space: Available disk space status on the computer.
  • Generate event if % <: When checked, an event "resource_LOW_FREE_HARD_DISK_SPACE" is generated when the free disk space percentage is under the minimum specified.
  • Java version: Java version used by the agent.
  • Processors: Number of available processors on the resource.
  • Operating System: Name and version of the operating system on the resource.
  • User session: Session identifier used by a resource with elevated privileges to unlock the session.
  • Current folder: Current folder where the agent is located.
  • Temporary folder: Temporary folder for the user who launched the agent.
  • IP addresses: IP addresses assigned to the resource (can be several due to the existence of different net interfaces).
  • Remarks: Additional information about the resource or the agent.

Actions available from the resource details

Depending on whether the resource has connectivity, and on whether its status is "Online" or "Offline", different icons will be available.

Icon Description
951068.png If the resource is offline and its license has not expired, you can download the agent to install it on your computer.
951070.png Launch the remote-control screen for a resource with connectivity. If the resource was disabled, it may look like it is "Offline" but even so you can access it remotely.
951071.png Disables the local plugins of the agent. It only works if the agent, in the moment of its creation, plugins was added in it and these are enabled.
951072.png Enables the local plugins of the agent. It only works if the agent, in the moment of its creation, plugins was added in it and these are disabled.
951073.png Lock the input from the keyboard and the mouse on a resource with connectivity. Only available if the agent is executed on the resource using an administrator profile.
951074.png Unlock the input from the keyboard and the mouse on a resource with connectivity. This action works only if the agent is executed on the resource using an administrator profile.
951075.png Send an agent for remote debugging. A new executable is downloaded on the resource, named jidoka-remote.exe, specifically designed for debugging robots remotely when you cannot debug them directly on the port involved.
951076.png Execute the agent for remote debugging.
951077.png Stop the agent from remotely debugging (only on the resource under remote debugging).
951078.png Executes the agent for remote debugging (JJDWP). This debugging is less common and requires its own execution setup. By clicking on this icon, a pop-up window will ask you for the IP, port and timeout for the connection.
951079.png Stops the agent from remotely debugging (JJDWP). Unlike the non-JJDWB version, this debugging must be stopped from the resource that launched it, and not from the resource being debugged.
951080.png Restart the agent, so that it can initiate itself and prevent, among other things, low memory problems in the computer where it is running, that is, the resource.
2229125.png Completely remove the resource from the console. This action cannot be undone and is only available for "ADMIN" profiles.

Allow Appian to sign in

Before a robotic process starts, it may need access to your resource and start a user session if one isn't already running. On top of that, your business may restrict the privileges available to this user session.

You can manually trigger Appian to sign into a virtual machine as any designated user (basic or administrator) in order to start a robotic process execution.

You can find these configuration options on the Resource detail page in the RPA console:

rpa-appian-sign-in.png

Configure the resource

In order for the automatic sign-in service to work as expected, several pre-requisite steps must first be completed. These configuration steps and installation will require administrator privileges. Once the service is installed, a robotic process can be executed using a non-admin user.

In order for the service to work as expected, the resource must use a Windows 64-bit OS (x64-based) and the user account Appian uses to sign in should be configured in the following ways:

  • The user account must belong to the Remote Desktop Users local group.
    • To add the user account, go to Computer Management > Local Users and Groups > Groups > Remote Desktop Users.

      rpa-rdp-groups

  • The user account should have the following rights in the Local Security Policy, which you can find in Local Security Policy > Local Policies > User Rights Assignment:
    • Access this computer from the network
    • Allow log on locally
    • Allow log on through Remote Desktop Services
    • Create symbolic links (Learn more at Microsoft’s website)

      rpa-rdp-policy

  • The resource must allow Remote Desktop Connections. To configure this:
    1. Open the Start menu.
    2. Search for Remote Desktop Settings.
    3. Verify Enable Remote Desktop is On.
  • The resource must have the following packages installed:

Configure the resource details in the RPA console

To allow Appian to sign in:

  1. Go to the Resource details page for the resource you want to edit.
  2. Select Enable automatic sign in.
  3. Fill in the following fields:
    • Domain: The computer network where the user account is registered. If no domain or an invalid domain is provided, the windows service will treat the credentials as a local account.
    • Username: The username of the account that you want Appian to use to sign in to the resource.
    • Password: The password of the account that you want Appian to use to sign in to the resource.
    • Screen resolution: The screen resolution of the new user session. Select a resolution that matches the one used to develop the robotic process. The resolution determines where elements appear on the screen. The robotic process may be programmed to navigate to specific places on the screen to interact with those elements, so it's important to choose a resolution that matches the one used during development to ensure that actions are executed exactly the same.
  4. Click SAVE. You'll have to save the resource configuration before you can proceed.
  5. At the top of the Resource details page, download the agent.
  6. Back in the Allow Appian to sign in section, click DOWNLOAD INSTALLATION FILES. autoLoginServiceInstaller.zip is downloaded to your host machine. It contains:
    • InstallAutoLoginService.bat file - This generated file is unique for each resource, and will be used to help you install the automatic sign-in service.
    • UninstallAutoLoginService.bat file - This file can be used to uninstall the service created with this package.
    • LoginAgent.exe - This is the sign-in service, and it will work for 64-bit operating systems.

Install the sign-in files on the resource

You'll need administrator privileges on the resource to install the sign-in service using the instructions below.

After you've configured the resource, you'll install the sign-in files on the resource:

  1. Create a new folder (without any spaces or special characters in the name).
  2. Add the autoLoginServiceInstaller.zip file and the agent file (AppianRpaAgent.exe) to this folder.
  3. Unzip the autoLoginServiceInstaller.zip file in the folder. In the folder, you should see AppianRPAagent at the same level as the AutoLoginService folder. rpa-signin-file-structure

  4. Open the AutoLoginService folder.
  5. Double-click on the InstallAutoLoginService.bat file.
  6. To check the installation was successful, go to Services. You should see the new service in the list: AppianRpaLoginAgent_[Resource Name].
  7. To verify that the service has authenticated with Appian correctly, open the appianLoginAgent.log in the folder where the service is installed. The log file appianLoginAgent.log will appear after the agent is started. This file serves as the activity log file of the automatic sign-in service.
  8. You should see a line that says Service Authenticated and logs that say AUTO_LOGIN_SERVICE_STANDBY, indicating that it is connecting correctly and ready for sign-in requests.
  9. Before testing automatic sign-in, ensure that you properly sign out of your user session. Click on your user account icon and select Sign out.

You are now ready to use automatic sign-in.

Change the default user starting the sign-in service

By default, when installing the InstallAutoLoginService.bat file, the service is automatically started by the Local System account, which is the predefined local account used by the service control manager. You can change it to be another user if you’d like to use a separate account. This user account does not need administrator privileges.

To modify which account starts the service:

  1. Right-click on the service and select Properties.
  2. Go to the Log On tab.
  3. Configure the login parameters. The user you choose must have permissions on the installation directory to be able to execute the service and write log files.
  4. Restart the service.

Sign in to the resource

Back in the Appian RPA Console, you can now sign in to the resource remotely. Appian does this through Remote Desktop Protocol (RDP).

  1. Go to the Resource details page.
  2. Go to the Allow Appian to sign in section.
  3. Click SIGN IN.
  4. You'll see a success message if Appian signed in successfully. If Appian wasn't able to sign in, you'll see an error message describing the problem. See Troubleshooting below to learn how to fix the issue.

RDP signs in successfully

Troubleshooting

To help keep you on track, Appian may display messages to show you when it's unable to sign in. Use the following table to understand the error and learn how to fix the issue.

Error message Reason Guidance
Invalid sign-in credentials. Unable to sign in because the credentials are invalid. Check the username and password are correct and try again. Appian tried to sign into the user sessions using the credentials you provided, but it didn't work. The credentials may be inaccurate, or they don't match an account found on the domain. Check the domain, username, and password fields to make sure they're correct.
Robot not found. Unable to sign in because RDP couldn’t locate the agent on the resource. Check that the agent is installed on the resource and try again. Appian was unable to locate the agent file on the resource. The agent is required to allow the resource to communicate with the RPA console. Check that the agent is installed and it is located where specified in the instructions. Check that the user account configured to sign in to the resource has permissions to run the agent.
RDP is not enabled. Unable to sign in because Remote Desktop is disabled on the resource. Enable Remote Desktop and try again. Appian tried to sign in to a user session on the virtual machine, but RDP isn't enabled. Enable RDP on the resource.
Error: Active user session. Unable to sign in because the resource has an active session. Sign out from the active session and try again. Appian tried to sign in to the virtual machine, but there is already an active user session.

Note that this message appears for standard Windows operating systems.
Sign out of the active user session on the resource.
Error: Active user session. Unable to sign in because the resource has an active session for the OS user account you’re using to sign in. Sign out from the user’s active session and try again. Appian tried to sign in to the virtual machine, but there is already an active user session for the user account you're using to sign in.

Note that this message appears for Windows Server operating systems.
Sign out of your active user session on the resource.
Error with automatic sign-in. Unable to sign in because of an issue with Remote Desktop. Review the Remote Desktop settings and try again. Appian tried to sign in to the virtual machine, but was unable for an unknown reason. Verify that the RDP settings on the resource match the configurations listed above.
Error with automatic sign-in. Unable to sign in because Remote Desktop didn’t respond. Verify that the sign-in service is running on the resource and try again. Appian tried to sign in, but the sign-in service didn't respond in time. It might be that the sign-in service isn't running on the resource. Confirm that the sign-in service is running on the resource.

Container configuration

This feature has been deprecated and may be removed in a future release.

In the Container configuration section, you can configure two different types of containers for a resource: Docker and VirtualBox. Once the configuration is done, the console is able to integrate with the container to start and to stop it.

Docker

rpa-resources-docker.png

Additionally, it is possible to use Kubernetes as a Docker containers manager.

For Docker, you have to fill the following fields:

  • Host: The machine where the Docker service is installed.
  • Port: The port to connect to the host. The console uses an SSH connection.
  • Host user / password: The credentials to connect to the host machine.
  • Image name: Name of the Docker image to start.
  • Container name: Name of the container with the Docker image to start.
  • VNC external port: Optionally, if the image we prepared for a resource is Linux with VNC already configured, here you must indicate the port to access the machine using this protocol.
  • VNC password: Password for VNC.
  • Host data folder: The Docker image is started specifying that the agent is location on this path. This way, the agent, the cache, the workspace and logs will be persisted along the container executions.
  • Additional configuration: In case we want to specify something else about Docker.

Using these configurations, the console generates a Docker command to send to the machine to start or stop it.

VirtualBox

rpa-resources-vb.png

For VirtualBox, you have to fill the following fields:

  • Host: The machine where the VirtualBox service is installed.
  • Port: The port to connect to the host. The console uses an SSH connection.
  • Host user / password: The credentials to connect to the host machine.
  • VM name: Name of the virtual machine to handle which is configured in the VirtualBox service.
  • Additional configuration: In case we want to specify something else about VirtualBox.

Using these configurations, the console generates a VirtualBox command to send to the machine to start or to stop it.

Remote control viewer

Required role: Developer or Administrator

You can remotely visualize and operate the desktop on which the robot is running.

rpa-remote-control-viewer.png

To start monitoring, click on the Monitor icon (951090.png), which will show you a set of icons that allow you to perform certain actions on the desktop where the robot is executing.

Icon Description
951091.png Stop monitoring
951092.png Refresh screen
951093.png Take a screenshot
951094.png Full screen
951095.png Request the log file. It allows you to download the local error log.
951096.png Open the scripts editor Groovy. It allows you to execute Groovy code on the client.
951097.png Control remotely. It will show the position of the mouse pointer on screen, allowing you to click and drag elements on the desktop as usual. By enabling it, you will also see a text box where you can send text to the resource as well as the coordinates of the mouse pointer.
951099.png Restart services

It is important that you click on the Monitor icon again after you have finished monitoring the resource. This way the agent will consume fewer resources while there is no need for monitoring.

Restart a resource

When you restart services, a request is sent to the agent for it to try to restart the open connections with the console. This functionality should only be used under maintenance tasks of the agent, as it is more advisable to relaunch the agent from the console and manually restart the agent, in this order, when you detect any issue with its operation. You can also restart the resource automatically.

Automatic resource restart

The agent's requirements for RAM memory are low. However, depending on the version of the operating system, RAM available, the number of robots in execution, and maximum memory assigned to the agent, memory usage may increase too much. To avoid this situation, you can make a resource to restart automatically when a specified percentage of the total memory is exceeded.

For example, suppose you want to specify on a 2GB memory resource, that the agent should restart whenever the memory used by the agent exceeds 1.6 GB, that is, 80% of the total.

On the resource details, enter that percentage of memory not to be exceeded. This will trigger an event to restart the agent whenever it is exceeded. Events are explained in detail on the Monitoring page.

Disable resources on console restart

In the event the server goes down unexpectedly, administrators can configure Appian RPA to disable resources upon restart of the RPA server to ensure robotic processes will not run until an administrator has verified the resource is in a clean state.

To allow Appian to disable unclean resources on start up:

  1. Go to the Settings tab.
  2. In the Configuration tab, go to Security policies.
  3. Select Allow Appian to disable resources which are running robots during a console shutdown.
  4. Click Save security policies.
Open in Github Built: Wed, Dec 07, 2022 (10:13:19 PM)

On This Page

FEEDBACK