Virtual Session Automation Benefits
Jan. 30, 2019
Our client, Dutch company Login VSI offers a suite of software solutions to provide user-experience and application performance. In practice, it can be achieved by running a virtual session (scheduled or on demand) and automatically executing some application on a target machine, which can collect all the required information and report it back for the further processing. Let's check what business problems Virtual Session Automation can solve and what benefits it brings.
Running an application for MS Windows, for example, it's possible by using built-in functionality, which can run any application(s) on startup . However, running a session automatically is a more complicated task and we had to solve it. Together with Login VSI, we figured out the following client’s needs:
- Solution needs to be cross-platform, not only for Windows environments
- Solution needs to be vendor agnostic and work with all SBC, VDI, DaaS and fat clients
- Solution should support a variety of environment types and a way to work with them in a similar way. Entire system should not depend on environment type for running a session.
- Solution needs to support Microsoft RDS, Citrix, VMware
- Software architecture must provide an easy way to add new environment type.
The first idea was building our own client applications for each environment type by implementing the protocols. This solution would have been very flexible, however, it is difficult to implement as vendors are not responsible for keeping protocols open-source, publishing relevant documentation and supporting developers. It makes the idea very time-consumable and not stable because of lacking the information about the protocols. Therefore, we chose the way, when our solution named “Launcher” can interact with third-party client applications (such as Microsoft RDP, Citrix Receiver or Horizon VMware) specifying the information about host/URL, credentials and other parameters, typically provided by user, automatically.
According to the requirements, we choose .NET Core technology, so that our solution would be cross-platform. Launcher has a few connectors inside, one for each supported environment type. It can interact with any of them in the standardized way. Launcher is not responsible only for sending the session request; it also keeps on observing the client status to catch login errors, crashes etc. and provide the information about them.
As soon as we could run the virtual session automatically, it opened the doors for these client’s opportunities:
- monitor if the environment is available and inform a user in case of any problems;
- guarantee (customer and employee) application availability
- detect/predict performance impact on unplanned changes
- verify user experience at different remote locations
- collect the information about hardware and operation system;
- gather the session metrics about latency, CPU usage, memory consumption, network load etc.;
- execute different test scenarios and benchmarking
As we can see, running session automatically takes certain efforts to implement, but it is required to proceed with managing user experience. This solution allows focus on different tasks for business. Automatically running virtual session allows company function 24/7 and ensures that all important processes are fluent.