Переходите на новый сайт Базы знаний. Актуализация контента происходит теперь там.

Установка агента на Windows
Установка агента на Windows

PIX Agent включен в поставку PIX Studio, начиная с версии 1.12. Его можно установить (опционально) включив соответствующую настройку в установщике PIX.
После успешной установки, на рабочем столе появится соответствующая иконка.
PIX Agent работает в фоновом режиме.
Наличие рабочего экземпляра приложения можно проверить в диспетчере задач или в трее.
Регистрация агента в мастере
Чтобы добавить нового агента в Мастер, необходимо проделать следующие действия:

1) Пройти аутентификацию в Мастере.
2) Перейти в закладку "Агенты" и нажать кнопку [Добавить агента].
3) Заполнить поля Название (имя агента) и Описание (если необходимо).
Поле ID_агента является автогенерируемым. Это уникальный ключ, который необходим для подключения Агента.

4) Нажать кнопку "Сохранить", чтобы создать запись.
Регистрация сертификата
Так как соединение производится через защищенный канал, прежде чем подключить Агента к Мастеру, необходимо добавить сертификат Мастера в доверенные на компьютере, где установлен Агент.
Для этого необходимо:
1) На машине, на которой установлен Агент, запустить Chrome и открыть в нём Мастер.
2) Скачать сертификат, который вызывает конфликт с Chrome.
3) Установить сертификат в доверенные на локальном компьютере.

Для успешной авторизации агента, dns имя сервера и имя кому выдан сертификат должны совпадать.

Если вы не можете перейти по dns имени из поля "кому выдан", можно создать dns запись по адресу "C:\Windows\System32\drivers\etc \hosts".
Подключение Агента к Мастеру

В панель настроек агента можно попасть через специальный пункт меню, нажав двойным щелчком левой кнопкой мыши.
Панель настроек содержит в себе:

- Данные для подключения к Master:
1) URL – ссылка на опубликованный Master. Можно скопировать из браузерной строки.
Выделяется блок до символа «/».

2) Agent ID – идентификатор агента из Master.
- Строка состояния – показывает текущее состояние агента (подключен, не подключен, в процессе подключения).
- Кнопка Подключения/Отключения агента к мастеру.
После заполнения данных, нажмите кнопку «Connect». Если все шаги проделаны корректно и данные в настройках заполнены, Агент покажет статус «Подключен».

