Laiye RPA Worker
We introduced in Chapter 2 that a general RPA platform contains at least three components: production tools, execution tools, and management center.In Laiye RPA, these three components correspond to Laiye RPA Creator, Laiye RPA Worker, and Laiye RPA Commander, respectively (Figure 119).
Some of you might be wondering why we need tools beyond Laiye RPA Creator. For developing processes, Laiye RPA Creator alone is enough. For executing processes, we can also execute single process manually with Laiye RPA Creator. If Laiye RPA can complete all RPA-related tasks, developing, debugging, deploying, and maintaining, why do we need Laiye RPA Worker and Laiye RPA Commander? In other words, what additional value can Laiye RPA Worker and Laiye RPA Commander bring?
To answer this question, we must go back to the original design of RPA, or robotic process automation. RPA is a digital employee that companies "hire" to replace human employees to complete repetitive and tedious work. However, if a company hires an employee, will they be allowed to work as they will without management? Definitely not! First, employees should be able to accept and complete tasks assigned by managers, who coordinate everyone to work towards the same goal. Second, employees from different departments and levels should be able to cooperate and coordinate their work together to complete a complex task. Third, there should be mechanisms in place to supervise and manage the employees' work. When something goes wrong, employees need to deal with it in a timely manner. These functions cannot be provided by Laiye RPA Creator alone, and that's where Laiye RPA Worker and Laiye RPA Commander come in.
If you are just using RPA to for your personal needs, the repetitive tasks you are automating are neither assigned to you by your superior, nor do they require you to coordinate with others, and it's okay if you make a mistake. Then, you can simply use the free community version of Laiye RPA Creator. If you are automating video game interactions, we recommend you use Quick Macro to complete similar tasks. However, if you are providing RPA solutions to an enterprise, Laiye RPA Worker and Laiye RPA Commander are indispensable.
Three Working Modes
Laiye RPA Worker has three different working modes, depending on how Laiye RPA Worker, Laiye RPA Commander, and Laiye RPA Creator interact with each other. Each working mode corresponds to a different type of Laiye RPA Worker licenses: Attended: Node-locked, Attended: Floating License, and Unattended.
The first type is Attended: Node-locked. It authorizes an Laiye RPA Worker on a specific machine (identified by the machine code). The RPA Worker can only run on that machine once the license is bound to the machine. In this case, you don't need RPA Commander to manage multiple RPA Workers, and multiple RPA Worker cannot coordinate with each other to complete complex tasks.
However, in enterprise environments, we often need multiple RPA Workers to coordinate with each other, and therefore a second type of license, Attended: Floating License, is provided. In this mode, there is a RPA Commander that coordinates the entire system and assigns tasks to individual RPA Workers, who then execute the tasks accordingly. In this mode, the user only needs to login with their username, and RPA Workers are identified by their username (instead of their machine codes). Therefore, RPA Workers are no longer bound to a specific machine, but can be deployed and organized according to the availability of computing resources.
The third type of license is Unattended. What does it mean? In the second "Attended: Floating License" mode, although the task of RPA Worker is distributed by RPA Commander, each RPA Worker still has a certain degree of autonomy and can manually execute processes, organize processes, and schedule processes. However, sometimes we don't need this degree of autonomy, and we expect RPA Workers to simply complete the delegated tasks of the RPA Commander. In this case, we can use the Unattended license. An Unattended RPA Worker is directly controlled by a RPA Commander and only executes the instructions of the RPA Commander.
Publish and Import Process
Let's see how we can import a process from RPA Creator to RPA Worker. First, we need to export the process from RPA Creator. Here we need to use the enterprise version of Laiye RPA Creator. Open the process and click the "Publish" button on the toolbar. In the dialog box that pops up, fill in the process name, instructions, and image, and package the process as a .bot file. Keep in mind that typically the person executing the process is different from the person developing the process, and the person executing the process cannot and should not be able to see the implementation details of the process. Thus, the person executing can only distinguish between processes based on their names, instructions, and images. Therefore, the person developing the process should fill in these fields carefully, as they are especially important when there are a large number of processes.
The second step is to import the exported .bot file into RPA Worker. There are two ways to import. The first way is to "import the file from the local computer". On the main interface of RPA Worker, open the "Process" tab, click the "+ Add" button, find "Local process", and then select the .bot file we just exported in the dialog box that pops up. This imports a local process to RPA Worker. Only the Attended: Node-locked and Attended: Floating License modes support local imports, and the Unattended mode does not. The second way is to "import a process online". In the main interface of RPA Worker, open the "Process" tab, click the "+ Add" button, and select "Commander process". A new page will pop up listing all processes assigned to this RPA Worker by the RPA Commander, and the user can select a process to add to "Process". Please note that only the Attended: Floating License mode supports online imports. And RPA Worker in Unattended mode accepts processes sent by RPA Commander.
Process Operation and Schedule Tasks
After a process is successfully imported into RPA Worker, you can open the "Process" tab and browse through all processes on the RPA Worker. We can click the "Run" button to the right of a process to start running it immediately.
In addition to running a process immediately, Laiye RPA Worker also supports "scheduling tasks". This allows us to schedule one-off or regular process execution in an organized manner. RPA Worker provides four types of task scheduling: single run, by date, by week, and by month. We can customize each of these methods to specify start times, frequencies, effective and expiration dates, etc.
The Attended: Node-locked and Attended: Floating License modes support manually running and scheduling processes. RPA Workers with the Unattended license must be scheduled through Laiye RPA Commander, but not directly through RPA Workers.
Through the last two sections, we have learned how to import processes into RPA Workers and how to run or schedule their execution. Then why do we need to group processes? In certain scenarios, one process might depend on the completion of another process. For example, if process B should be run only after process A has completed execution, then we can schedule process A to run on 10:00 AM and process B to run on 10:05 AM. This seems reasonable, but an error could occur to cause process A to not complete its execution by 10:05 AM, and process B would begin execution, not knowing that process A has not completed.
While it is technically possible for Laiye RPA to execute multiple processes on the same computer at the same time, but these processes could compete with each other when operating on the same software and result in unexpected behaviors. Therefore, we do not recommend running multiple processes at the same time. How do we solve this problem? One approach is to increase the execution time interval between process A and B. Most situations can be resolved by this approach, but it is still possible for process A to spill over to process B's runtime. Moreover, if we set the time interval too high, then we are wasting valuable computing times of the RPA Worker by doing nothing between the two processes. The purpose of RPA is to increase productivity. If automating tasks actually lowers work efficiency, then this defeats RPA's primary purpose.
To solve this challenge, Laiye RPA Worker allows you to group multiple dependent processes together to execute them sequentially. Laiye RPA Worker executes the first process in the group, and it starts executing the second process only when the first process is completed, and so on. This allows us to both avoid potential conflicts and minimizes wait time between processes.
In fact, you can treat a process group like any other process. You can execute a process group immediately or schedule it for the future.
RPA Worker allows users to view its operation logs. Open the "Log" tab on the main interface of RPA Worker to see a list of logs for each process run. You can click on the "Details" button associated with each record to see the logs generated by that run. If there are too many records, you can use the buttons on the bottom of the interface to navigate to earlier logs.
Settings and Extensions
RPA Worker supports various custom settings. Click on the "Settings" button on the main interface of RPA Worker. You will see a list of settings:
- Log storage directory specifies the local file directory to store the logs of each process run.
- Auto screen recording, when checked, causes RPA Worker to record the screen during each process run. This allows for easy troubleshooting in the future.
- On startup determines whether to launch Laiye RPA Worker when the computer starts up. You can also specify a process to run on computer startup.
- Switch Authorization allows you change the activation code of this RPA Worker and, with it, the mode of this RPA Worker.
Lastly, the computer RPA Worker runs on must also install the extensions used in its processes to run them properly. Therefore, Laiye RPA Worker, like Laiye RPA Creator, has integrated the extension installation functions to help you easily install Chrome, Firefox, and Java extensions.