The Remote Agent Local UI is an application which can optionally be distributed by providers to allow customers a read-only view of Remote Agent state. It is a separate installation package which needs to be configured/enabled. This page covers the configuration required to enable this application.
The service which enables communications between the Local UI
and the Remote Agent
is configured via the UiService.config
file located in the %programdata%\Connexion.Integrator\Conf
folder. This folder is accessible via the Gateway application, within the sandbox view.
Most changes to the UiService.config
file are automatically detected and no service restart is required.
The UiService.config
file is JSON-formatted with the following structure:
{ "Enabled": "true", "ServicePort": 8765, "Host": "127.0.0.1", "ValidatorType": "Default", "IsQueueFeatureSet1Enabled": "true", "Users": [ { "Username": "admin", "PashHash": "DEA281047A1352237D1B79F3B0C235AC" } ], "ExcludedTabs": [ { "TabName": "Branching", "ExcludedChannels": [ ] } ] }
To enable the service, update the Enabled
variable, and select an appropriate port. You can choose to only enable the service for the remote agent host by setting the Host
to 127.0.0.1
or localhost
. If you wish to enable the service for your local network, you should choose an appropriate host name or IP address (for example, 0.0.0.0
to listen on all network adapters). Ensure the provided host
and port
are not accessible outside your internal network.
Communications between the Local UI and the Remote Agent are TLS encrypted during network transport.
The default ValidatorType
is username and password. Your provider may use a different custom validator for authentication. If using the default validator, users can be added/edited by updating the Users
section of the file. You must manually generate the password and include the MD5 hashed value. This can be done via powershell:
$password = "UserPasswordHere" $md5 = New-Object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider $utf8 = New-Object -TypeName System.Text.UTF8Encoding $hash = [System.BitConverter]::ToString($md5.ComputeHash($utf8.GetBytes($password))) Write-Output($hash)
Be sure to remove any dashes (-
) from the output.
Write access to the UiService.config
file should be restricted to administrators.
The IsQueueFeatureSet1Enabled
variable determines if additional queue functionality is enabled. This includes the ability to re-process messages, manually queue messages etc. Leaving this feature as false
(or omitting the setting altogether) will only allow end-users to view messages and processing history.
The ExcludedTabs
section allows you to exclude one or more tabs from the Local UI
application, or, hide specific channels within a specified tab. If you wish to exclude all channels within a specific tab, enter the TabName
and ensure the ExcludedChannels
array is empty ([]
). If you wish to exclude only specific channels within a tab, then enter the names of the channels to be excluded within the ExcludedChannels
section (“Channel1”, “Channel2”, etc.).
To hide a specific channel, you can also prefix the channel name with $
.
An additional property HelpLink
can be added to the file to supply your own URL to be launched when users click the help icon (example: "HelpLink": "https://UrlToYourSupportPage")
Once the UiService.config
file has been updated, deploy it to the remote agent by uploading via the Gateway UI. You can then install the Local UI by deploying and running the msi package. Once installed, launch the application and fill in the connection details. If a connection cannot be established, the reason should be displayed as part of the connection output.
Detailed debugging of the Local UI
service can be done by inspecting the remote agent log file(s), specifically %programdata%\Connexion.Integrator\logs\Integrator.RemoteAgent.txt
. Debugging of the Local UI application can be done by inspecting the %programdata%\Connexion.Integrator\logs\RemoteAgent.LocalUi.txt
file on the Local UI host.
The Local UI will cache credentials when connecting to a remote agent hosted on another machine. It will not cache credentials if connecting to a remote agent hosted on the same machine. This allows multiple different users RDPing into the remote agent host to supply proper credentials.
Audit information generated by the Local UI is stored on the remote agent host under the %programdata%\Connexion.Integrator\audit
folder. Currently, no viewer is supplied to view audit information. This information should be pulled from the remote agent and put into long-term storage in a similar fashion to both Connexion and Gateway. One option would be to unwrap the audit information and store it within your enterprise audit store, or, push the files to an S3 bucket. A sample channel demonstrating this is attached.
The Remote Agent Local UI
uses a limited set of statistics held by the remote agent. It only has access to a limited set of information and uses this to generate a ‘best-effort’ user interface.
Some known issues are:
Renaming a tab within the Gateway does not translate to the Local UI unless each child channel is saved.