Automation Windows With Shared Sessions for Attended RPA
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional emulators, simulators, virtual machines, and hybrid virtual machines do not effectively address the issues arising with attended automation robots operating on the same computing system as the user, leading to the user being unable to interact with other applications on the machine that require user interaction.
Innovation Solution
The implementation of automation windows that allow for the creation of a child session window and child session within a parent session, enabling both the user and the RPA robot to interact with the same application instances and file system, with the parent and child sessions having access to a common file system, allowing for attended automation and monitoring.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Extent of automation
If the robot controls applications through the user interface in the same manner that the user would, then the robot can automate tasks effectively, but the user becomes unable to interact with other applications on the machine that require user interaction
Solution Approach 1:
The system divides the computing system into multiple sessions (user session and robot session), allowing the user and robot to operate independently in separate sessions while sharing the same computing resources. This segmentation resolves the contradiction by enabling both automation and user interaction simultaneously without interference.
Solution Approach 2:
The patent introduces session management as an intermediary layer between the user and the robot. This intermediary manages session creation, switching, and coordination, allowing the user to interact with applications in one session while the robot operates in another session, thus resolving the conflict between automation and user interaction.
2Reliability
If conventional emulators, simulators, virtual machines, or hybrid virtual machines are used, then the robot can operate in an isolated environment, but the user experience is degraded as the user becomes a spectator for their own computing system
Solution Approach 1:
Instead of using complete virtualization that isolates the robot from the user, the patent segments the system into sessions that allow controlled sharing of resources. The user and robot each have their own session context but can access the same computing system, maintaining reliability while preserving user accessibility.
Solution Approach 2:
The session management system provides multi-functionality by enabling both isolated robot operation and shared user access to the same computing system. This universal approach eliminates the need for separate virtual machines while maintaining the benefits of isolation and collaboration.
3Productivity
If the robot runs on the user's computing system, then resource utilization is efficient, but the user and robot conflict when both need to interact with the same applications
Solution Approach 1:
The patent segments application interactions into session-specific contexts, allowing the user and robot to interact with different instances or views of the same applications without conflict. This maintains efficient resource utilization while ensuring application interaction compatibility through session isolation.
Solution Approach 2:
Each session is given local quality characteristics specific to its needs - the user session maintains interactive capabilities while the robot session maintains automation capabilities. This allows both user and robot to operate efficiently on the same system with their respective requirements met.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Automation windows for robotic process automation (RPA) for attended or unattended robots are disclosed. A child session is created and hosted as a window including the user interfaces (UIs) of applications of a window associated with a parent session. Running multiple sessions allows a robot to operate in this child session while the user interacts with the parent session. The user may thus be able to interact with applications that the robot is not using or the user and the robot may be able to interact with the same application if that application is capable of this functionality. The user and the robot are both interacting with the same application instances and file system. Changes made via the robot and the user in an application will be made as if a single user made them, rather than having the user and the robot each work with separate versions of the applications and file systems.