HostControl Data Access
This chapter outlines all possible native addresses of data access points. These addresses must be configured within the device configuration.
Base Address
A native Host Control address has following format:
{Address base}.{specific address part}
Address base | Description |
---|---|
HumanOS | Information about the HumanOS Installation |
Win32 | Information about the Windows operating system |
Environment | Information about the System environment |
Network | Information about the network adapter and Ip Addresses |
Drive | Information about the drives in windows |
Registry | Information about the registry in windows |
HumanOS Installation
The HumanOS base address contains data points of the HumanOS installation.
Address | Description | Data Type |
---|---|---|
HumanOS.Version | Software version of the HumanOS Installation | System.String |
HumanOS.SystemType | System type of the running HumanOS process. Either "32-bit" or "64-bit" | System.String |
Win32 Data objects
The Win32 base address contains data points of the windows32 com objects. For further information look at Microsoft documentation
Address | Description | Data Type |
---|---|---|
Win32.OperatingSystem | Represents a Windows-based operating system installed on a computer. | System.String |
Win32.BaseBoard | Represents a baseboard, which is also known as a motherboard or system board. | System.String |
Win32.ComputerSystemProduct | Represents a product which includes software and hardware used on this computer system. | System.String |
Win32.ComputerSystem | Represents the computer system hardware and software | System.String |
Win32.Cpu | Represents information about the CPU | System.String |
Win32.QuickFixEngineeringt | Represents information about installed hot fixes | System.String |
Operating System
These values are updated every 500ms.
A native Operating System address has following format:
Win32.OperatingSystem.{OperatingSystem address}
Following Operating System addresses are available:
OperatingSystem address | Data Type |
---|---|
BootDevice | System.String |
BuildNumber | System.String |
BuildType | System.String |
Caption | System.String |
CodeSet | System.String |
CountryCode | System.String |
CreationClassName | System.String |
CSCreationClassName | System.String |
CSDVersion | System.String |
CSName | System.String |
CurrentTimeZone | System.Int16 |
DataExecutionPrevention_Available | System.Boolean |
DataExecutionPrevention_32BitApplications | System.Boolean |
DataExecutionPrevention_Drivers | System.Boolean |
DataExecutionPrevention_SupportPolicy | System.Byte |
Debug | System.Boolean |
Description | System.String |
Distributed | System.Boolean |
EncryptionLevel | System.UInt32 |
ForegroundApplicationBoost | System.Byte |
FreePhysicalMemory | System.UInt64 |
FreeSpaceInPagingFiles | System.UInt64 |
FreeVirtualMemory | System.UInt64 |
InstallDate | System.String |
LargeSystemCache | System.UInt32 |
LastBootUpTime | System.String |
LocalDateTime | System.String |
Locale | System.String |
Manufacturer | System.String |
MaxNumberOfProcesses | System.UInt32 |
MaxProcessMemorySize | System.UInt64 |
MUILanguages | System.String |
Name | System.String |
NumberOfLicensedUsers | System.UInt32 |
NumberOfProcesses | System.UInt32 |
NumberOfUsers | System.UInt32 |
OperatingSystemSKU | System.UInt32 |
Organization | System.String |
OSArchitecture | System.String |
OSLanguage | System.UInt32 |
OSProductSuite | System.UInt32 |
OSType | System.UInt16 |
OtherTypeDescription | System.String |
PAEEnabled | System.Boolean |
PlusProductID | System.String |
PlusVersionNumber | System.String |
PortableOperatingSystem | System.Boolean |
Primary | System.Boolean |
ProductType | System.UInt32 |
RegisteredUser | System.String |
SerialNumber | System.String |
ServicePackMajorVersion | System.UInt16 |
ServicePackMinorVersion | System.UInt16 |
SizeStoredInPagingFiles | System.UInt64 |
Status | System.String |
SuiteMask | System.UInt32 |
SystemDevice | System.String |
SystemDirectory | System.String |
SystemDrive | System.String |
TotalSwapSpaceSize | System.UInt64 |
TotalVirtualMemorySize | System.UInt64 |
TotalVisibleMemorySize | System.UInt64 |
Version | System.String |
WindowsDirectory | System.String |
QuantumLength | System.Byte |
QuantumType | System.Byte |
Example:
{
"Id": "E5E9A472-F41E-4879-B8F3-55EACDFC400E",
"Name": "Hostname",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Win32.OperatingSystem.CSName",
"Access": {
"Read": true,
"Receive": true
}
}
Base Board
A native Base Board address has following format:
Win32.BaseBoard.{BaseBoard address}
Following Base Board addresses are available:
BaseBoard address | Data Type |
---|---|
Caption | System.String |
ConfigOptions | System.String |
CreationClassName | System.String |
Depth | System.Double |
Description | System.String |
Height | System.Double |
HostingBoard | System.Boolean |
HotSwappable | System.Boolean |
InstallDate | System.String |
Manufacturer | System.String |
Model | System.String |
Name | System.String |
OtherIdentifyingInfo | System.String |
PartNumber | System.String |
PoweredOn | System.Boolean |
Product | System.String |
Removable | System.Boolean |
Replaceable | System.Boolean |
RequirementsDescription | System.String |
RequiresDaughterBoard | System.Boolean |
SerialNumber | System.String |
SKU | System.String |
SlotLayout | System.String |
SpecialRequirements | System.Boolean |
Status | System.String |
Tag | System.String |
Version | System.String |
Weight | System.Double |
Width | System.Double |
ComputerSystemProduct
A native address has following format:
Win32.ComputerSystemProduct.{address}
Following addresses are available:
address | Data Type |
---|---|
Caption | System.String |
Description | System.String |
IdentifyingNumber | System.String |
Name | System.String |
SKUNumber | System.String |
Vendor | System.String |
Version | System.String |
UUID | System.String |
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "Computer_UUID",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Win32.ComputerSystemProduct.UUID",
"Access": {
"Read": true,
"Receive": true
}
}
ComputerSystem
A native address has following format:
Win32.ComputerSystem.{address}
Following addresses are available:
address | Data Type |
---|---|
AdminPasswordStatus | System.UInt16 |
AutomaticManagedPagefile | System.Boolean |
AutomaticResetBootOption | System. Boolean |
AutomaticResetCapability | System. Boolean |
BootOptionOnLimit | System. UInt16 |
BootOptionOnWatchDog | System. UInt16 |
DNSHostName | System.String |
Domain | System.String |
TotalPhysicalMemory | System.UInt64 |
.... | System... |
A full List is available in the Microsoft Dev Document "Win32_ComputerSystem class".
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "TotalPhysicalMemory",
"DataType": "System.UInt64",
"DataClass": "Event",
"Address": "Win32.ComputerSystem.TotalPhysicalMemory",
"Access": {
"Read": true,
"Receive": true
}
}
Cpu
These values are updated every 500ms.
A native address has following format:
Win32.Cpu.{address}
Following addresses are available:
address | Data Type |
---|---|
Architecture | System.UInt16 |
LoadPercentage | System. UInt16 |
ProcessorType | System. UInt16 |
NumberOfCores | System.UInt32 |
.... | System... |
A full List is available in the Microsoft Dev Document "Win32_Processor class".
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "LoadPercentage",
"DataType": "System.UInt16",
"DataClass": "Event",
"Address": "Win32.Cpu.LoadPercentage",
"Access": {
"Read": true,
"Receive": true
}
}
QuickFixEngineering
These values are updated every 5 minutes.
A native address has following format:
Win32.QuickFixEngineering.{address}
Following addresses are available:
address | Data Type |
---|---|
Caption | System.String |
CSName | System. String |
HotFixID | System. String |
InstalledOn | System. String |
.... | System... |
A full List is available in the Microsoft Dev Document "Win32_QuickFixEngineering class".
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "HotFixID",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Win32.QuickFixEngineering.HotFixID",
"Access": {
"Read": true,
"Receive": true
}
}
Environment Variables
The environment base address contains data points of the system environment information.
Address | Description | Data Type |
---|---|---|
Environment.SystemType | System Type of WindowsOS (32-bit or 64 bit) | System.String |
Environment.WindowsVersion | Version String of Windows | System.String |
Environment.HostName | Hostname or machine name | System.String |
Environment.DomainName | Domain name to which the user belongs | System.String |
Environment.UserName | Name of current user | System.String |
Environment.UserInteractive | User interactive flag | System.String |
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "Computer name",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Environment.HostName",
"Access": {
"Read": true,
"Receive": true
}
}
Network Configuration
The Network base address contains data points of the Network configuration.
A native address has following format:
Network.{address}*:{Adapter name}*
Address | Description | Data Type |
---|---|---|
ID | Network adapter ID | System.String |
Description | Network adapter description | System.String |
MacAddress | MAC Address of network adapter | System.String |
IPv4Address | All IPv4 addresses associated the specified adapter, separated by “;” | System.String |
IPv4Mask | All IPv4 subnet masks associated to the IPv4Address | System.String |
IPv6Address | All IPv6 addresses associated the specified adapter, separated by “;” | System.String |
Type | Network interface type | System.String |
State | Network interface state: (Dormant, Down, LowerLayerDown, NotPresent, Testing, Unknown, Up) | System.String |
Speed | Speed of network interface | System.Double |
IsReceiveOnly | Receive only flag | System.Boolean |
SupportsMulticast | Supports multicast flag | System.Boolean |
FirstActiveIPv4Address | First active IPv4 Address: (Requires no Adapter name) | System.String |
Adapter Name
The adapter name is the name of the network adapter. This information you find in the command prompt with the command ipconfig.
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "Ethernet 5 MAC Address",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Network.MacAddress:Ethernet 5",
"Access": {
"Read": true,
"Receive": true
}
}
FirstActiveIPv4Address
This value contains the first active IPv4 address of the host. The Address requires no adapter name.
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "FirstActiveIPv4Address Ethernet 5",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Network.FirstActiveIPv4Address:Ethernet 5",
"Access": {
"Read": true,
"Receive": true
}
}
Drive Monitor
These values are updated every 200ms.
The Drive base address contains data points of the rooted drives in windows.
A native address has following format: Important: Write drive letter in uppercase
Drive.{address}*:{DriveLetter}*
Address | Description | Data Type |
---|---|---|
Drive.AvailableDrives | Available drive letters, separated by ‘;’ (Address Requires no drive letter) | System.String |
Drive.VolumeName:… | Volume name of Drive | System.String |
Drive.Type:… | Drive type like Network, Removable, Fixed.. | System.String |
Drive.Format:… | Format of drive (NTFS, FAT, FAT32… | System.String |
Drive.TotalSpace:… | Total space of the drive | System. Double |
Drive.UsedSpace:… | Used space of the drive | System. Double |
Drive.FreeSpace:… | Free space of the drive | System. Double |
Drive.AvailableSpace:… | Available space of the drive | System.Double |
Drive.Ratio:… | Ratio in percent between total and used space | System.Double |
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "Name of Drive C",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Drive.VolumeName:C",
"Access": {
"Read": true,
"Receive": true
}
}
AvailableDrives
This value contains the available drives. The Address requires no drive letter.
Example:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "Available drives",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Drive.AvailableDrives",
"Access": {
"Read": true,
"Receive": true
}
}
Registry Access
These values are updated every 5 minutes.
The registry access is based upon the windows hives. Remember that not all hives are accessible at any time (e.g Current User).
A native address has following format:
Registry.{Hive}*:{KeyAddress}*
Address | Description | Data Type |
---|---|---|
Registry.HKLM:... | Reads a key with its key subsets from local machine hive, multiple entries split by ";" | System.String |
Registry.HKCU:... | Reads a key with its key subsets from current user hive, multiple entries split by ";" | System.String |
Registry.HKU:... | Reads a key with its key subsets from users hive, multiple entries split by ";" | System.String |
Registry.HKCR:... | Reads a key with its key subsets from classes root hive, multiple entries split by ";" | System.String |
Registry.HKCC:... | Reads a key with its key subsets from current config hive, multiple entries split by ";" | System. String |
Example to read installed software:
{
"Id": "84C1B695-61D2-4693-8365-5FC0D2F25286",
"Name": "InstalledSoftware",
"DataType": "System.String",
"DataClass": "Event",
"Address": "Registry.HKLM:SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall",
"Access": {
"Read": true,
"Receive": true
}
}