Skip to main content


         This documentation site is for previous versions. Visit our new documentation site for current releases.      
 

This content has been archived and is no longer being updated.

Links may not function; however, this content may be relevant to outdated versions of the product.

Configuring Pega Robot Manager 8.3.1

Updated on September 10, 2021

Pega Robot Manager™ 8.3.1 allows you to manage your RPA robots - start, stop, terminate and schedule them. You can configure it to suit the needs of your organization.

For information about upgrading from previous versions of Pega Robot Manager, see Upgrading to Pega Robot Manager 8.3.1. For a new installation, see Installing Pega Robot Manager 8.3.1.

For information about using Pega Robot Manager, see Using Pega Robot Manager 8.3.1.

For information about configuring Pega Robot Manager, see the following topics:

Robot registration and work group assignment

Every robot must successfully register with Pega Robot Manager before it can run automations. The registration process is performed by an administrative operator (also called a registration operator) that has an appropriate access role. During registration, the robot is assigned into a base work group based on the configuration request of the robot or by the configuration of decision tables. A successful registration assigns the robot to the correct base work group with the appropriate access groups and roles.

If you have multiple work groups and you want to move robots between them either manually or by using a schedule, you need to define a list of eligible work groups that are mapped to an administrative operator that is used to register the robots.

Creating an administrative operator

To start registration, robots use a shared set of credentials. These credentials are for an operator that is sometimes called the administrative operator or registration operator. These credentials are used only to establish an initial connection with Pega Robot Manager.

  1. Create a new operator record in Dev Studio:
    1. Click Create > Organization > OperatorID.
    2. Enter a short description and identifier, click Create, and then click Open.
    3. Enter the details of the administrative operator.
    4. In the Application access section of Profile tab, add an access group that includes the PegaRobotManager:RobotRegistrator, and PegaRULES:PegaAPI access roles.

      Note: The combination of these roles is necessary and sufficient to register robots and RPA Service operators.

    5. Click Save.

You can also refer to the BankingAdministrator operator that is included in the BankerPro sample application layer.

RPA Service-assisted robots and stand-alone robots

Pega Robot Manager supports both RPA Service-assisted robots and stand-alone robots. RPA Service-assisted robots can be scheduled, started, stopped, terminated, and moved between work groups from the Pega Robot Manager interface. A stand-alone robot can be stopped from the Pega Robot Manager interface, but it cannot be scheduled, started, or terminated.

RPA Service-assisted robots registration

The RPA Service is a Windows service for monitoring and controlling a robot from Pega Robot Manager. It must be installed and running on the same machine as the Robot Runtime. For more information, see Pega RPA Service.

The RPA Service and its associated robot register in Pega Robot Manager by using the registration operator credentials.

When an RPA Service-assisted robot is started, it registers into a work group according to the following criteria (in order of precedence):

  1. If the robot was previously assigned to any work group, its last work group association is retained.

    When a robot is stopped and started again, it starts working in the work group that it belonged to when it stopped. If a robot is stopped, moved to a new work group, and then started again, it starts in the work group that it was moved to.

  2. For robots not associated with any work group, the WorkgroupSpecifiedInPayloadTakesPrecedence dynamic system setting is checked.
    1. If WorkgroupSpecifiedInPayloadTakesPrecedence is set to true, the robots work group is determined by the Runtime system (either Common Config setting or a command line parameter).
    2. If WorkgroupSpecifiedInPayloadTakesPrecedence is set to false, decision tables on Pega Robot Manager side are used to identify the base work group for the robot in this order:
      1. pyGetWorkGroupByRobotID
      2. If pyGetWorkGroupByRobotID is invalid, pyGetWorkGroupForRobotByRequestorOperatorID is used
      3. If pyGetWorkGroupForRobotByRequestorOperatorID is invalid, the work group that is specified in the registration request of the robot is used (this is equivalent to WorkgroupSpecifiedInPayloadTakesPrecedence set to true)
Note: For best results, set WorkgroupSpecifiedInPayloadTakesPrecedence to false and allow Pega Robot Manager to determine initial work group associations. For more information, see Configuring the work group assignment sequence.

