Built-in configs

Controller configs

CommTestController

config/default.conf
[controllers]
CommTestController = 1

[sources]
CommTestSource = 1

[CommTestSource]
controller = CommTestController

[CommTestController]

ConcurrentWebRequestController

config/default.conf
[controllers]
ConcurrentWebRequestController = 1

[sources]
ConcurrentWebRequestSource = 1

[ConcurrentWebRequestSource]
controller = ConcurrentWebRequestController

[ConcurrentWebRequestController]
requirements.txt
 aiohttp

CrontabController

config/default.conf
[controllers]
CrontabController = 1

[sources]
CrontabSource = 1

[CrontabSource]
controller = CrontabController

[CrontabController]
requirements.txt
 crontab

InfluxDBLoggerController

config/default.conf
[rules]
InfluxDBLoggerRule = 1

[controllers]
InfluxDBLoggerController = 1

[sources]
InfluxDBLoggerSource = 1

[InfluxDBLoggerSource]
controller = InfluxDBLoggerController

[InfluxDBLoggerRule]
auto_logging_on = 1

[InfluxDBLoggerController]
dsn = influxdb:///Database-Name
requirements.txt
 influxdb

InternalController

config/default.conf
[controllers]
InternalController = 1

[sources]
InternalSource = 1

[InternalSource]
controller = InternalController

[InternalController]

ModbusServerController

config/default.conf
[controllers]
ModbusServerController = 1

[sources]
HoldingRegisterSource = 1

[HoldingRegisterSource]
controller = ModbusServerController

[ModbusServerController]

[ModbusServerController_devices]
ModbusServerController_device0 = 1

[ModbusServerController_device0]
requirements.txt
 pymodbus

MQTTDataMessageController

config/default.conf
[controllers]
MQTTDataMessageController = 1

[sources]
MQTTDataMessageSource = 1

[MQTTDataMessageSource]
controller = MQTTDataMessageController

[MQTTDataMessageController]
requirements.txt
 paho-mqtt

NewControllerTemplate

config/default.conf
[controllers]
NewControllerTemplate = 1

[sources]
NewSourceTemplate = 1

[NewSourceTemplate]
controller = NewControllerTemplate

[NewControllerTemplate]

OPCUAServerController

config/default.conf
[controllers]
OPCUAServerController = 1

[sources]
VariantSource = 1
BytestringSource = 1

[VariantSource]
controller = OPCUAServerController

[BytestringSource]
controller = OPCUAServerController

[OPCUAServerController]
requirements.txt
 freeopcua

SubprocessController

config/default.conf
[controllers]
SubprocessController = 1

[sources]
SubprocessSource = 1

[SubprocessSource]
controller = SubprocessController

[SubprocessController]

SystemMonitorController

config/default.conf
[controllers]
SystemMonitorController = 1

[sources]
SystemMonitorSource = 1

[SystemMonitorSource]
controller = SystemMonitorController

[SystemMonitorByteSource]
controller = SystemMonitorController

[SystemMonitorPercentSource]
controller = SystemMonitorController
requirements.txt
 psutil

XmlRpcController

config/default.conf
[controllers]
XmlRpcController = 1

[sources]
XmlRpcMethodCallSource = 1

[XmlRpcMethodCallSource]
controller = XmlRpcController

[XmlRpcController]

ZmqDataAccessController

config/default.conf
[controllers]
ZmqDataAccessController = 1

[sources]
ZmqDataAccessSource = 1

[ZmqDataAccessSource]
controller = ZmqDataAccessController

[ZmqDataAccessController]
requirements.txt
 pyzmq

Rule configs

CSVRule

config/default.conf
[rules]
CSVRule = 1

[CSVRule]
example_rule_101 = 1
example_rule_102 = 1

[example_rule_101]
csv = config/example_rule_101.csv
py = config/example_rule_101.py

[example_rule_102]
csv = config/example_rule_102.csv
py = config/example_rule_102.py
config/example_rule_101.csv
 IntegerSource,TextSource
 example-data1-as-int,example-data1-as-text
 example-data2-as-int,example-data2-as-text
config/example_rule_101.py
 def setup(shared):
     pass

 def expression(intdata, textdata):
     pass

InfluxDBLoggerRule

config/default.conf
[rules]
InfluxDBLoggerRule = 1

[InfluxDBLoggerRule]
auto_logging_on = 1
requirements.txt
 influxdb

INIRule

config/default.conf
[rules]
INIRule = 1

[INIRule]
example_rule_101 = config/example_rule_101.ini
example_rule_102 = config/example_rule_102.ini
config/example_rule_101.ini
[example_rule_101]
on = 1
parsers = IntegerSource, TextSource
module = config/example_rule_101.py
setup = setup
expression = expression
arguments =
    IntegerSource(example-data1-as-int), TextSource(example-data1-as-text)
    IntegerSource(example-data2-as-int), TextSource(example-data2-as-text)
config/example_rule_101.py
 def setup(shared):
     pass

 def expression(intdata, textdata):
     pass

YAMLRule

config/default.conf
[rules]
YAMLRule = 1

[YAMLRule]
example_rule_101 = config/example_rule_101.yaml
example_rule_102 = config/example_rule_102.yaml
config/example_rule_101.yaml
parsers:
  - source: IntegerSource
  - source: TextSource

expressions:
  - module: config/example_rule_101.py
    setup: setup
    expression: expression
    arguments:
      - source: IntegerSource
        key:    example-data1-as-int

      - source: TextSource
        key:    example-data1-as-text

  - module: config/example_rule_101.py
    setup: setup
    expression: expression
    arguments:
      - source: IntegerSource
        key:    example-data2-as-int

      - source: TextSource
        key:    example-data2-as-text
config/example_rule_101.py
def setup(shared):
    pass

def expression(intdata, textdata):
    pass
requirements.txt
PyYAML