Skip to main content

Plugin Reference

This page details the register address format, plugin properties (channel/device-level configuration), and variable properties (variable-level configuration) for each plugin.

Tip
  • Plugin Properties: Configured at the channel or device level, used to set communication parameters, connection methods, etc.
  • Variable Properties: Configured at the variable level, used to set variable-specific parameters, such as data type, RPC enable, etc.
  • Register Address Format: Only exists in collection plugins, used to specify the address of a variable in a device
  • Address Data Conversion Parameters: Can be appended via semicolon in the register address, used to override the default data parsing method

Address Data Conversion Parameters

In the register address, data conversion parameters can be appended via semicolon (;) to override the plugin's default data parsing method. This allows different variables of the same plugin to use different byte order, string length, or encoding rules.

Scope of Application

General conversion parameters only apply to raw byte communication-based collection plugins (Modbus Master, Siemens S7, DLT645-2007, etc.). Plugins such as OPC UA, OPC DA, MQTT provide typed data directly from the server or JSON, and do not need or support these byte-level conversion parameters.

General Conversion Parameters

The following parameters apply to all collection plugins:

ParameterFormatOptional ValuesDescription
Data Formatdata=ABCDABCD (big-endian), BADC (big-endian byte swap), CDAB (little-endian byte swap), DCBA (little-endian)Byte order for 4-byte data (float/int/uint, etc.)
String Lengthlen=NPositive integerByte length of string type variable, must be specified for string read/write
BCD Formatbcd=C8421C8421, C5421, C2421, C3, GrayBCD encoding format
Character Encodingencoding=UTF-8UTF-8, ASCII, Default, Unicode, etc.String encoding type
Variable-length Stringvsl=truetrue/falseWhether it is a variable-length string (in S7, the first 2 bytes of a variable-length string are the length)

General Examples:

  • 40001;data=CDAB — Holding register, parse float/int using little-endian byte swap format
  • 40001;len=10;encoding=UTF-8 — Holding register, read 10-byte UTF-8 encoded string
  • 40001;bcd=C8421 — Holding register, use BCD 8421 encoding
  • DB1.DBW0;vsl=true;len=20 — S7 data block, variable-length string, max 20 bytes

Plugin-specific Conversion Parameters

Some plugins support unique address parameters in addition to the general parameters:

PluginParameterFormatDescriptionExample
Modbus MasterStation Numbers=NSpecify device station number, override channel default station number40001;s=2
Modbus MasterWrite Function Codew=NSpecify function code for writing (6 or 16)40001;w=16
Modbus MasterFunction Codef=NDirectly specify read function code40001;f=3
Siemens S7Wide StringW=trueEnable WString (wide string/Unicode), in S7 the first 4 bytes are the length headerDB1.DBW0;W=true
Note
  • Conversion parameters and the address, as well as parameters themselves, are separated by semicolon (;)
  • Parameters are case-insensitive (both parameter names and enumeration values)
  • If no conversion parameters are specified, the default values configured in the plugin properties are used
  • String type variables must specify len=N in the address, otherwise read/write will report an error

Collection Plugins

Collection plugins are used to read data from external devices or systems, each collection plugin corresponds to a communication protocol or data source.

Modbus Master

Register Address Format

Address RangeRegister TypeFunction CodeExample
00001~09999Coil Register01 (read) / 05 (write)00001
10001~19999Discrete Input Register02 (read-only)10001
30001~39999Input Register04 (read-only)30001
40001~49999Holding Register03 (read) / 06/16 (write)40001

Modbus-specific Address Parameters (semicolon-separated, see Address Data Conversion Parameters for general conversion parameters):

ParameterFormatDescriptionExample
Station Numbers=NSpecify device station number, override channel default station number40001;s=2
Write Function Codew=NSpecify function code for writing (6 or 16)40001;w=16
Function Codef=NDirectly specify read function code40001;f=3
Bit Index.NSpecify bit index in register40001.3

Examples:

  • 40001 — First holding register
  • 40001;s=2 — First holding register with station number 2
  • 40001;w=16 — First holding register, use 0x10 function code for writing
  • 40001;data=CDAB — Holding register, parse using little-endian byte swap format
  • 40001;len=10;encoding=UTF-8 — Holding register, read 10-byte UTF-8 string