You can also manually change the association of a robot with its work group. See Moving robots between work groups and Scheduling robots.

Stand-alone robot registration

A stand-alone robot registers with Pega Robot Manager by using the administrative credentials. This type of robot cannot be started or scheduled from the Pega Robot Manager interface. A successful registration results in the robot being assigned into the correct work group with the appropriate access groups and roles.

Configuring the work group assignment sequence (initial robot registration only)

A robot can request to join a specific work group. If a specific work group is not specified by the robot, Pega Robot Manager attempts to find a work group that the robot should join from the pyGetWorkGroupByRobotID and pyGetWorkGroupForRobotByRequestorOperatorID decision tables.

You can configure Pega Robot Manager so that the specific method of work group registration takes precedence over the others; if one method does not work, then other methods are applied.

  1. In the navigation panel of Dev Studio, click Records.
  2. Expand the SysAdmin category, and then click Dynamic System Settings.
  3. Click the record with the pegarobotics Owning Ruleset and WorkgroupSpecifiedInPayloadTakesPrecedence Setting Purpose.
  4. On the Settings tab, in the Value field, enter one of the following values:
    • true: Use this setting if you have configured your robots to request a work group in their registration requests. Pega Robot Manager attempts to assign the robot to the work group that is specified in the request. However, if the registration request contains an invalid work group, Pega Robot Manager attempts to assign the robot to a work group that is specified in the pyGetWorkGroupByRobotID decision table. If this fails, it attempts to assign the robot to a work group that is specified in the pyGetWorkGroupForRobotByRequestorOperatorID decision table.
    • false: Use this setting if you want Pega Robot Manager to automatically determine the work group for each robot. Pega Robot Manager attempts to match the robot to the work group by using the pyGetWorkGroupByRobotID decision table. If the work group that is specified in that decision table is not valid, Pega Robot Manager attempts to match the administrative credentials to a valid work group by using the pyGetWorkGroupForRobotByRequestorOperatorID decision table. However, if the work group that is specified in the decision table is also not valid, Pega Robot Manager uses the work group that is specified in the registration request of the robot.
  5. Click Save.

If none of these options results in a valid work group, the robot registration fails.

Assigning to a work group by request (initial robot registration only)

For more information about configuring the registration request within a robot, see the Common Configuration Settings section in the help for Pega Robot Runtime.

Assigning to a work group by using a decision table (initial robot registration only)

If you want Pega Robot Manager to automatically assign each robot to a work group, you can customize one of the provided decision tables, depending on the method that you want to use. A robot can be assigned to a work group based on the user ID or the robot ID.

Note: When robots are assigned to a work group by using a decision table, the first processed decision table is pyGetWorkGroupByRobotID, followed by the pyGetWorkGroupForRobotByRequestorOperatorID decision table.

Configuring the pyGetWorkGroupByRobotID decision table

To assign robots to work groups based on robot ID, use the pyGetWorkGroupByRobotID decision table.

  1. In the navigation panel of Dev Studio, click Records.
  2. Expand the Decision category, and then click Decision Table.
  3. Click the pyGetWorkGroupByRobotID decision table in the @baseclass class and save it to your application ruleset.
  4. Add the robot IDs and their corresponding work group IDs to the decision table. For more information about decision tables, see About Decision Tables.
  5. Click Save.
  6. Set the sequence in which the system registers robots (either from within the registration request of a robot or through the decision tables) by editing the WorkgroupSpecifiedInPayloadTakesPrecedence dynamic system setting. For more information, see Configuring work group assignment sequence.

Configuring the pyGetWorkGroupForRobotByRequestorOperatorID decision table

To map the user credentials to work groups in your application, use the pyGetWorkGroupForRobotByRequestorOperatorID decision table. For example, if you use Kerberos authentication, your decision table maps the Microsoft Windows user principal name (UPN) from a valid Kerberos ticket to a work group in your system. All robots registered by using these credentials are assigned to the work group specified in the decision table.

  1. In the navigation panel of Dev Studio, click Records.
  2. Expand the Decision category, and then click Decision Tree.
  3. Click the pyGetWorkGroupForRobotByRequestorOperatorID decision table in the @baseclass class and save it to your application ruleset.
  4. Add the user names and their corresponding work group IDs to the decision table. For example, for Kerberos authentication, add the user principal names (UPNs) and their corresponding work groups to the decision table. For more information about decision tables, see About Decision Tables.
  5. Click Save.
  6. Set the sequence in which the system registers robots (either from within the registration request of a robot or through the decision tables) by editing WorkgroupSpecifiedInPayloadTakesPrecedence dynamic system setting. For more information, see Configuring work group assignment sequence.