Дополнительно, можно проверить индикатор подключения в списке «Agents» в Мастере (у соответствующего агента индикатор будет зеленого цвета.

Возможен единовременно запуск только одной задачи на Агенте
В PIX Agent существует контроль, делающий невозможным запуск более одной задачи на Агенте.
При запуске задач из Master - будет возвращаться статус, что агент уже занят выполнением задачи и задача будет завершаться со статусом Failed.
Переключатель для старого и нового RDP-клиента
В PIX Studio 2.16.2 для взаимодействия с удалённым рабочим столом RDP (Remote Desktop Protocol) была реализована поддержка криптографического протокола TLS 1.2, обеспечивающего более защищённую передачу данных, чем ранее использовавшийся TLS 1.0.
RDP-сессию запускает новый клиент - приложение wfreerdp.exe.
В некоторых случаях работа нового RDP-клиента приводит к ошибкам в работе роботов, в т.ч. тех, что исправно работали на предыдущих версиях PIX Studio и PIX Agent, поэтому в версию PIX Studio начиная с версии 2.16.5 добавлена возможность переключаться между старым и новым RDP-клиентом (FreeRdpClient.exe и wfreerdp.exe). По умолчанию используется прежний RDP-клиент - FreeRdpClient.exe.
    В пользовательский интерфейсе имеется флажок для включения старого RDP-клиента (R).

    В интерфейсе командной строки для команды connect существует переключатель
    --legacy-session-auth, который принимает значения true или false.
    Если его не указывать, то будет считаться, что этот переключатель имеет значение true. Переключатель в первую очередь нужен для задания режима при запуске агента через хост.
      Робот в отдельном процессе
      Для повышения устойчивости работы PIX Agent есть возможность запуска Робота в отдельном от Агента процессе с целью уменьшения использования памяти агентом в рамках одного процесса. Агенту при раздельном запуске не потребуется держать для себя в памяти библиотеки активностей, поскольку они используются только роботом. При таком запуске Агент является посредником для связи с PIX Master, служащим для передачи данных и актуального статуса выполнения скрипта роботом.

      Схема работы при запуске Робота в отдельном процессе:
      • В интерфейсе Агента установить чекбокс "В отдельном процессе" (R).

      *) По умолчанию, чекбокс не активен.
      • Робот запускается из Агента с параметрами.
      • Робот, выполняя скрипт, обменивается с Агентом сообщениями: логами, командами, запросами к PIX Master.
      • Агент отправляет запросы PIX Master, ждёт ответа от Master.
      • Получив данные от Master - Агент отправляет их Роботу.
        В логах PIX Master теперь сохраняется информация о том, в каком режиме был запущен робот:

        Переключатель для старого и нового RDP-клиента

        RDP-сессию запускает новый клиент - приложение wfreerdp.exe. В некоторых случаях работа нового RDP-клиента приводит к ошибкам в работе роботов, в т.ч. тех, что исправно работали на предыдущих версиях PIX Studio и PIX Agent. С помощью флажка включения старого RDP-клиента (O), можно переключаться между старым RDP-клиентом (FreeRdpClient.exe) и новым (wfreerdp.exe). По умолчанию используется RDP-клиент - FreeRdpClient.exe.

        В интерфейс командной строки для команды connect был существует переключатель
        --legacy-session-auth, который принимает значения true или false.
        Если его не указывать, то будет считаться, что этот переключатель имеет значение true. Переключатель в первую очередь нужен для задания режима при запуске агента через хост.
          Настройки RDP-клиента в appsettings.json :
          
             "HostHubConnectionOptions": {
               "MasterUri": "https://localhost:5001",
               "MachineId": "00000000-0000-0000-0000-000000000000" 
             },
          +  "RdpOptions": {
          +   "UseLegacyRdpClient": true
          +  },
          +  "AgentOptions": {
          +    "UseLegacyRdpClient": true
          +  }
           }
          
          
          Настройка в блоке RdpOptions определяет, какой RDP-клиент хост будет использовать при поднятии сессии для Agent.
          Настройка в блоке AgentOptions определяет, какой RDP-клиент Agent будет использовать для удержания RDP-сессии (аналогичная настройка, что и в пользовательском интерфейсе).
            При обновлении Agent.Host новые блоки в конфигурации добавлены не будут, и если пользователю требуется воспользоваться этими настройками, то их необходимо будет добавить вручную.
            Визуализация потери связи с Agent.
            В случае, когда соединение с Агентом будет утеряно во время выполнения задачи – иконка связи с агентом будет оранжевого цвета. При восстановления соединения – агент будет помечаться зеленым.

            Режим принудительного перезапуска агента в любом случае.
            До версии Master 2.15.3 в случаях, если происходила нештатная остановка Agent, то Master прекращал запуск задач на этом Agent до тех пор, пока администратор не перезапустит его вручную.

            Предполагалось, что эта ситуация требует обязательного вмешательства и разбора со стороны администраторов.

            Теперь для Master в appsettings.json возможно добавить новый параметр:
            "ReuseFailedAgent": true
            С этим параметром Master будет производить самостоятельные попытки перезапуска Agent.
            Механизм получения сигналов о системном сбое от Agent Host.
            PIX Master поддерживает получение сигналов от Agent Host о нештатном завершении работы Agent (В этом случае Agent сам не может отправить никаких сигналов на Master, что провоцирует зависание обработки очереди заданий).
            Получив сигнал от Agent Host - Master принудительно помечает Задачу как незавершенную, изменяя ее статус на Disconnected.
            Блокировка передачи учетных данных Агента, если не настроено удержание RDP-сессии.
            При запросе данных Агента от AgentHostService проверяется установлен ли для Агента флаг "С учетными данными" (С) (используется для удержание RDP-сессии).

            Если флаг снят, то логин и пароль при запросе не передаются, при этом в логе сохраняется запись об ошибке "Login cannot be empty".