The prevalence of virtualisation and the use of remote desktop technologies such as Citrix and Microsoft RDS within the IT industry creates a key problem for traditional Robotic Process Automation (RPA) software.
Current RPA technologies are well equipped for native automation and can easily interact with the Win32, Active Accessibility (AA) and UI Automation (UIA) API’s of locally installed applications, however with remote applications there is limited support as the target application is virtual and therefore the functionality normally exposed via the API’s is lost. Whilst some progress has been made in recent years with improvements in AI, Computer Vision and OCR capabilities, these technologies still do not provide the same level of reliability and functionality as interacting with the target application natively.
This often means that as an automation developer, the only option available to you is Surface Automation. This technique relies on defining screen regions and using OCR and image recognition to interact with the target application via global mouse clicks and keyboard input. With Surface Automation, the developer must frequently validate images of the screen to determine the current state of the application because a large amount of built-in functionality is unavailable, adding a significant development and processing overhead. In addition to this, debugging the solution can be extremely time-consuming because the process data is extracted from images which need to be analysed to conduct root cause analysis.
Utilising Surface Automation, commonly used applications such as Microsoft Excel become extremely complicated to interact with because every cell visually looks the same. The reduced functionality impacts the reliability and speed of an automated process, making it extremely sensitive to changes in screen layout, resolution and the quality of the image received. It also restricts the process to only what is visible on the screen, meaning something as simple as detecting the existence of a file on disk becomes a complicated task. These issues all add complexity and ultimately cost to automation projects and reduces the efficiency improvements and cost savings that are typically realised by utilising RPA.
As a Citrix Platinum Partner, Ultima have a deep understanding of these technologies and leveraging that understanding we have been able to create a solution to this problem, IA-Connect. IA-Connect has been developed in-house and certified as Citrix Ready, providing us and our clients the ability to automate processes through Citrix virtual channels and create automations in almost the same manner as any other automation development. This functionality has also been extended to Microsoft Remote Desktop Services, meaning we can use existing infrastructure to automate virtual applications with no need to install applications on our virtual workers. The ability to push commands via the virtual channels also gives the developer back all the in-built functionality which is lost through Surface Automation.
IA-Connect has allowed Ultima to automate several remote internal processes and reduce our costs by improving process efficiency and also to cut down on-boarding times for automating processes for new managed services customers within our Technical Service Centre (TSC) from months to a single day by removing a number of security challenges as our virtual workers can simply access applications wherever they are, via Citrix or RDS. This gives the customer full control over their security as access is restricted via the AD account used to authenticate with their domain. Development time for new processes using IA-Connect are almost identical to standard processes, with only a small amount of extra configuration required during the initial setup to configure the IA-Connect license and executable.
Personally, I have found development with IA-Connect to be extremely easy and I have been able to achieve everything that I could do locally via a remote session. By simply passing an additional parameter to each automation action, I can determine whether the action runs locally or via the remote session. This design means that existing automations can be transformed into remote automations with minimal effort. With minimal prior experience of Citrix automation, I was able to learn the IA-Connect tool within a few days and begin developing on complex automations. Using IA-Connect, controlling applications such as Microsoft Word, Excel, Outlook and Google Chrome which would be problematic via Surface Automation is as simple as interacting with them locally and with the same capabilities that can be used with the applications running locally.
Having experience with Surface Automation in the past, I have always been reluctant to use it as a last resort because it is extremely time consuming and difficult to build a resilient process that I have confidence in and would be happy giving to a customer. With IA-Connect, I have been able to build resilient and robust processes that I am confident will work reliably and will run as efficiently as a local process, meaning automating over remote sessions is usually a preference and no longer a last resort.
If you would like to find out how IA-Connect can benefit your business, get in touch today!
Written by Luke McGovern, Automation Consultant
An intelligent financial services firm is nimble, slick and clever. It out-performs its competitors by out-innovating them...
Successful execution of strategy requires alignment in every part of the business. Pockets of excellence are not enough. You need intelligence at every level – from the foundations up...
An intelligent business is nimble, slick and clever. It out-performs its competitors by out-innovating them. And it’s built on intelligent infrastructure from the foundations up...