Plugin Properties

After selecting the Modbus Master plugin, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
Modbus TypeEnum-ModbusTcp (TCP format) / ModbusRtu (RTU format)
Default Station NumberByte1Default device station number
FC1 Max Read Coil BitsUInt161600Maximum coil bits per FC1 request; range 1–2000
FC2 Max Read Discrete Input BitsUInt161600Maximum discrete-input bits per FC2 request; range 1–2000
FC3 Max Read Holding RegistersUInt16100Maximum holding registers per FC3 request; range 1–125
FC4 Max Read Input RegistersUInt16100Maximum input registers per FC4 request; range 1–125
FC15 Max Batch-Write Coil BitsUInt161968Maximum coil bits per FC15 request; range 1–1968
FC16 Max Batch-Write RegistersUInt16123Maximum registers per FC16 request; range 1–123
Read/Write TimeoutUInt163000Read/write operation timeout (ms)
Frame Lead TimeInt320Delay time before sending frame (ms)
String Reverse BytesBooleanfalseWhether string bytes are reversed by word
Data Parsing OrderEnum-Data byte order (ABCD/DCBA/BADC/CDAB)
DTU IDString-Default DTU ID
Retry Count on FailureInt323Number of retries on read/write failure
Read/Write Duty RatioInt323One read operation is performed every n write operations
Write PriorityBooleanfalseForce cancel read operation when writing
Upgrade check

The old Modbus Master MaxPack / Max Pack Length field has been removed. After upgrading, open every Modbus Master device and review all six function-code limits; the old value is not automatically mapped. A variable read length or batch write that exceeds its applicable limit is rejected before a frame is built. Lower the limit further when the device supports less than the Modbus protocol maximum.


Siemens S7

Register Address Format

PrefixRegister TypeExampleDescription
IInput (I area)I0.0, IB0, IW0, ID0Supports bit/byte/word/double word
QOutput (Q area)Q0.0, QB0, QW0, QD0Supports bit/byte/word/double word
MMemory (M area)M0.0, MB0, MW0, MD0Supports bit/byte/word/double word
DBData Block (DB area)DB1.DBX0.0, DB1.DBB0, DB1.DBW0, DB1.DBD0Format: DB number.address
AIAnalog InputAI0, AIW0Analog input
AQAnalog OutputAQ0, AQW0Analog output
TTimerT0Timer register
CCounterC0Counter register
VV area (S200 specific)V0, VB0, VW0, VD0Equivalent to DB1

S7-specific Address Parameters (semicolon-separated, see Address Data Conversion Parameters for general conversion parameters):

ParameterFormatDescriptionExample
Wide StringW=true/falseWhether to enable wide string (WString), when enabled string is Unicode encoded, first 4 bytes are length header for non-SMART200DB1.DBW0;W=true

S7 String Description:

  • Normal string (vsl=true): First 2 bytes are length header for non-SMART200, first 1 byte for SMART200
  • Wide string (W=true): First 4 bytes are length header for non-SMART200, first 1 byte for SMART200
  • Fixed-length string (len=N): No length header, directly reads N bytes

Examples:

  • DB1.DBW0 — DB1 data block, word address 0
  • DB1.DBW0;W=true — DB1 data block, wide string
  • DB1.DBW0;vsl=true;len=20 — DB1 data block, variable-length string, max 20 bytes
  • DB1.DBW0;data=CDAB — DB1 data block, use little-endian byte swap format

Address Type Prefix Description:

PrefixDescription
XBit
BByte
WWord (16-bit)
DDouble Word (32-bit)

Plugin Properties

After selecting the Siemens S7 plugin, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
PLC TypeEnum-S200/S200Smart/S300/S400/S1200/S1500
RackByte0Rack number
SlotByte0Slot number
Local TSAPInt320Local TSAP
Max Pack LengthUInt16200Maximum pack length per request
Read/Write TimeoutUInt163000Read/write operation timeout (ms)
Frame Lead TimeInt320Delay time before sending frame (ms)
String Reverse BytesBooleanfalseWhether string bytes are reversed by word
Data Parsing OrderEnum-Data byte order
Retry Count on FailureInt323Number of retries on read/write failure
Read/Write Duty RatioInt323One read operation is performed every n write operations
Write PriorityBooleanfalseForce cancel read operation when writing

