Integratec API Platform
|
Each module's post-install configuration is handled by an external file comprised of settings relevant to the given module.
This file is formatted with INI-style settings underneath specific sections. See the below example:
The following filename convention is used: "<Module Name>.opi"
Note: Not all modules use all possible settings.
The following is a detailed list of all possible settings and the modules they pertain to:
-1
is infinite.HeartbeatInterval
results in the amount of time before other Modules are considered expired. Workers will attempt to reconnect to an expired Master, and the Master will disconnect/purge expired Workers.-1
is infinite.Important: Booleans are an integer value of 0 (false) or 1 (true).
The Integratec platform uses a few ranges of TCP and UDP ports, inbound and outbound. These ports must be available for Integratec to function correctly.
The UDP ports we use are statically assigned to 60000 and 60001. These UDP ports are used for discovery only if MasterIP
is blank in the configuration file for a Client API or Worker module.
There are two ranges of sequential TCP ports in use as well, starting with values specified by you in the configuration file.
MasterIP
port range is a sequence of 5 ports.ControlIP
port range is a sequence of 2 ports.For example:
MasterIP=1000
, we will use TCP ports 1000-1004.ControlIP=2000
, we will use TCP ports 2000 and 2001.The following table has more details about port usage. It shows which modules use which ports, and whether the connections are inbound or outbound.
Module | Protocol | Port | Connection |
---|---|---|---|
all | TCP | 5905 | inbound / outbound |
Control Hub | TCP TCP | ControlPort ControlPort + 1 | inbound inbound |
Control Node | TCP | ControlPort + 1 | outbound |
Client API or Worker | TCP UDP | MasterPort to MasterPort + 4 60001 | outbound inbound |
Master | TCP UDP | MasterPort to MasterPort + 4 60000 | inbound inbound |
MasterIP
is unnecessary.MasterPort
specifies the starting point for a range of 5 sequential TCP ports used by the Master. This setting is required, and all connecting modules must set their MasterPort
to the same value.Example:
[Networking] MasterPort=60000 [Configuration] LocalPath=C:\Integratec\ RemotePath=C:\Integratec\ [License] CompanyID=999999 LicensePublicKey=yourkeyhere1 LicenseKeyFile=C:\my\path\to\my\license\key.file
The base library (opApi.dll) uses a configuration file called opApi.opi. Its primary purpose is to configure security, logging, etc. This config file is unnecessary when opening a basic, unencrypted client connection.
A negative ClientConnectionTimeout
value (e.g. -1) is interpreted as an indefinite timeout interval. The Client will not timeout and will wait for a Master at the address specified to connect to.
Example:
[Networking] MasterIP=192.168.0.100 MasterPort=60000 [Configuration] LocalPath=C:\Integratec\ RemotePath=C:\Integratec\
The MinionCount
parameter is not applicable for the Reporting and Address Standardization modules when starting them manually. It is internally set to (1). To take advantage of multiple minions with these modules you must start the process multiple times:
MinionCount
(defaults to 4).ControlIP
is unnecessary.ControlPort
specifies the starting point for a range of two sequential TCP ports used by ControlHub. This setting is required for correctly functioning Control services.Example:
[Networking] ControlPort=50000
Example:
[Networking] ControlIP=192.168.0.200 ControlPort=50000
In addition to the above OPI file, Control Node modules are also installed with "ControlProcesses.txt". This text file contains a list of the processes the Node controls (e.g. start, stop, etc.). See the following example, which allows the Node to control the state of both applications listed:
C:\Integratec\opPresort.exe C:\Integratec\opWorkerHost.exe opReportLib.dll
By adding multiple entries for the same module, you can start multiple instances of the same process. For example, the following entries would start the Address Standardization module four times:
C:\Integratec\opAddrStd.exe C:\Integratec\opAddrStd.exe C:\Integratec\opAddrStd.exe C:\Integratec\opAddrStd.exe
Note: In order for changes to take effect, the Control Node service must be restarted when ControlProcesses.txt is changed.
Messaging encryption is all or nothing - if the Master is configured to use encryption, then all connecting modules must also be, and have the keys necessary to authenticate (as described in the overview).
Turning encryption on, if it was not configured for you during installation, is as simple as adding a section to the configuration files for your Client API, Workers, and Master. See the following example:
[Security] Encryption=1 SecurityKeyFile=key_module.private
Note: The Control services do not operate with message encryption.
Encryption
As indicated in the settings list above, Encryption
is a boolean, that defaults to False (0) if not present.
SecurityKeyFile
The SecurityKeyFile
setting defaults to key_module.private
for non-Master modules, and key_master.private
for the Master module if not present. You may specify a relative or fully qualified path. Relative paths are relative to your LocalPath
.
See the following examples:
Settings | Path Used |
---|---|
SecurityKeyFile=C:/fully/qualified/path/key.file | C:/fully/qualified/path/key.file |
LocalPath=C:/my/local/path SecurityKeyFile=../other/folder/key.file | C:/my/local/other/folder/key.file |
LocalPath=C:/my/local/path SecurityKeyFile=key.file | C:/my/local/path/key.file |