Defining work groups that a robot can move to

To move robots between work groups either manually or by using a schedule, you need to define a list of eligible candidate work groups for each administrative operator (registration operator) that registered the robots. All robots that were registered by the same administrative operator can move to those work groups.

Note: When you create a work group instance by using the Pega Robot Manager user interface, the resulting work group ID consists of the specified base workgroup name followed by the at sign (@) and the business application name. For example, for a base workgroup named WorkGroup1 created in the MyApp application, the name of the created workgroup is WorkGroup1@MyApp.
  1. In the navigation panel of Dev Studio, click Records.
  2. Expand the Decision category, and then click Decision Table.
  3. Click the pyGetCandidateWorkGroupListByDispatchOperator decision table in the @baseclass class and save it to your application ruleset.
  4. For each administrative operator (registration operator), provide a comma-separated list of candidate work group IDs. All robots registered by a specific operator can be moved between the specified candidate work groups. The move command can be entered by Pega Robot Manager users or by a schedule.
    Note: The list of candidate work groups must contain ID of robot's base work group, which is the work group where the robot was assigned when it was first registered.
    For more information, see About Decision Tables.
  5. Click Save.

Assigning an access group to a robot

After the robot registration sequence determines a valid work group for a robot, Pega Robot Manager must also identify an access group to which to map the work group. You can customize the pyGetAccessGroupForRobotByWorkGroup decision table to map a valid work group to an access group. Each access group can have different access roles so that you can customize the access rights of each robot in your application. If the decision table does not map a work group to a valid access group, robot registration fails.

You can view the decision table in the BankerPro application layer for an example of how to customize the access group.

Enabling scheduling of robots

The ProcessRobotScheduleActions agent checks whether a schedule is set on a robot and runs the defined schedule.

Enable this agent by completing the following steps:

  1. Click Records > Sys Admin > Agent Schedule.
  2. Select the Pega-Robotic-AutomationPackageManagement instance on the node where you want to enable the ProcessRobotScheduleActions agent.
  3. Select the Enabled? check box for the ProcessRobotScheduleActions agent.
  4. Click Save.
    Note: The ProcessRobotScheduleActions agent must be run in a Periodic pattern, on a single node, which is the same node that NotifyRobotSchedulingAgentTermination runs on. For more information, see Agents rules – Completing the Schedule tab.

Enable monitoring health of the ProcessRobotScheduleActions agent

The NotifyRobotSchedulingAgentTermination agent checks whether the ProcessRobotScheduleActions agent is enabled and notifies the user when it is not working. It must be enabled on a single node – the same as the node that ProcessRobotScheduleActions agent is enabled on.

  1. Click Records > Sys Admin > Agent Schedule.
  2. Select the Pega-Robotic-AutomationPackageManagement instance on the node where you want to enable the NotifyRobotSchedulingAgentTermination agent.
  3. Select the Enabled? check box for the NotifyRobotSchedulingAgentTermination agent.
  4. Click Save.

Enabling monitoring of robot and RPA Service health

The MonitorRobotCommandAndHeartbeat agent checks the status of robots and the RPA Service – whether the RPA Service and robot send a heartbeat signal regularly and if the robot responds appropriately when it receives commands such as start or stop. The status of all robots that are visible in Pega Robot Manager is updated based on the actions of this agent.

Enable this agent by completing the following steps:

  1. Click Records > Sys Admin > Agent Schedule.
  2. Select the Pega-Robotic-AutomationPackageManagement instance on the node where you want to enable the MonitorRobotCommandAndHeartbeat agent.
  3. Select the Enabled? check box for the MonitorRobotCommandAndHeartbeat agent.
  4. Click Save.