DLT645-2007

Register Address Format

DLT645-2007 uses data identifiers as addresses, formatted as 8-digit hexadecimal data identifier codes. See Address Data Conversion Parameters for general conversion parameters.

DLT645-specific Address Parameters (semicolon-separated):

ParameterFormatDescriptionExample
Station Numbers=XXXXXXXXXXXX12-digit meter address02010100;s=111111111111

Common Data Identifiers:

AddressDescription
02010100Phase A voltage
02020100Phase A current
02030000Instantaneous total active power
00000000(Current) Combined active total energy
00010000(Current) Forward active total energy
More Data Identifiers

For complete data identifiers, please refer to the DL/T 645-2007 protocol documentation.

Plugin Properties

After selecting the DLT645-2007 plugin, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
Default AddressString111111111111Default meter address (12 digits)
PasswordString-Communication password
Operator CodeString-Operator code
Preamble HeaderStringFEFEFEFEPreamble header
Read/Write TimeoutUInt163000Read/write operation timeout (ms)
Frame Lead TimeInt320Delay time before sending frame (ms)
String Reverse BytesBooleanfalseWhether string bytes are reversed by word
Data Parsing OrderEnum-Data byte order
DTU IDString-Default DTU ID
Retry Count on FailureInt323Number of retries on read/write failure
Read/Write Duty RatioInt323One read operation is performed every n write operations
Write PriorityBooleanfalseForce cancel read operation when writing

OPC UA Client

Register Address Format

OPC UA uses the node's ItemId as the address, simply fill in the node identifier of the OPC UA server.

Examples:

  • ns=2;s=Channel1.Device1.Tag1
  • ns=2;i=1001

Plugin Properties

After selecting the OPC UA Client plugin, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
Connection URLStringopc.tcp://127.0.0.1:49320OPC UA server address
Login AccountString-Username authentication
Login PasswordString-Password authentication
Data Change TriggerEnumStatusValueSubscription data change trigger condition
Security PolicyBooleanfalseEnable it when the OPC UA server requires a secure session and certificate trust.
Application NameStringThingsGateway_OPC_UA_MasterClient application name shown to the OPC UA server.
CertificateCertificate Selection-Client certificate selected from Certificate Management when secure connection or certificate authentication is required.
Use SourceTimeBooleantrueWhether to use server timestamp
Load Server Data TypesBooleantrueWhether to load server data types
Activate SubscriptionBooleantrueWhether to use subscription mode
Update FrequencyInt321000Subscription update frequency (ms)
DeadbandDouble0Subscription deadband percentage
Max Group SizeInt32500Maximum number of nodes per subscription group
Heartbeat FrequencyInt323000Heartbeat interval (ms)
Retry Count on FailureInt323Number of retries on read/write failure
Read/Write Duty RatioInt323One read operation is performed every n write operations
Write PriorityBooleanfalseForce cancel read operation when writing
Windows Only

The OPC DA plugin only supports Windows systems.


OPC DA Client

Register Address Format

OPC DA uses the node's ItemName as the address, simply fill in the item name of the OPC DA server.

Examples:

  • Channel1.Device1.Group1.Tag1

Plugin Properties

After selecting the OPC DA Client plugin, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
OPC Server IPStringlocalhostOPC DA server IP address
OPC Server NameStringKepware.KEPServerEX.V6OPC DA server ProgID
Server TimeBooleantrueWhether to use server timestamp
Subscription ModeBooleantrueWhether to use subscription mode
Reconnect Detection Frequency (min)Int3210Reconnect detection interval (minutes)
DeadbandFloat0Subscription deadband percentage
Max Group SizeInt32500Maximum number of items per subscription group
Subscription Update FrequencyInt321000Subscription update frequency (ms)
Retry Count on FailureInt323Number of retries on read/write failure
Read/Write Duty RatioInt323One read operation is performed every n write operations
Write PriorityBooleanfalseForce cancel read operation when writing
Windows Only

