robot
2023.10
false
UiPath logo, featuring letters U and I in white

Robot User Guide

Last updated Dec 18, 2024

Settings fields

The Settings property of the Robot JavaScript SDK allows you to personalize and improve your control over the setup of the browser add-on.

class Settings {
  portNumber: number;
  pollTimeInterval: number;
  disableTelemetry: boolean;
  appOrigin: string;
}class Settings {
  portNumber: number;
  pollTimeInterval: number;
  disableTelemetry: boolean;
  appOrigin: string;
}
AttributeDescription
portNumberAllows you to configure custom ports on which the back-end services run on. The default port number is 2323. Please note that this is only available for Enterprise installations.
pollTimeIntervalAllows you to specify the time in milliseconds in which the Robot JavaScript SDK keeps track of a process execution from a web page. The default value is 250 milliseconds. This value determines the polling frequency from the web browser
disableTelemetryAllows you to disable the telemetry flag. The default value is false.
appOriginAllows you to specify the application which uses the SDK. The default value is picked up from the window.location.origin class.
const robot = UiPathRobot.init();
robot.settings.portNumber = 1234;
robot.settings.pollTimeInterval = 1000; 
robot.settings.disableTelemetry = true; 
robot.settings.appOrigin = 'MyApp';const robot = UiPathRobot.init();
robot.settings.portNumber = 1234;
robot.settings.pollTimeInterval = 1000; 
robot.settings.disableTelemetry = true; 
robot.settings.appOrigin = 'MyApp';

Add-on Settings

In order to change add-on settings you need to create a configuration file named RobotJSAddOn.config in the Robot Add-on folder, namely:

C:\ProgramData\UiPath\Robot JS Add-on\RobotJSAddOn.config

The configuration file needs to contain the following:

<?xml version="1.0" encoding="utf-8"?>
<appSettings>
    <add key="ListenerPort" value="2323" />
    <add key="PortDiscoveryServiceEndpoint" value="http://127.0.0.1:2323" />
    <add key="TokenExpiryInDays" value="30" />
    <add key="AuthenticationProtocol" value="Custom" />
</appSettings><?xml version="1.0" encoding="utf-8"?>
<appSettings>
    <add key="ListenerPort" value="2323" />
    <add key="PortDiscoveryServiceEndpoint" value="http://127.0.0.1:2323" />
    <add key="TokenExpiryInDays" value="30" />
    <add key="AuthenticationProtocol" value="Custom" />
</appSettings>

Attribute

Description

ListenerPort

The UiPath.RobotJS.ServiceHost.exe starts a HttpListener on the configured port and contains the information about other local listeners from the active user session on that system. Please note that the port value here needs to match the one configured in the SDK Settings.

PortDiscoveryServiceEndpoint

The UiPath.RobotJS.UserHost.exe starts a HttpListener on a random port and registers if the listener is running from the UiPath.RobotJS.ServiceHost.exe process. The local listener running on the user session needs to know on which port and endpoint the HttpListener from the UiPath.RobotJS.ServiceHost.exe is running.

TokenExpiryInDays

Any request coming from a new domain needs to have consent from the user to allow access of UiPath® Robots from a web application. These consents are valid for the said number of days mentioned in this setting.

AuthenticationProtocol

The HttpListener instances communicate among themselves using encrypted user information. By default our custom encryption is used to determine user information on the Robot requests. Changing this value to ““ falls back to NTML authentication provided by Windows. Please note that if settings are changed to use NTLM authentication, the browser settings also need to be changed to allow to Windows usernames to be sent along with the requests. This is done as follows:
  • Access Internet Explorer → Tools Settings → Internet Options → Security Tab → Local Intranet or Trusted Sites.
  • Click the Sites button to edit the sites options.
  • Click Advanced to edit the list of UrLs for the zone.
  • Add http://127.0.0.1 to the list of URLs to enable NTLM authentication.

Default Overlay

It is possible to customize the consent screen displayed when a request is raised from a new domain. There are currently two screens that are delivered with the Robot JavaScript SDK:

Consent Prompt
The consent-prompt overlay is displayed when a request to access the UiPath® Assistant is raised from a new domain.


Missing Components
The missing-components overlay is displayed when the required add-on is not present on the local machine.


Overlay messages can be configured as exemplified below.

// Consent code will be written to the console instead of showing default overlay
// Error logged to console when required components are missing insread of showing
// default error overlay
const robot = UiPathRobot.init();
robot.on('consent-prompt', function(consentCode){ console.log(consentCode) });
robot.on('missing-components', function(){ console.log('Missing components') });// Consent code will be written to the console instead of showing default overlay
// Error logged to console when required components are missing insread of showing
// default error overlay
const robot = UiPathRobot.init();
robot.on('consent-prompt', function(consentCode){ console.log(consentCode) });
robot.on('missing-components', function(){ console.log('Missing components') });

SDK Settings

class Settings {
  portNumber: number;
  pollTimeInterval: number;
  disableTelemetry: boolean;
  appOrigin: string;
}class Settings {
  portNumber: number;
  pollTimeInterval: number;
  disableTelemetry: boolean;
  appOrigin: string;
}

Attribute

Description

portNumber

Allows you to configure custom ports on which the back-end services run on. The default port number is 2323. Please note that this is only available for Enterprise installations.

pollTimeInterval

Allows you to specify the time in milliseconds in which the Robot JavaScript SDK keeps track of a process execution from a web page. The default value is 250 milliseconds. This value determines the polling frequency from the web browser

disableTelemetry

Allows you to disable the telemetry flag. The default value is false.

appOrigin

Allows you to specify the application which uses the SDK. The default value is picked up from the window.location.origin class.
const robot = UiPathRobot.init();
robot.settings.portNumber = 1234;
robot.settings.pollTimeInterval = 1000; 
robot.settings.disableTelemetry = true; 
robot.settings.appOrigin = 'MyApp';const robot = UiPathRobot.init();
robot.settings.portNumber = 1234;
robot.settings.pollTimeInterval = 1000; 
robot.settings.disableTelemetry = true; 
robot.settings.appOrigin = 'MyApp';
  • Add-on Settings
  • Default Overlay
  • SDK Settings

Was this page helpful?

Get The Help You Need
Learning RPA - Automation Courses
UiPath Community Forum
Uipath Logo White
Trust and Security
© 2005-2024 UiPath. All rights reserved.