# Работа с Citrix

Платформа Sherpa RPA позволяет автоматизировать приложения, работающие в средах виртуализации и окнах удаленного доступа Citrix – как в полноэкранном так и в оконном режиме (режим единственного приложения в окне).

## Установка Sherpa RPA Runtime

На сервере Citrix, к которому будет осуществляться подключение, необходимо установить SherpaRPARuntime.exe в режиме Attended по следующей инструкции:

{% embed url="<https://docs.sherparpa.ru/sherpa-orchestrator/razvertyvanie-platformy-pod-upravleniem-orkestratora/ustanovka-sherpa-rpa-runtime>" %}

После завершения установки рекомендуется перезагрузить сервер.

## Установка плагина Native Citrix

На клиентском компьютере, с которого будет осуществляться подключение к Citrix, необходимо установить плагин Sherpa Native Citrix Plugin по следующей инструкции:

{% embed url="<https://docs.sherparpa.ru/sherpa-robot-i-sherpa-assistant/rabota-v-sherpa-assistant/kontekstnoe-menyu-sherpa-assistant/plaginy/ustanovka-plagina-native-citrix>" %}

## Подключение и работа с Citrix

После установки необходимых компонентов можно приступать к работе с приложениями, запущенными через Citrix. Для этого:

* На локальном компьютере запустите Sherpa Robot.
* Используйте инструмент записи действий для работы с окнами Citrix. Все элементы интерфейса будут подсвечиваться, и селекторы будут записываться как обычно.
* Записанный селектор будет содержать параметр Citrix в первой строке, что позволяет идентифицировать его как элемент, находящийся в среде Citrix.

## Использование блоков Sherpa Designer для работы с Citrix

В палитре блоков «Удаленный рабочий стол RDP/Citrix» Sherpa Designer доступны специальные блоки для работы с RDP/ Citrix.

{% embed url="<https://docs.sherparpa.ru/sherpa-designer/spravochnik-blokov/udalennyi-rabochii-stol-rdp-citrix>" %}

Эти блоки позволяют выполнять действия внутри окон приложений, запущенных через Citrix.

В зависимости от конфигурации Citrix некоторые универсальные блоки, такие как "Создание подключения" или "Подключиться к сеансу", могут работать с RDP подключением, но не работать с Citrix подключением. В этом случае для запуска пользовательской Citrix-сессии выполните с помощью Робота имитацию одного из типовых действий Пользователя, согласно инструкции по эксплуатации Citrix развернутого в конкретном окружении:

* действие для запуска Citrix-сессии;
* действие для запуска целевого приложения в рамках Citrix-сессии.

После того как подключение с Citrix приложению установлено стандартным способом, Робот автоматически сможет выполнять действия в Citrix-окнах находящихся на экране.

## Архитектура взаимодействия

При работе с Citrix, Sherpa RPA использует именованные каналы передачи данных (ICA), которые обеспечивают связь между клиентским Роботом и удаленным runtime, передающим команды пользовательским интерфейсам целевых автоматизируемых приложений, запущенных внутри сессий Citrix.

Технология ICA предоставляется самим Citrix. С помощью этой технологии сам Citrix передаёт изображения, звук и данные. Эта схема позволяет передавать команды и данные между клиентом и сервером без необходимости открывать дополнительные порты, так как все взаимодействие происходит через существующее Citrix-соединение.

Схема взаимодействия компонентов для автоматизации приложений Citrix c\
помощью Роботов Sherpa RPA:

<figure><img src="https://483167589-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpyvTUnAaOD3OMZ1w2jM6%2Fuploads%2FlfaujKfz5Rp5NdTlMOLM%2F%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5.png?alt=media&#x26;token=82de3036-46b4-46aa-9705-4fb729087e19" alt=""><figcaption></figcaption></figure>

  В хорошем качестве схему можно посмотреть здесь:

{% file src="<https://483167589-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpyvTUnAaOD3OMZ1w2jM6%2Fuploads%2FzW8Wk8NOT2GOkjI4647S%2F%D0%94%D0%B8%D0%B0%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0%20%D0%A0%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%20Sherpa%20RPA%20%D1%81%20Citrix.pdf?alt=media&token=4d2881a2-66bf-4718-a0e3-50d6f2d7f2ab>" %}

Поток данных выглядит следующим образом:

```
Робот (Клиент PC)
     ↓
[Вызов RPC]
     ↓
Плагин Sherpa Citrix Plugin, установленный в клиентское приложение Citrix
     ↓
[Виртуальные именованные каналы ICA]
     ↓
Серверная среда Citrix
     ↓
SherpaRPARemote.exe
     ↓
[Именованные каналы]
     ↓
Attended-робот (Сервер Citrix)
     ↓
UI целевого приложения
```

Описание технологии Citrix ICA Virtual Channels:

{% embed url="<https://support.citrix.com/s/article/CTX116890-citrix-ica-virtual-channels-overview?language=en_US>" %}

## Лицензирование компонентов

SherpaRPARuntime.exe, запущенный на стороне Citrix-фермы, не считается самостоятельным Роботом и поэтому не требует Лицензии для своего запуска. Для успешной автоматизации Citrix-приложений действующая Лицензия на Sherpa RPA требуется только на стороне клиентского Робота.

## Примеры использования

Роботы Sherpa могут выполнять различные задачи в среде Citrix, такие как:

* Автоматизация ввода данных в приложения;
* Обработка документов и файлов;
* Выполнение рутинных операций, таких как клик по элементам интерфейса и ввод текста.

Работа с Sherpa RPA в среде Citrix требует выполнения определенных шагов по установке и настройке, однако после этого процесс автоматизации становится простым и эффективным. Использование плагина Native Citrix и правильная настройка компонентов системы позволяют роботам Sherpa взаимодействовать с удаленными приложениями так же, как если бы они работали на локальном компьютере.

На локальном компьютере можно установить любой тип Робота:

* Sherpa Designer + Attended Robot,
* Sherpa Attended Robot,
* Sherpa Unattended Robot.

Именно с локального компьютера будет запускаться и работать сценарий работы Робота.

> Установку плагина необходимо осуществлять от имени администратора (для дальнейшей работы права администратора не нужны).

После этого Робот с клиентской стороны может записывать и воспроизводить действия с помощью селекторов в окнах Citrix.

Подробнее о работе с селекторами:

{% embed url="<https://docs.sherparpa.ru/sherpa-designer/rabota-v-sherpa-designer/paneli-svoistv-i-peremennykh-i-rabota-s-nimi/panel-svoistv/nastroika-selektorov>" %}