The OPC DA plugin only supports Windows systems, based on COM/DCOM technology.


MQTT Collection Client

Register Address Format

The variable address format for MQTT collection client is:

${mqtt_topic};${payload_item};${Condition}
PartDescription
mqtt_topicMQTT topic
payload_itemField path in JSON payload (supports . nesting)
ConditionOptional, condition name (determined via script)

Payload Example:

{
"ModuleUnoccupied": {
"EquipId": "E12",
"CarrierId": "C12",
"SubstrateLocId": "S12",
"LotId": 1,
"DesignId": "D12",
"EventTime": "12322131"
}
}

Examples:

  • vendor/device;ModuleUnoccupied.EquipId — Result is "E12"
  • vendor/device;ModuleUnoccupied.EquipId;ConditionName — Returns "E12" when script determines LotId equals 1

Plugin Properties

After selecting the MQTT Collection Client plugin, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
Connection TypeEnumTcpTcp/WebSocket
IP AddressStringlocalhostMQTT server address
PortInt321883MQTT server port
WebSocket PathString/mqttWebSocket connection path
Enable SSLBooleanfalseWhether to use SSL/TLS
SSL Target HostnameString-SSL certificate verification hostname
Client Certificate NameCertificate Selection-Client SSL certificate
CA NameCertificate Selection-CA certificate
Allow Untrusted CertificatesBooleantrueWhether to allow untrusted certificates
SSL Protocol VersionEnumNoneSSL/TLS protocol version
Check Certificate RevocationBooleanfalseWhether to check certificate revocation
Client IDString-MQTT client identifier
UsernameString-Authentication username
PasswordString-Authentication password
Keep AliveInt3260Keep Alive time (seconds)
Clean SessionBooleantrueWhether to clean session
MQTT Protocol VersionEnumV311MQTT protocol version
QoS LevelEnumAtMostOnceQoS level (0/1/2)
Detailed LogBooleanfalseWhether to display detailed log
Connection TimeoutInt323000Connection timeout (ms)
Clean Check TimeInt3260000Clean check time (ms)

MQTT Collection Server

Register Address Format

Same as MQTT collection client address format:

${mqtt_topic};${payload_item};${Condition}

Plugin Properties

After selecting the MQTT Collection Server plugin, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
Connection TypeEnumTcpTcp/WebSocket
PortInt321883MQTT service listening port
WebSocket PathString/mqttWebSocket path
Enable SSLBooleanfalseWhether to use SSL/TLS
Server Certificate NameCertificate Selection-Server SSL certificate
CA NameCertificate Selection-CA certificate
Allow Untrusted CertificatesBooleantrueWhether to allow untrusted certificates
SSL Protocol VersionEnumNoneSSL/TLS protocol version
Check Certificate RevocationBooleanfalseWhether to check certificate revocation
Allowed Connection ID PrefixString-Allowed client ID prefix for connections
UsernameString-Authentication username
PasswordString-Authentication password
Detailed LogBooleanfalseWhether to display detailed log
Clean Check TimeInt3260000Clean check time (ms)

Data Forward Plugins

Data forwarding plugins are used for data processing and forwarding, pushing collected data to external systems.

Modbus Slave

Plugin Properties

After selecting a Modbus Slave target, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
Modbus TypeEnum-ModbusTcp/ModbusRtu
Default Station NumberByte1Default device station number
Data Parsing OrderEnum-Data byte order
String Reverse BytesBooleanfalseWhether string bytes are reversed by word
Multi-station ModeBooleantrueWhether to enable multi-station mode
Allow RPC WriteBooleantrueWhether to allow RPC write
Immediate Write to MemoryBooleantrueWhether to write to memory immediately
Send Delay TimeInt320Send delay time (ms)

Variable Properties

PropertyTypeDefault ValueRequiredDescription
EnabledBooleantrueNoWhether the variable is enabled
Slave Variable AddressString-YesModbus slave variable address
Data TypeEnumInt16NoVariable data type
Allow RPC WriteBooleanfalseNoWhether to allow RPC write

MQTT Client Producer

Plugin Properties

