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

What is a robot?

A robot is a digital worker that's made up of two parts: a host machine and an agent. A robot needs a workspace, just like a human worker does. The host machine is the environment in which the digital worker completes robotic tasks. The host machine can be a physical machine, such as a separate computer, or a virtual machine on a cloud server.

To execute a robotic task, the robot needs certain data or information from the server. The robot communicates with the server through an agent, which is a file you install on the host machine. Agents must be up and running on the host machine for robotic tasks to execute properly and communicate the results back to the console.

This page describes the Robots tab in the Appian RPA console, which you can use to set up and monitor robots.

Add a robot

Required role: Administrator

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

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

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

When running your robotic tasks in a production environment, we recommend using a dedicated machine, whether it is a provisioned virtual machine (VM) or physical machine.

To add a robot:

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

To execute a robotic task for a new robot, remember to install the agent on the host machine. The agent is also required to communicate other information between Appian and the host machine, such as the robot's status.

Be sure to add the host machine(s) to your Appian environment's firewall allow list, if applicable. The robotic task may not be able to execute successfully if the firewall blocks communication between the agent, host machine, and server.

Using a virtual machine

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

Microsoft Remote Desktop users can configure the following to prevent VM host machines 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. Open the Start menu in the Remote Desktop Connection window.
    2. Select Disconnect.

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

View the list of robots

Required role: Any

The List of robots contains all robots available to you. Click a robot to view its details.

rpa-resources.png

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

Status

For each robot in the list, you'll see a status to indicate what the robot is currently doing.

Status Description
Online Robot is online and ready to run a robotic task.
Standby Robot is ready to run a robotic task.
Running Robot is online and busy running a robotic task.
Recording Robot is online and busy recording interactions.
Offline Robot is offline and can't run a robotic task. Run the robotic task on your local host machine or allow Appian to sign in to the robot automatically.
Disabled This robot is disabled, so it can't run robotic tasks. Enable the robot to run a robotic task.
Concurrence The robot is using an agent that's been installed and launched in more than one place. Disconnect one agent and allow Appian to sign in to the robot automatically.
Blocked Keys There is an issue with the keys on the robot. A robotic task can run, but may produce unexpected results. To fix the issue, run a robotic task to release the keys, or restart the user session.
Outdated The agent is updating or failed to update. Check back soon. If still outdated, manually reinstall and launch the agent.

What you can do on the list of robots

You can perform several actions from the list of robots. Available actions depend on the robot's connectivity and status.

Additional actions are available from the Robot detail page.

Icon Description
951066.png Disables a robot
951067.png Enables a robot
2229123.png Removes the user session currently associated with the robot. This action is useful when the user session doesn't exist anymore, but the console hasn't refreshed.
2229048.png Allows you to assign permissions to the robot.

Assign permissions to a robot

Required role: Developer or Administrator

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

Looking to edit permissions for multiple robots? Save time by modifying robot permissions in bulk.

View robot details

Required role: Any

On the Robot detail page, you can find:

  • information related to the machine 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 robot.
  • Version (revision): Version of the agent on the robot and the internal build number.
  • Name: Editable name of the robot that is shown throughout the console instead of the identifier.
  • Agent with elevated privileges: When checked, the robot is running with administrator privileges.
  • Execute with block: When checked, the host machine can execute robots in a blocked session.
  • Screen saver: When checked, robotic tasks 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 on the host machine, but not for robotic tasks. This is a security measure to avoid problems on machines not dedicated exclusively to robotic tasks. 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 "robot_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 "robot_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 host machine.
  • Operating System: Name and version of the operating system on the host machine.
  • User session: Session identifier used by a robot 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 host machine (can be several due to the existence of different network interfaces).
  • Remarks: Additional information about the robot or the agent.

What you can do from the robot detail page

Different actions are available in the toolbar of the Robot detail page, depending on the robot's status.

Icon Action Description
951068.png Download the agent Downloads the agent file associated with this robot.
951070.png Launch the remote-control screen Available only for Online robots.
951071.png Disable the agent's local plugins Available only if the agent contains enabled plugins.
951072.png Enable the agent's local plugins Available only if the agent contains disabled plugins.
951073.png Lock input from the host machine's keyboard and mouse Available only for Online robots. The agent must be installed on the host machine using an administrator profile.
951074.png Unlock input from the host machine's keyboard and mouse Available only for Online robots. The agent must be installed on the host machine using an administrator profile.
951075.png Send an agent for remote debugging A new agent is downloaded on the host machine, specifically designed for debugging remotely when you cannot debug directly on the port involved.
951076.png Execute the agent for remote debugging Launch the agent to begin remote debugging.
951077.png Stop the agent from remotely debugging Only on the host machine under remote debugging.
951078.png Execute the agent for remote debugging (JJDWP) This debugging is less common and requires its own execution setup. If you select this action, Appian will ask you for the IP, port and timeout for the connection.
951079.png Stop the agent from remotely debugging (JJDWP) Unlike the non-JJDWP version, this debugging must be stopped from the console, and not from the host machine being debugged.
951080.png Restart the agent Restarting the agent can prevent, among other things, low memory problems on the host machine where it is running.
2229125.png Permanently remove the robot from the console This action cannot be undone. Available for administrator roles only.

Allow Appian to sign in

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