Enabling automatic cleanup of disconnected robots

The ProcessStaleRobots agent finds running robots that have lost connectivity with Pega Robot Manager and stops them. Robots that have lost connectivity (are no longer heartbeating) appear with a red error state (Needs attention).

If the robot starts heartbeating again, it resumes its assignments. To unregister robots that have lost connectivity, use the ProcessStaleRobots agent.

Enable this agent by completing the following steps:

  1. Click Records > Sys Admin > Agent Schedule.
  2. Select the Pega-Robotic-AutomationPackageManagement instance on the node where you want to enable the ProcessStaleRobots agent.
  3. Select the Enabled? check box for the ProcessStaleRobots agent.
  4. Click Save.

Enabling automatic cleanup of stale automation assignments

The RoboticAssignmentProcessing agent finds stale automation assignments that have been in a robot's personal work queue for longer than expected and moves them to the list of automations that have timed out. You can view automations that have timed out in the Time-outs on the Issues page.

​Enable this agent by completing the following steps:

  1. Click Records > Sys Admin > Agent Schedule.
  2. Select the Pega-Robotic-AutomationPackageManagement instance on the node where you want to enable the RoboticAssignmentProcessing agent.
  3. Select the Enabled? check box for the RoboticAssignmentProcessing agent.
  4. Click Save.

User roles

Users with different roles use Pega Robot Manager.Pega Robot Manager ships with the following predefined access roles:

  • Administrator (AutomationPackageManagement:Admin) – Administrators can perform all actions in Pega Robot Manager. Only these users can deploy packages to the Production deployment level.
  • Developer (AutomationPackageManagement:Developer) – Developers can publish and manage automation packages.
  • User admin (AutomationPackageManagement:UserAdmin) – UserAdmins can manage runtime users and the organizational hierarchy.
  • Runtime user (AutomationPackageManagement:RuntimeUser) – Runtime users cannot log in to Pega Robot Manager. Runtime users are typically case workers who merely fetch their automation package assignment from Pega Robot Manager

The following table summarizes the tasks that each type of user can perform.

TaskRole (Persona)

 

AutomationPackage
Management:
Admin

AutomationPackage
Management:
Developer

AutomationPackage
Management:
UserAdmin

AutomationPackage
Management:
RuntimeUser

General    
Use Pega Robot Managerxxx 
View and manage work groups on the Work groups pagexx  
Requeue failed assignments from the dashboardx   
Departments    
View departments on the Departments pagexxx 
Create departmentsx x 
Edit department detailsx x 
Delete departmentsx x 
Users    
View users on the Users pagexxx 
Access user features by clicking a userxxx 
Create usersx x 
Modify user detailsx x 
Configure the maximum number of automations that can fail on a robotx   
Move users between departmentsx x 
Delete usersx   
Packages    
View packagesxxx 
Retrieve a packagexx x
Access package features by clicking a packagexxx 
Publish package versionsxx  
Edit package detailsxx  
Delete a packagex   
Create deployment levelsxx  
Rename deployment levelsxx  
Move deployment levelsxx  
View deployment-level historyxxx 
Restore packagesx   
Delete deployment levelsx   
Deploy a version into and promote a version to a non-Production deployment levelxx  
Deploy a package version into and promote a package to the Production deployment levelx   
Create and delete package assignmentsx   
Enable and disable package assignmentsx   
Runtime Configurations    
View Runtime configuration settingsxx  
Create Runtime configuration settingsxx  
Edit Runtime configuration settingsx   
Delete Runtime configuration settingsx   
View Runtime configuration assignmentsxxx 
Update Runtime configuration assignmentsx x 
Delete Runtime configuration assignmentsx x 
Set a Runtime configuration setting as default to an applicationx   
Retrieve Runtime configuration settings via REST servicesx  x

For more information, see Access roles.

Associating access groups and roles

