Understanding the SchedulerDefinitions.xml file for managing login pathways
With the Pega Robotic Process Automation (RPA) Service, you can log in to a virtual machine as a Windows user and start or stop Pega Robot Runtime. You can also specify the daily schedules for an unattended robot to better manage production systems that have applications that are not always available.
The RPA Service uses the SchedulerDefinitions.xml file to complete its tasks. This file includes the information that the service requires to handle Windows 7 and Windows Server 2012 login pathways. For other operating systems, use this file to define the sequence of login screens and the actions that the system must take to start the virtual machine.
The RPA Service is included in all 8.0 SP1 builds. For Pega Robotic Automation 19.1 and later, the RPA Service is a separate installation.
Pega Robotic Automation 8.0 SP1
Before you can work with the SchedulerDefinitions.xml file, learn the following basic information for Pega Robotic Automation 8.0 SP1.
File location
When you first install Robot Studio and Robot Runtime, the setup wizard copies the SchedulerDefinitions.xml file to the \Programdata\OpenSpan folder and the Studio/Runtime installation folder. The RPA Service uses the SchedulerDefinitions.xml file that is located in the \Programdata\OpenSpan folder. The Studio/Runtime installation folder contains a template version of the SchedulerDefinitions.xml file.
Updates to Robot Studio or Robot Runtime
When you update Robot Studio or Robot Runtime with a newer build, the system checks for a SchedulerDefinitions.xml file in the \Programdata\OpenSpan folder.
If the SchedulerDefinitions.xml file exists in the folder, the installer does not replace this file. Your changes to this file remain available. However, an update always overwrites the template version of the SchedulerDefinitions.xml file.
Configuring local account login support
By default, the SchedulerDefinitions.xml file supports only domain logins. The file does not support local account logins. The installer also installs the SchedulerDefinitions-Local.xml file in the Studio/Runtime installation folder. If you need to support local account logins, for example, for testing purposes in a production environment, you can choose from the following methods:
- Copy and rename the file:
- Copy the SchedulerDefinitions-Local.xml file into the \Programdata folder.
- Rename the file to SchedulerDefinitions.xml.
- Cut and paste the applicable sections from the SchedulerDefinitions-Local.xml file into the SchedulerDefinitions.xml file.
Pega Robotic Automation 19.1 and later
Before you can work with the SchedulerDefinitions.xml file, learn the following basic information for Pega Robotic Automation 19.1 and later.
File location
When you install the RPA Service, the setup wizard copies the SchedulerDefinitions.xml file to the \Programdata\Pegasystems\RPAService folder. The RPA Service uses the SchedulerDefinitions.xml file that is located in this folder.
Updates to Robot Studio or Robot Runtime
When you update Robot Studio or Robot Runtime with a newer build, the system checks for a SchedulerDefinitions.xml file in the \Programdata\Pegasystem\RPAService folder.
If the SchedulerDefinitions.xml file exists in the folder, the installer does not replace this file. Your changes to this file remain available. However, an update always overwrites the template version of the SchedulerDefinitions.xml file.
Local account logins
The SchedulerDefinitions.xml file contains entries for both domain and local account logins.
Matchsets
The SchedulerDefinitions.xml file includes entries, or matchsets, for Windows 7, Windows 8.1, Windows 10, Windows Server 2008 R2, Windows Server 2012 R2, and Windows Server 2016 login sessions. The RPA Service determines which matchset to use based on the operating system of the computer or the virtual machine on which the robot runs.
If a machine is not logged in and the robot is scheduled to run, the RPA Service reads the appropriate matchset from the SchedulerDefinitions.xml file. The RPA Service searches for the screens and controls that are displayed based on the order in which the matchsets are listed in the SchedulerDefinitions.xml file.
Example:
If the robot runs on a Windows 7 computer, the RPA Service executes the instructions in the following order:
- The RPA Service checks for the disclaimer screen.
- If no matchFailurekey is set to Stop. button is displayed, the RPA Service stops the login attempt because the
- If an OK button is displayed, the RPA Service clicks the button and continues to the next section.
- The RPA Service checks to see whether the Username and Password fields exist.
- If the Username and Password fields are available, the RPA Service retrieves and enters the user name and password from the Pega Credentials Manager utility (CredMgr.exe file), clicks the button, and then stops.
- If the user name and password do not match, the RPA Service moves to the next matchset.
Interpreting log entries
To add a matchset and define the actions that the system performed during the login sequence, review the RPAService.log file for Pega Robotic Automation 19.1 and later or the WinLogon.Scheduler.log file for Pega Robotic Automation 8.0.1089 to the latest 8.0 SP1 build. Use the Accessibility log entries in this file to determine which controls are displayed on the various screens.
The following figure is an example of the RPAService.log file, which is located in the \Programdata\Pegasystems\RPAService folder by default:
In this example, review the log file to see which screens are displayed during a login sequence and to determine how to modify the SchedulerDefinitions.xml file to handle these screens:
A. The disclaimer screen is displayed.
B. The login engine finds and clicks the
button on the disclaimer screen.C. The login engine collects all controls for the login screen.
D. The login engine pushes the static user name to the Username field. The login engine then enters the password supplied from Pega Credentials Manager in the Password field before clicking the Submit button.
Previous topic Scheduling when a Robotic Process Automation robot runs Next topic RPA Service processing flow