Support Data Collection from a 32/64-bit Terminal Software
The Desktop Discovery Client supports gathering data from terminal emulator windows. This enhancement allows users to configure specific text from the terminal window to be captured as the processTitle in data collection actions.
The Terminal connector enables you to identify HLLAPI text elements in Terminal applications or in Terminal Emulators. The terminal data collection supports terminals that implement the HLLAPI protocol (API). In addition, it supports multi-instances, which means that you can work with multiple targets and choose to work with the latest (active) target.
To configure the terminal connection:
-
Open the Desktop Discovery Client configuration file.
-
Set IsEnabled to true to activate terminal data collection. The default value is false.
-
Add a new terminal configuration under the Terminals array.
-
Specify the target terminal processes using the ProcessNames field. For example: rocketTE.exe, bzn.exe.
-
Provide the full path to the HLLAPI library DLL.
-
Configure the ScreenTitle section by specifying:
-
StartRow: The row where the title text begins (1-based).
-
StartColumn: The column where the text starts (1-based).
-
Length: The number of characters to read.
-
Sample Configuration File for Terminal
"TerminalDataCollection": {
"IsEnabled": false,
"Terminals": [
{
"ProcessNames": [ "rocketTE.exe", "bzn.exe" ],
"HLLAPIdllPath": "C:\\Program Files\\BlueZone\\10.3\\ehlapi64.dll",
"TerminalWrapper": "HllapiWrapperRocketTE",
"ScreenTitle": {
"StartRow": 1,
"StartColumn": 1,
"Length": 80
}
}
]
},
Sample Terminal Message
{
"type": "ActiveWindow",
"name": "ActiveWindow",
"time": "2025-03-01T17:21:17.0746993+02:00",
"durationSec": 0.5781371,
"windowPosition": null,
"imageGuid": null,
"isCopy": false,
"isPaste": false,
"isSelection": false,
"seGuid": null,
"timeoutReached": false,
"length": 0.0,
"finishTime": null,
"isCtrl": false,
"isAlt": false,
"isShift": false,
"cmd": null,
"eventId": "8b40f40b-1d90-4e52-ab4a-281313d651bd",
"processName": "RocketTE",
"url": null,
"processTitle": "S2 - pub400 - iSeries Display",
"controlIdentifier": "dummyControlIdentifier",
"controlType": "dummyControlType",
"controlClassName": "dummyControlClassName",
"timeInt": 1740842477074,
"textMasked": "",
"controlIdentifierHashed": null,
"processTitleHashed": null,
"textHashed": "",
"index": 0,
"date": "2025-03-01"
},
The value of processTitle (in this example, “S2 - pub400 - iSeries Display”) is taken from the text displayed in the terminal window. The system reads this text from the line, row, and column specified in the configuration file.