Access groups and access roles determine the permissions of each user in your Pega application. When you add a user in Pega Robot Manager, you associate the role with the access group to apply the role permissions to the user.

  1. In Dev Studio, create an access group that points to your application by clicking Create > Security > Access Group.
  2. Enter a name and description, and click Create and Open.
  3. In the Application section, specify your application name and version.
  4. In the Available roles section, click Add role.
  5. In the field that is displayed, press the Down Arrow key and select the roles that you want to associate with the access group.

    For more information about access roles required for specific access groups and the corresponding sample access groups in the BankerPro application, see the following table:

    Access group
    to be used for a persona
    Access roles requiredSample access group in
    BankerPro
    Registration Operator/Administrative Operator

    PegaRobotManager:RobotRegistrator

    PegaRULES:PegaAPI

    BankerPro:RoboticAdministrators
    Robot/RunTimeUser

    AutomationPackageManagement:RuntimeUser

    PegaRULES:PegaAPI

    PegaRULES:User4 (or an application-specific clone of it)

    BankerPro:RuntimeUser
    Application Administrator /Pega Robot Manager Administrator

    AutomationPackageManagement:Admin

    PegaRULES:SecurityAdministrator (needed in 8.1.4 to manage roles in other AGs)

    PegaRULES:SysAdm4 (or an application-specific clone of it)

    BankerPro:Administrators
    Developer

    AutomationPackageManagement:Developer

    PegaRULES:User4 (or an application-specific clone of it)

    BankerPro:Developer
    UserAdmin

    AutomationPackageManagement:UserAdmin

    PegaRULES:User4 (or an application-specific clone of it)

    BankerPro:UserAdmin
  6. Save the Edit Access Group rule form.
    Note: When saving the access group that will be assigned to robots, ensure that in the Definition tab, Available roles section, one of the following scenarios is enacted:
    • Both the Is manageable in App Studio and Stop access checking once a relevant Access of Role to Object instance explicitly denies or grants access check boxes are cleared
    • The AutomationPackageManagement:RuntimeUser is the first access role listed

For more information, see Access Group data instances.

You can also create an access role and add privileges to it. For more information, see Access roles.

Configuring authentication for new users

Configure authentication requirements for user roles before creating users in Pega Robot Manager. By default, Pega Robot Runtime users authenticate with Pega Robot Manager by using single sign-on authentication; users with all other roles authenticate by using basic authentication. Pega Robot Manager supports basic authentication and single sign-on (SSO) by using either OAuth 2.0 with SAML bearer assertion or Kerberos.

When you create user accounts in Pega Robot Manager, the authentication method that is assigned to each user is determined by their specified role and the dynamic system setting that is associated with the specified role.

  1. In the navigation panel of Dev Studio, click Records.
  2. Expand the SysAdmin category, and then click Dynamic System Settings.
  3. To specify the authentication that is used for the AutomationPackageManagement:RuntimeUser role:
    1. Click the PegaRoboticAutomationManagement owning ruleset that has the pegarobotics/DefaultAuthenticationTypeRuntimeOnlyUser Setting Purpose value.
    2. In the Value field, enter SSO or Basic.
    3. Save the rule form.
  4. To specify the authentication for all other roles:
    1. Click the PegaRoboticAutomationManagement owning ruleset that has the pegarobotics/DefaultAuthenticationType Setting Purpose value.
    2. In the Value field, enter SSO or Basic.
    3. Save the rule form.

For information on configuring single sign-on, see Configuring authentication for Pega Robot Manager 8.3.1.

Configuring notification thresholds

Note: To see notification preferences, you must define at least one case type.

In case of unexpected behavior or errors, Pega Robot Manager users can be notified by webgadget and email. To take advantage of this feature, perform the following steps:

  1. Configure an email account to send the notifications. For more information, see Creating an email account.
  2. Set the Public Link URL to the following format: http://<host>/prweb/PRServlet. For more information, see System Settings – Resource URLs tab.
  3. Optional: Customize the default notification thresholds:
    1. In the navigation panel of Dev Studio, click Records.
    2. Expand the Decision category, and then click Decision Table.
    3. Click the pyGetThresholdByNotificationType decision table in the @baseclass class and save it to your application ruleset.
    4. Modify the default values of relevant notification types:
      • pyNotifyAutomationExceedsExecution - notification is triggered when the time it took a robot to complete the automation was longer by the specified percentage than the value specified on the originating work queue. Default value: 20.
      • pyRobotQueueExceedingCapacity - notification is triggered when pending items in any robotic assignment type (work queue) reaches the specified percentage of capacity. Default value: 80.
      • pyNotifyWorkQueueHasPastSLA - notification is triggered when an assignment in a robotic queue (assignment type)reaches a specific percentage of the SLA deadline. Default value: 80.
      • pyNotifyRobotFailuresReachThreshold - notification is triggered when a robot exceeds its predetermined failure count threshold. Default value: 80.
    5. Modify the labels in the user interface so that they match the customized values.