After selecting the MQTT Client Producer target, the plugin property area commonly includes the following configuration items:

MQTT Connection Configuration:

PropertyTypeDefault ValueDescription
Connection TypeEnumTcpTcp/WebSocket
IP AddressStringlocalhostMQTT server address
PortInt321883MQTT server port
WebSocket PathString/mqttWebSocket connection path
Enable SSLBooleanfalseWhether to use SSL/TLS
SSL Target HostnameString-SSL certificate verification hostname
Client Certificate NameCertificate Selection-Client SSL certificate
CA NameCertificate Selection-CA certificate
Allow Untrusted CertificatesBooleantrueWhether to allow untrusted certificates
SSL Protocol VersionEnumNoneSSL/TLS protocol version
Check Certificate RevocationBooleanfalseWhether to check certificate revocation
Client IDString-MQTT client identifier
UsernameString-Authentication username
PasswordString-Authentication password
Keep AliveInt3260Keep Alive time (seconds)
Clean SessionBooleantrueWhether to clean session
MQTT Protocol VersionEnumV311MQTT protocol version
QoS LevelEnumAtMostOnceQoS level (0/1/2)
Retain MessageBooleanfalseWhether to retain message

RPC Configuration:

PropertyTypeDefault ValueDescription
RPC Write TopicString-Write topic, actual is {RpcWrite/+}, return is {RpcWrite/+/Response}
Data Request TopicString-Trigger full upload after receiving data
RPC ScriptScript Selection-MQTT dynamic RPC script

Data Upload Configuration:

PropertyTypeDefault ValueDescription
Enable CacheBooleanfalseWhether to enable offline cache
Cache File Max LinesInt32262144Cache file max lines
Upload List Max CountInt322000Max count per upload
Memory Queue Max CountInt32100000Memory queue max count
Online FilterBooleanfalseOnly upload online device data
Detailed LogBooleanfalseWhether to display detailed log
JSON Indent FormatBooleantrueWhether JSON is indented and formatted
JSON Ignore NullBooleantrueWhether JSON ignores Null values
Device List UploadBooleantrueWhether to upload device list
Variable List UploadBooleantrueWhether to upload variable list
Variable Dictionary UploadBooleanfalseWhen variable list upload is enabled, organize data as device name -> variable name -> variable data.
Alarm List UploadBooleantrueWhether to upload alarm list
Alarm Dictionary UploadBooleanfalseWhen alarm list upload is enabled, organize data as device name -> variable name -> alarm data.
Plugin Event List UploadBooleantrueWhether to upload plugin event list
Device Topic TemplateString-Device data upload topic, supports ${key} matching
Variable Topic TemplateStringThingsGateway/VariableVariable data upload topic
Alarm Topic TemplateString-Alarm data upload topic
Plugin Event Topic TemplateString-Plugin event upload topic
Device Entity ScriptScript Selection-Custom device entity model script
Variable Entity ScriptScript Selection-Custom variable entity model script
Alarm Entity ScriptScript Selection-Custom alarm entity model script
Plugin Event Entity ScriptScript Selection-Custom plugin event entity model script

Variable Properties

PropertyTypeDefault ValueRequiredDescription
EnabledBooleantrueNoWhether the variable is enabled
Data 1~Data 10String-NoCustom data fields
Allow RPC WriteBooleanfalseNoWhether to allow RPC write

MQTT Server Producer

Plugin Properties

After selecting the MQTT Server Producer target, the plugin runs as an MQTT server and commonly includes the following configuration items:

MQTT Server Configuration:

PropertyTypeDefault ValueDescription
Connection TypeEnumTcpTcp/WebSocket
PortInt321883MQTT service listening port
WebSocket PathString/mqttWebSocket path
Enable SSLBooleanfalseWhether to use SSL/TLS
Server Certificate NameCertificate Selection-Server SSL certificate
CA NameCertificate Selection-CA certificate
Allow Untrusted CertificatesBooleantrueWhether to allow untrusted certificates
SSL Protocol VersionEnumNoneSSL/TLS protocol version
Check Certificate RevocationBooleanfalseWhether to check certificate revocation
Allowed Connection ID PrefixString-Allowed client ID prefix for connections
UsernameString-Authentication username
PasswordString-Authentication password
QoS LevelEnumAtMostOnceQoS level
Retain MessageBooleanfalseWhether to retain message
RPC Write TopicString-Write topic
Data Request TopicString-Trigger full upload after receiving data
RPC ScriptScript Selection-MQTT dynamic RPC script

