Using Citrix Contexts

From PegaWiki
This is the approved revision of this page, as well as being the most recent.
Jump to navigation Jump to search

Using Citrix Contexts

Description Learn how to create robotic automations that run in a Citrix context.
Version as of 19.1
Application Pega Robotic Process Automation
Capability/Industry Area Robotic Automation

Using Citrix Contexts
This article has been moved over to our Pega Community here in order to align with our larger content strategy. Please update any bookmarks or links that you may have to this location.

Using Citrix contexts

You can use Pega Robotic Automation to create automations that run in the Citrix environment. By using custom Citrix contexts within Robot Studio automations, you can use adapters for applications that run on both the Citrix server and on the Citrix client machine. The Robot Runtime application, which executes the automations, runs on the Citrix server so the user interface and the functionality of the software are available on the client machine as if they were installed there.

How you use Pega Robotic Automation within a Citrix environment depends on your Citrix configuration and where the target applications reside. The target applications are the applications that you automate in your Robot Studio solutions.

The Citrix environment in which Robot Studio is deployed can contain a stand-alone Citrix server or a farm of servers. When configuring Robot Studio, you need to provide either the host address or IP address for the single Citrix server or for the router of the Citrix server farm.

Target applications can reside entirely on the Citrix server or can be distributed between the two as shown in the following figure:

UsingCitrixContexts 01.png

We have a series of Pega Academy modules and challenges that introduce you to robotic automation development for a Citrix environment and show you how to build two simple Windows form solutions that run applications on both the Citrix server and Citrix client desktop using Citrix StoreFront. Citrix StoreFront is an enterprise application store that provides security and helps you manage deployments to Citrix clients. For more information, see Robotic Solution Development for Citrix.

The Pega Academy modules and challenges take you through the steps for the following:

  • Building a solution that includes two simple Windows forms
  • Testing the solution locally to verify that it works
  • Testing the solution on the Citrix server to verify that the connection works
  • Automatically dismissing a Logon Message window

Design considerations

When you build a solution for a Citrix environment, there are certain design considerations you should be aware of:

  • Events must be placed on an automation in the same context where the event is being fired.
  • You cannot use complex controls on a Windows form or appbar in the solution. Examples of complex controls are: data grids, listboxes, listviews, and so on.
  • Avoid using an appbar when the solution runs from the Citrix server because the appbar cannot be docked to the user’s desktop.
  • Robot Studio does not support integration with a Pega application using Robot Runtime through the local REST service. The Pega RDA Service binds to a single port, which is shared for all users on a Citrix server. There is no way to service Robot Runtime running in the Citrix context with a Pega application.
  • All Citrix server applications that are part of the solution should run on a single Citrix server.
  • While it is possible to handle multiple Citrix contexts, avoid doing so because it adds complexity and impedes performance. For more information, contact Pega Support.

Project contexts

Use the Context project item to designate which adapters, automations, and Windows forms are to be launched from the Citrix server and not on a local machine. A context is a location that can be added to a project. Items attached to it reside in the context location.

Robot Studio allows you to select the following types of contexts:

Context Description
Citrix Project items reside on the Citrix server. The Citrix context project item contains a property, Run Local, which when set to True enables all applications to be run from the local desktop while creating and testing the solution. The Citrix context is a custom context created by Pega Robotic Automation for you to use when some of your applications run locally and some run as Citrix-published applications.

When enabled, a dialog appears the first time you run the solution to remind you that all applications are running locally. The dialog appears again if the project is reloaded or is run with the Run Local property set to False.

If a project is deployed to the Citrix server with the Run Local property set to True in the Citrix context configuration, it is ignored.

Local A single Robot Runtime session running on the local machine. This is the project default.

Additional configuration considerations

  • For Citrix XenApp 5.0, 6.0, and 6.5, use the XenApp 6x and Older section for the Citrix context.
  • For Citrix XenApp 7x, use Storefront if it is available on the server. With Storefront, you only have to configure the Storefront Web URL and a setting to use pass-through authentication, in addition to the typical configuration parameters (such as login information if pass-through is not used0, as well as the project to load, and the published application name.
  • When using NetScaler or going through the web interface, use the XenApp WebInterface/NetScaler section of the context properties to specify parameters. When you interact with Citrix in this manner, Robot Runtime starts a hidden application (Openspan.Connectors.Citrix.WebInterfaceNavigation.exe) with an embedded chromium browser. Robot Runtime uses this application to download the Citrix ICA file that needs to be launched.
  • Create a Java script to navigate to the pages that you want and download the ICA file. Copy and paste that Java script into the Custom JavaScript Content property on the context. Robot Runtime then uses that Java script to download the ICA file.

You can also configure some parameters in the Citrix context using an external configuration file. Use the following utility to create the external configuration file:


In this external configuration file, you can configure the following information:

  • User credentials, for example the user name, password, and domain.
  • The published application name.
  • The project to load.
  • Whether the user interface should be shown when running the Openspan.Connectors.Citrix.WebInterfaceNavigation.exe program. Show the user interface when troubleshooting.

Use the External Properties File Path context property to specify the location of the external properties file. Place this file on the machine that initially runs the solution.