You can configure your robot to allow Appian to automatically sign into a virtual machine as any designated user (basic or administrator) in order to start a robotic task. This means that you won't need to keep user sessions active on virtual machines in case a robotic task needs to start. Instead, Appian can start a session as needed for robots with Standby status. Appian can also automatically sign out of the host machine if there are no more robotic tasks to run after the last execution. Configure this option to build more flexibility into your unattended automations.

Appian can only sign in to Windows host machines with this configuration enabled.

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

rpa-appian-sign-in.png

Configure the robot

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 task can be executed using a non-admin user. 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 task can be executed using a non-admin user account.

For the service to work as expected, the host machine 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

      rpa-rdp-policy

  • The robot 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 robot must have the following packages installed:

Configure the robot details in the RPA console

To allow Appian to sign in:

  1. Go to the Robot Detail page for the robot 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 host machine.
    • Password: The password of the account that you want Appian to use to sign in to the host machine.
    • Screen resolution: The screen resolution of the new user session. Select a resolution that matches the one used to develop the robotic task. The resolution determines where elements appear on the screen. The robotic task 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.
    • Skip interactive logon message: Windows machines can be configured with different security settings, including an interactive logon message. When Appian attempts to sign in to a host machine with an interactive logon message, it must acknowledge the message before it can continue. Enable this option to allow Appian to acknowledge the message and pass the interactive logon message.
  4. Click SAVE. You'll have to save the robot configuration before you can proceed.
  5. At the top of the Robots details page, click DOWNLOAD INSTALLER.

Launch the installer on the host machine

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

After you configure the robot, install the sign-in files on the host machine using the installation wizard:

  1. Launch the installer you downloaded in the previous section.
  2. After reading the License Agreement, click Next.
  3. Choose a Destination Folder located in the user folder of the user account that you'll use to sign in. For example, C:\Users\<username>\AppData\Local. The installer will create a folder titled Appian RPA in this location with all the necessary files.
  4. Click Install to complete installation.
  5. On the final step of the installation wizard, click Show details to see an installation summary or click Close to finish.
  6. Exit the installation wizard.
  7. To check the installation was successful, go to Services. You should see the new service in the list: Appian RPA AutologinService [Host Nachine Name].
  8. 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

When installing the automatic sign-in service, 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.

Test signing in to the host machine

Back in the Appian RPA console, you can test the connection to the host machine remotely. Appian does this through Remote Desktop Protocol (RDP).

  1. Go to the Robot 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.
  5. Click SIGN OUT to end the user session Appian launched during sign in. This step ensures the host machine is ready for Appian to sign in automatically in the future.

If there is an active user session on the robot, Appian may not be able to sign in successfully. For the best results, ensure there is no active user session for the user account Appian uses to sign in to the robot.

RDP signs in successfully

If your test was successful, then you're all set! Appian will automatically sign in to this host machine using the provided credentials whenever the robot is called upon to execute a robotic task.

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 host machine. Check that the agent is installed on the host machine and try again. Appian was unable to locate the agent file on the host machine. The agent is required to allow the host machine to communicate with the RPA console. Check that the agent is installed and that the user account configured to sign in to the host machine has permissions to run the agent.
RDP is not enabled. Unable to sign in because Remote Desktop is disabled on the host machine. 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 host machine.
Error: Active user session. Unable to sign in because the host machine 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 host machine.
Error: Active user session. Unable to sign in because the host machine 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 host machine.
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 host machine 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 host machine 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 host machine. Confirm that the sign-in service is running on the host machine.
Error: Interactive logon message. Unable to sign in because the host machine has an interactive logon screen. Enable the Skip interactive logon message option on the Robot Details page and try again. Appian tried to sign in, but the host machine has an interactive logon message. The robot wasn't configured to allow Appian to skip the interactive logon message. Edit the robot configuration to allow Appian to skip the interactive logon message.

Container configuration

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

In the Container configuration section, you can configure two different types of containers for a robot: 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 robot 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 where the robotic task 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 robot as well as the coordinates of the mouse pointer.
951099.png Restart services

When you're finished monitoring, click the Monitor icon again to stop. The agent consumes more robots while monitoring, so it's important to stop monitoring to ensure performance.

Restart a robot

Robotic tasks consume memory and generate artifacts on the host machine during each execution. Over time, this data may start to degrade the host machine's performance. The host machine may benefit from restarting the robot to help free up additional memory.

When you restart a robot, Appian sends a request to the agent to try to restart its connection with the console. You can relaunch the agent from the console or manually restart the agent when you detect any issue with its operation.

You can also restart the robot automatically.

Automatic robot restart

To prevent having too much of your host machine's memory occupied, you can configure a robot's agent to restart automatically when a specified percentage of the host machine's total memory is exceeded.

For example, if the host machine has a 2GB memory, you can set up the agent to restart whenever 80% of the memory is used (1.6GB).

  1. Go to the Robot detail page.
  2. Under Reserved memory, check the Generate event if % >.
  3. Enter the memory threshold in the text box.
  4. Enter that percentage of memory not to be exceeded.
  5. Click Save.

This configuration will trigger an event to restart the agent whenever the reserved memory is exceeded. Events are explained in detail on the Monitoring page.

Disable robots on console restart

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

To allow Appian to disable unclean robots on start up:

  1. Go to the Settings tab.
  2. In the Configuration tab, go to Security policies.
  3. Select Allow Appian to disable robots which are running robotic tasks during a console shutdown.
  4. Click Save security policies.
Open in Github Built: Wed, Mar 22, 2023 (04:01:37 PM)

On This Page

FEEDBACK