Data upload configuration is the same as MQTT Client Producer.

Variable Properties

Same as MQTT Client Producer variable properties.


OPC UA Server

Plugin Properties

After selecting the OPC UA Server target, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
Service AddressStringopc.tcp://127.0.0.1:49321OPC UA service address (multiple URLs can be set with semicolon separator)
Application NameStringThingsGateway_OPC_UA_ServerOPC UA server application name shown to clients.
Security PolicyBooleanfalseEnable it when OPC UA clients must connect through secure policy and trust the server certificate.
Allow RPC WriteBooleantrueWhether OPC UA clients are allowed to write gateway variables. Disable it for read-only publishing.
UsernameString-OPC UA client login username.
PasswordString-OPC UA client login password.
Server Certificate NameCertificate Selection-Server certificate selected from Certificate Management.

Variable Properties

PropertyTypeDefault ValueRequiredDescription
EnabledBooleantrueNoWhether the variable is enabled
Data TypeEnumObjectNoVariable data type
Allow RPC WriteBooleantrueNoWhether this variable allows writes from OPC UA clients.

Kafka Producer

Plugin Properties

After selecting the Kafka Producer target, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
Service AddressString127.0.0.1:9092Kafka Bootstrap server address
Publish TimeoutInt325000Publish timeout (ms)
UsernameString-SASL authentication username
PasswordString-SASL authentication password
Security ProtocolEnumPlaintextSecurity protocol type
SASL MechanismEnumPlainSASL authentication mechanism

Data upload configuration is the same as MQTT Client Producer.

Variable Properties

PropertyTypeDefault ValueRequiredDescription
EnabledBooleantrueNoWhether the variable is enabled
Data 1~Data 10String-NoCustom data fields

RabbitMQ Producer

Plugin Properties

After selecting the RabbitMQ Producer target, the plugin property area commonly includes the following configuration items:

PropertyTypeDefault ValueDescription
IP AddressStringlocalhostRabbitMQ server address
PortInt325672RabbitMQ server port
UsernameStringguestAuthentication username
PasswordStringguestAuthentication password
Declare QueueBooleanfalseWhether to auto-declare queue
Declare ExchangeBooleanfalseWhether to auto-declare exchange
Exchange TypeStringtopicExchange type (direct/topic/fanout/headers)
Publish TimeoutInt325000Publish timeout (ms)
Virtual HostString/RabbitMQ virtual host
Exchange NameStringTGExchange name

Data upload configuration is the same as MQTT Client Producer.

Variable Properties

PropertyTypeDefault ValueRequiredDescription
EnabledBooleantrueNoWhether the variable is enabled
Data 1~Data 10String-NoCustom data fields

Historical Data Target

Plugin Properties

The historical data target writes variable values into a history database. Whether a value is stored depends on the forwarding group scope, target sampling settings, and optional variable-level sampling settings.

PropertyTypeDefault ValueDescription
Database TypeEnumSqlServerDatabase type used for historical data. The connection string must match this type.
Custom SQL ModeBooleanfalseEnable it only when an existing table structure or custom SQL template is required.
Split Table StrategyEnum-Used to split large history data by time or another strategy.
Connection StringStringExample connection stringDatabase connection information, including server, database, account, password, and encryption options.
Numeric History Table NameStringhistoryNumberValueTable name for numeric variables.
String History Table NameStringhistoryStringValueTable name for string variables.
Retention DaysInt323650Historical data retention period. Check storage capacity before increasing it.
History Table ScriptScript Selection-Custom table creation or write logic. Use it only when the database schema has special requirements.
Time Zone OffsetString+08:00Time zone used when writing timestamps. Confirm it carefully for cross-time-zone deployments or UTC databases.
Force InsertBooleanfalseWrite every received value without reducing records by sampling. This can greatly increase database pressure.
Default Sampling StrategyEnumChangeDefault storage strategy for variables without variable-level settings.
Default Sampling IntervalInt32-Used by interval sampling, in milliseconds.
Default Condition ExpressionString-Used by condition sampling. Data is stored only when the expression condition is met.
Custom Template ConfigDialog-Field template settings used by custom SQL mode.