Disabling Pega Robot Manager notifications by default

By default, web gadget and email notifications are enabled for all users that have access to the robots managed by Pega Robot Manager. To change this default behavior, adjust the Default preference per notification type and communication channel.

Note: This is a global setting. If you set the Default preference to Disable, users will have to enable the notifications individually per notification type and channel.

Before you begin

Ensure that you have an unlocked ruleset for saving rule instances.

  1. Log in to Dev Studio as an administrator of an application that uses robots managed by Pega Robot Manager.
  2. Click the Records explorer and expand the Process category.
  3. Click Notification.
  4. Filter the notification instances by the ruleset version that contains Pega-Robotic-Console.
  5. Click the notification that you want to edit, for example pyNotifyRobotLostConnectivity.
  6. Click Save As > Specialize by class or ruleset.
  7. Optional: Edit the label, set the context for your specialized notification, and specify the ruleset version number.
  8. Click Create and open.
  9. Go to the Channels tab and change the Default preference to Disable for each communication channel that you want to disable.
  10. Click Save.

Result: Notifications for users are now disabled by default for the channels and notification types that you edited. This change affects all users.

Configuring the pyCompleteAutomation flow action

In Pega Robot Manager, the pyCompleteAutomation is marked as an Extension. Its default behavior is to consider the automation status as "Complete" and move the flow to the next stage of the case life cycle. It is strongly recommended to customize the default behavior of pyCompleteAutomation flow action to better suit the needs of your organization.

Modifying dynamic system settings

The following dynamic system settings can be modified to adapt Pega Robot Manager to the specific needs of your organization.

  • AllowedWaitTimeForRobotRegistration - specifies the maximum expected time that the RPA Service should take to start up the Robot Runtime system. It includes the time to unlock the remote machine and start the runtime process. Default value: 120 seconds
  • MaxStartsIssuedPerScheduleAction - prevents the Pega Robot Manager system from continually attempting to restart a robot that has failed to start during one Scheduled action or Otherwise event. This value is read before attempting to start a robot. If the number of start attempts is less than the number provided, the start is issued. Default value: 4
  • ServiceOperatorHeartbeatInterval - defines how often the RPA Service should send a heartbeat signal to Pega Robot Manager. When the RPA Service does not send a heartbeat within this interval, it is assumed to be not running. When the RPA Service is not running, UI options (like Start a robot and Terminate a robot) are not available from the Pega Robot Manager. Default value: 45 seconds
  • TimeoutIntervalForRobotCommandToBeCompleted - determines the time-out interval for the start command issued to robots in conjunction with the RPA Service heartbeat interval. Default value: 30 seconds
  • WorkgroupSpecifiedInPayloadTakesPrecedence - determines if the work group for a newly provisioned robot should be determined by the Runtime system settings (true) or by Pega Robot Manager decision tables (false). Default value: false

Localization considerations

When localizing applications that use Pega Robot Manager, ensure that you adhere to the following guidelines:

  • Leave the default US locale for the registration operator (also referred to as the administrative operator).
    Do not specify the default locale for the registration operator (also referred to as the administrative operator). This type of user is not supposed to log in to Pega Robot Manager and access the UI. The registration operator is only used to register robots and establish an initial connection with Pega Robot Manager. Changing the locale of registration operator users results in errors in the current Pega Robot Manager version.
  • Create a localized version of the application ruleset (and not of the Pega Robot Manager ruleset).
    With a localized application ruleset, robots register correctly to the localized ruleset of the application.

Have a question? Get answers now.

Visit the Support Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega.com is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us