The historical data target supports offline cache, upload batch size, memory queue limit, offline-data filtering, and upload concurrency. If the database is slow, reduce the upload batch size; if the network is unstable, enable offline cache and check disk capacity.

Variable Properties

PropertyTypeDefault ValueRequiredDescription
Sampling StrategyEnumChangeNoStorage strategy for this variable in the selected historical data target.
Sampling IntervalInt32-NoUsed by interval sampling, in milliseconds.
Condition ExpressionString-NoUsed by condition sampling, such as storing only while equipment is running.

Real-time Data Target

Plugin Properties

The real-time data target writes the latest variable values into a real-time table for external systems to read current state.

PropertyTypeDefault ValueDescription
Database TypeEnumSqlServerDatabase type used for real-time data.
Connection StringStringExample connection stringDatabase connection information. The account needs create, update, and write permissions.
Real-time Table NameStringrealValueTable that stores the latest variable values.
Real-time Table ScriptScript Selection-Custom real-time table structure or write logic.
Time Zone OffsetString+08:00Time zone used when writing timestamps.

The real-time data target also supports cache and queue settings. For high real-time requirements, avoid setting an overly large upload batch size.


Historical Alarm Target

Plugin Properties

The historical alarm target stores alarm and recovery events for traceability, statistics, and export.

PropertyTypeDefault ValueDescription
Database TypeEnumSqlServerDatabase type used for historical alarm records.
Split Table StrategyEnum-Used when alarm volume is large or retention is long.
Connection StringStringExample connection stringHistorical alarm database connection information.
Historical Alarm Table NameStringhistoryAlarmTable that stores alarm events.
Retention DaysInt323650Alarm retention period. It should meet site audit and traceability requirements.
Historical Alarm Table ScriptScript Selection-Custom alarm table structure or write logic.
Time Zone OffsetString+08:00Time zone used when writing alarm event timestamps.
Minimum Alarm LevelInt320Only alarms at this level or higher are stored. Keep it low when all alarms should be recorded.

Webhook

Plugin Properties

After selecting the Webhook target, the variable Topic template is used as the request URL. The default variable URL is http://127.0.0.1:7502/ThingsGateway/Variable.

Webhook also uses the same cache, topic template, entity script, list upload, dictionary upload, and upload template settings as MQTT-style data upload targets.

Variable Properties

PropertyTypeDefault ValueRequiredDescription
EnabledBooleantrueNoWhether the variable is enabled
Data 1~Data 10String-NoCustom data fields

Common Property Description

The following properties are common across multiple plugins and are described here uniformly.

Collection Plugin Common Properties

PropertyTypeDefault ValueDescription
Retry Count on FailureInt323Number of retries on read/write failure
Read/Write Duty RatioInt323One read operation is performed every n write operations
Write PriorityBooleanfalseForce cancel read operation when writing

Cache Common Properties

PropertyTypeDefault ValueDescription
Enable CacheBooleanfalseWhether to enable offline cache
Cache File Max LinesInt32262144Max lines per cache file
Upload List Max CountInt322000Max count per upload
Memory Queue Max CountInt32100000Memory queue max count, transfers to file cache when exceeded
Online FilterBooleanfalseOnly upload online device data
Upload ConcurrencyInt321Number of parallel upload tasks for the same target. Keep it at 1 when strict ordering is required.

Variable Property Common Fields

Data forwarding plugin variable properties include the following custom data fields by default:

PropertyTypeDefault ValueDescription
EnabledBooleantrueWhether the variable is enabled
Data 1String-Custom data field 1
Data 2String-Custom data field 2
Data 3String-Custom data field 3
Data 4String-Custom data field 4
Data 5String-Custom data field 5
Data 6String-Custom data field 6
Data 7String-Custom data field 7
Data 8String-Custom data field 8
Data 9String-Custom data field 9
Data 10String-Custom data field 10