Contents
Cirrus Link Resources
Cirrus Link Website
Contact Us (Sales/Support)
Forum
Cirrus Link Modules Docs for Ignition 7.9.x
Inductive Resources
Ignition User Manual
Knowledge Base Articles
Inductive University
Forum
The following API modules calls are available for the MQTT Transmission Module and can be executed within any of the available Ignition Designer Script Console scopes.
...
Anchorpublish publish
system.cirruslink.transmission.publish(mqttServerName, topic, payload, qos, retained) → void
Parameters
String mqttServerName
The name of the server connection to use in the MQTT Transmission Server configuration. This must match an existing server name in the configuration.
String topic
The MQTT topic to publish on. This must be a valid MQTT topic
byte[] payload
An array of bytes representing the MQTT payload
int qos
The MQTT 'Quality of Service' to use. This must be either 0, 1, or 2
boolean retained
Whether or not to publish this message with the retained flag set
Return Value
None
AnchorcreateConfig createConfig
system.cirruslink.transmission.createConfig(type, props) → void
Parameters
String type
The type of configuration to create with valid options:
History Stores
Cert Files
Servers
Sets
Transmitters
Records
Files
Map props
Dictionary of properties making up the configuration with the following keys and datatypes:
History Stores
Id (long)
Name (str)
Enabled (bool)
TransmissionHistoryStoreType (str) "In-MemoryIN_MEMORY" or "Disk-BackedDISK_BACKED"
EdgeNodeTagCapacity (int)(deprecated 4.0.19)
DeviceTagCapacity (int)(deprecated 4.0.19)
HistoryMaxAge (int) (added 4.0.19)
FlushQuantity (int)
FlushPeriod (long)
RollingHistoryBufferEnabled (boo)(added 4.0.17)
RollingHistoryMaxAge (int) (added 4.0.17)
RollingHistoryPruneInterval (int)(added 4.0.17)
Cert Files
Id (long)
Cert Files
Id (long)
Name (str)
FileContents (str)
Description (str)
Servers
Id (long)
Name (str)
Url (str)
ServerSetId (str) (must be included)
Username (str)
Password (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HostnameVerification (bool)
TlsAlpnExtensions (str)
ClientId (str)
KeepAlive (int)
RandomStartupDelay (str)
ReconnectDelay (long)
AutoReconnectRpcClient (bool)
DataFormatTypeWrapper (str) "Sparkplug_B_v1_0_Protobuf" or "Sparkplug_B_v1_0_JSON"
Sets
AutoReconnectRpcClient (
longbool)
RpcClientKeyPassword (str)
Description (str(added 4.0.18)
PrimaryHostId RpcClientEnabled (
strbool)
Transmitters
(added 4.0.18)
Name RpcClientPrivateKeyFileId (
strlong)
Enabled (bool(added 4.0.18)
RpcTlsAlpnExtensions (str)
TagPath (str(added 4.0.18)
RpcHostnameVerification (
longbool)
ServerSetId (long(added 4.0.18)
DiscoveryDelay RpcUsername (
longstr)
AliasedTags (bool(added 4.0.18)
CompressionTypeWrapper RpcClientId (
long) "NONE" "DEFLATE" or "GZIP"BlockCommands (bool)
ConvertUdts (bool)
PublishUdtDefinitions (bool)
OptimizeUdts (bool)
CacheBirthsEnabled (bool)
HistoryStoreId (long)
EnableStoreForwardByDefault (bool)
InOrderHistory (bool)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
FilteredProperties (str)
RebirthDebounceDelay (long)
str) (added 4.0.18)
RpcClientCertFileId (long) (added 4.0.18)
RpcPassword (str) (added 4.0.18)
RpcCaCertFileId (long) (added 4.0.18)
Sets
Id (long)
Name (str)
Description (str)
PrimaryHostId (str)
Transmitters
Id (long)
Name (str)
Enabled (bool
Records
Id (long)
TagProvider (str)
TagFolderPath TagPath (str)
RecordType TagPacingPeriod (long)
GroupId ServerSetId (strlong)
EdgeNodeId (strmust be included)
DeviceId DiscoveryDelay (strlong)
OverridePublishTag AliasedTags (bool)
PublishTagPath CompressionTypeWrapper (str)
Files
long) "NONE" "DEFLATE" or "GZIP"
BlockCommands (bool)
ConvertUdts (bool)
PublishUdtDefinitions (bool)
OptimizeUdts
Id (long)
TagProvider (str)
TagFolderPath (str)
EnableAutoPublishing (bool)
FileScanRate CacheBirthsEnabled (intbool)
GroupId HistoryStoreId (strlong)
EnableStoreForwardByDefault (bool)
InOrderHistory (bool)
GroupId (EdgeNodeId (str)
DeviceId EdgeNodeId (str)
MessageSize DeviceId (intstr)
MessagePacingPeriod FilteredProperties (intstr)
MessageAckTimeout RebirthDebounceDelay (intlong)
Return Value
None
Records
Id (long)
TagProvider (str)
TagFolderPath (str)
RecordType (long)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
OverridePublishTag (bool)
PublishTagPath (str)
EnableSignature (bool)(added 4.0.20)
SignaturePassword (str)(added 4.0.20)
HashingAlgorithm (str)(added 4.0.20)"SHA_1","SHA_224","SHA_256","SHA_384" or "SHA_512"
Files
Id (long)
TagProvider (str)
TagFolderPath (str)
EnableAutoPublishing (bool)
FileScanRate (int)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
MessageSize (int)
MessagePacingPeriod (int)
MessageAckTimeout (int)
Return Value
A map representing the newly created configuration after it has been written to the database. (added 4.0.16)
Anchor readConfig readConfig
system.cirruslink.transmission.readConfig(type) → List
Parameters
String type
The type of configuration to read with valid options:
History Stores
General
Cert Files
Servers
Sets
Transmitters
Records
Files
Return Value
A List of Dictionaries of properties making up the configurations with the following keys and datatypes:
History Stores
Id (long)
Name (str)
Enabled (bool)
TransmissionHistoryStoreType (str) "In-Memory" or "Disk-Backed"
EdgeNodeTagCapacity (int)(deprecated 4.0.19)
DeviceTagCapacity (int)(deprecated 4.0.19)
HistoryMaxAge (int)(added 4.0.19)
FlushQuantity (int)
FlushPeriod (long)
RollingHistoryBufferEnabled (bool)(added 4.0.17)
RollingHistoryMaxAge (int)(added 4.0.17)
RollingHistoryPruneInterval (int)(added 4.0.17)
General
Id (long)
Enabled (bool)
AuditProfileRecordId (long)(added 4.0.16)
Cert Files
Id (long)
Name (str)
FileContents (str)
Description (str)
Servers
Id (long)
Name (str)
Url (str)
ServerSetId (str)
Username (str)
Password (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HostnameVerification (bool)
ClientId (str)
KeepAlive (int)
RandomStartupDelay (str)
ReconnectDelay (long)
DataFormatTypeWrapper (str) "Sparkplug_B_v1_0_Protobuf" or "Sparkplug_B_v1_0_JSON"
AutoReconnectRpcClient (bool)
RpcClientKeyPassword (str) (added 4.0.18)
RpcClientEnabled (bool) (added 4.0.18)
RpcClientPrivateKeyFileId (long) (added 4.0.18)
RpcTlsAlpnExtensions (str) (added 4.0.18)
RpcHostnameVerification (bool) (added 4.0.18)
RpcUsername (str) (added 4.0.18)
RpcClientId (str) (added 4.0.18)
RpcClientCertFileId (long) (added 4.0.18)
RpcPassword (str) (added 4.0.18)
RpcCaCertFileId (long) (added 4.0.18)
Sets
Id (long)
Name (str)
Description (str)
PrimaryHostId (str)
Transmitters
Id (long)
Name (str)
Enabled (bool)
TagProvider (str)
TagPath (str)
TagPacingPeriod (long)
ServerSetId (long)
DiscoveryDelay (long)
AliasedTags (bool)
CompressionTypeWrapper (long) "NONE" "DEFLATE" or "GZIP"
BlockCommands (bool)
ConvertUdts (bool)
PublishUdtDefinitions (bool)
OptimizeUdts (bool)
CacheBirthsEnabled (bool)
HistoryStoreId (long)
EnableStoreForwardByDefault (bool)
InOrderHistory (bool)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
FilteredProperties (str)
RebirthDebounceDelay (long)
Records
Id (long)
TagProvider (str)
TagFolderPath (str)
RecordType (long)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
OverridePublishTag (bool)
PublishTagPath (str)
EnableSignature (bool)(added 4.0.20)
SignaturePassword (str)(added 4.0.20)
HashingAlgorithm (str)(added 4.0.20)"SHA_1",SHA_224","SHA_256","SHA_384" or "SHA_512"
Files
Id (long)
TagProvider (str)
TagFolderPath (str)
EnableAutoPublishing (bool)
FileScanRate (int)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
MessageSize (int)
MessagePacingPeriod (int)
MessageAckTimeout (int)
Anchor updateConfig updateConfig
system.cirruslink.transmission.updateConfig(type, id, collisionPolicy, props) → void
Parameters
String type
The type of configuration to update with valid options:
History Stores
General
Cert Files
Servers
Sets
Transmitters
Records
Files
Long id
The ID of the record to update
String collisionPolicy
"MergeOverwrite" or "Overwrite"
"MergeOverwrite" will replace the existing properties in the record ID with only those included in the call
"Overwrite" will replace all properties in the record ID with those in the call
Map props
Dictionary of properties making up the configuration with the following keys and datatypes:
History Stores
Id (long)
Name (str)
Enabled (bool)
TransmissionHistoryStoreType (str) "IN-MEMORY" or "DISK_BACKED"
EdgeNodeTagCapacity (int)(deprecated 4.0.19)
DeviceTagCapacity (int)(deprecated 4.0.19)
HistoryMaxAge (int)(added 4.0.19)
FlushQuantity (int)
FlushPeriod (long)
RollingHistoryBufferEnabled (bool)(added 4.0.17)
RollingHistoryMaxAge (int)(added 4.0.17)
RollingHistoryPruneInterval (int)(added 4.0.17)
General
Id (long)
Enabled (bool)
AuditProfileRecordId (long)(added 4.0.16)
Cert Files
Id (long)
Name (str)
FileContents (str)
Description (str)
Servers
Id (long)
Name (str)
Url (str)
ServerSetId (str)
Username (str)
Password (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HostnameVerification (bool)
ClientId (str)
KeepAlive (int)
RandomStartupDelay (str)
ReconnectDelay (long)
DataFormatTypeWrapper (str) "Sparkplug_B_v1_0_Protobuf" or "Sparkplug_B_v1_0_JSON"
AutoReconnectRpcClient (bool)
RpcClientKeyPassword (str) (added 4.0.18)
RpcClientEnabled (bool) (added 4.0.18)
RpcClientPrivateKeyFileId (long) (added 4.0.18)
RpcTlsAlpnExtensions (str) (added 4.0.18)
RpcHostnameVerification (bool) (added 4.0.18)
RpcUsername (str) (added 4.0.18)
RpcClientId (str) (added 4.0.18)
RpcClientCertFileId (long) (added 4.0.18)
RpcPassword (str) (added 4.0.18)
RpcCaCertFileId (long) (added 4.0.18)
Sets
Parameters
String type
The type of configuration to read with valid options:
History Stores
General
Cert Files
Servers
Sets
Transmitters
Records
Files
Return Value
A List of Dictionaries of properties making up the configurations with the following keys and datatypes:
History Stores
Id (long)
Name (str)
Enabled (bool)
TransmissionHistoryStoreType (str) "In-Memory" or "Disk-Backed"
EdgeNodeTagCapacity (int)
DeviceTagCapacity (int)
FlushQuantity (int)
FlushPeriod (long)
General
Id (long)
Enabled (bool)
Cert Files
Id (long)
Name (str)
FileContents (str)
Description (str)
Servers
Id (long)
Name (str)
Url (str)
ServerSetId (str)
Username (str)
Password (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HostnameVerification (bool)
ClientId (str)
KeepAlive (int)
RandomStartupDelay (str)
ReconnectDelay (long)
AutoReconnectRpcClient (bool)
DataFormatTypeWrapper (str) "Sparkplug_B_v1_0_Protobuf" or "Sparkplug_B_v1_0_JSON"
Sets
Id (long)
Name (str)
Description (str)
PrimaryHostId (str)
Transmitters
Id (long)
Name (str)
Enabled (bool)
TagProvider (str)
TagPath (str)
TagPacingPeriod (long)
ServerSetId (long)
DiscoveryDelay (long)
AliasedTags (bool)
CompressionTypeWrapper (long) "NONE" "DEFLATE" or "GZIP"
BlockCommands (bool)
ConvertUdts (bool)
PublishUdtDefinitions (bool)
OptimizeUdts (bool)
CacheBirthsEnabled (bool)
HistoryStoreId (long)
EnableStoreForwardByDefault (bool)
InOrderHistory (bool)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
FilteredProperties (str)
RebirthDebounceDelay (long)
Records
Id (long)
TagProvider (str)
TagFolderPath (str)
RecordType (long)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
OverridePublishTag (bool)
PublishTagPath (str)
Files
Id (long)
TagProvider (str)
TagFolderPath (str)
EnableAutoPublishing (bool)
FileScanRate (int)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
MessageSize (int)
MessagePacingPeriod (int)
MessageAckTimeout (int)
Parameters
String type
The type of configuration to update with valid options:
History Stores
General
Cert Files
Servers
Sets
Transmitters
Records
Files
Long id
The ID of the record to update
String collisionPolicy
"MergeOverwrite" or "Overwrite"
"MergeOverwrite" will replace the existing properties in the record ID with only those included in the call
"Overwrite" will replace all properties in the record ID with those in the call
Map props
Dictionary of properties making up the configuration with the following keys and datatypes:
History Stores
Id (long)
Name (str)
Enabled (bool)
TransmissionHistoryStoreType (str) "In-Memory" or "Disk-Backed"
EdgeNodeTagCapacity (int)
DeviceTagCapacity (int)
FlushQuantity (int)
FlushPeriod (long)
General
Id (long)
Enabled (bool)
Cert Files
Id (long)
Name (str)
FileContents (str)
Description (str)
Servers
Id (long)
Name (str)
Url Description (str)
ServerSetId PrimaryHostId (str)
Username (str)
Password (str)
Transmitters
Id (CaCertFileId (long)
ClientCertFileId Name (longstr)
ClientPrivateKeyFileId (long)
ClientKeyPassword (strEnabled (bool)
HostnameVerification TagProvider (boolstr)
ClientId TagPath (str)
KeepAlive TagPacingPeriod (intlong)
RandomStartupDelay ServerSetId (strlong)
ReconnectDelay DiscoveryDelay (long)
AutoReconnectRpcClient AliasedTags (bool)
DataFormatTypeWrapper CompressionTypeWrapper (strlong) "Sparkplug_B_v1_0_Protobuf"NONE" "DEFLATE" or "Sparkplug_B_v1_0_JSONGZIP"
Sets
BlockCommands (bool)
ConvertUdts (bool
Id (long)
Name PublishUdtDefinitions (strbool)
Description OptimizeUdts (strbool)
PrimaryHostId CacheBirthsEnabled (strbool)
Transmitters
Id HistoryStoreId (long)
Name EnableStoreForwardByDefault (strbool)
Enabled InOrderHistory (bool)
TagProvider GroupId (str)
TagPath EdgeNodeId (str)
TagPacingPeriod DeviceId (longstr)
ServerSetId FilteredProperties (longstr)
DiscoveryDelay RebirthDebounceDelay (long)
Records
AliasedTags Id (boollong)
CompressionTypeWrapper TagProvider (long) "NONE" "DEFLATE" or "GZIP"
BlockCommands (bool)
ConvertUdts (bool)
PublishUdtDefinitions (bool)
OptimizeUdts (bool)
CacheBirthsEnabled (bool)
HistoryStoreId (long)
EnableStoreForwardByDefault (bool)
InOrderHistory (bool)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
FilteredProperties (str)
RebirthDebounceDelay (long)
str)
TagFolderPath (str)
RecordType (long)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
OverridePublishTag (bool)
PublishTagPath (str)
EnableSignature (bool)(added 4.0.20)
SignaturePassword (str)(added 4.0.20)
Files
Records
Id (long)
TagProvider (str)
TagFolderPath (str)
EnableAutoPublishing (bool)
RecordType FileScanRate (longint)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
MessageSize (int)
MessagePacingPeriod (intOverridePublishTag (bool)
PublishTagPath MessageAckTimeout (strint)
Files
Id (long)
TagProvider (str)
TagFolderPath (str)
EnableAutoPublishing (bool)
FileScanRate (int)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
MessageSize (int)
MessagePacingPeriod (int)
MessageAckTimeout (int)
Return Value
None
Parameters
String type
The type of configuration to delete with valid options:
History Stores
General
Cert Files
Servers
Sets
Transmitters
Records
Files
Long id
The ID of the record to delete
Return Value
None
...
Return Value
A map representing the updated configuration after it has been written to the database. (added 4.0.16)
Anchor deleteConfig deleteConfig
system.cirruslink.transmission.deleteConfig(type, id) → void
Parameters
String type
The type of configuration to delete with valid options:
History Stores
General
Cert Files
Servers
Sets
Transmitters
Records
Files
Long id
The ID of the record to delete
Return Value
True if the record is successfully deleted otherwise False is returned (added 4.0.16)
Anchor | ||||
---|---|---|---|---|
|
Warning |
---|
Cirrus Link provides these scripts as examples only, they are not supported or guaranteed to meet any particular functionality. Cirrus Link cannot provide any assistance to modify these scripts to meet a particular need. |
Code Block | ||
---|---|---|
| ||
# Cirrus Link provides these scripts as examples only, they are not supported or guaranteed to meet any particular functionality. Cirrus Link cannot provide any assistance to modify these scripts to meet a particular need.
|
...
Code Block | ||
---|---|---|
| ||
# MQTT Transmission Create Transmitter logger = system.util.logger("com.cirruslink.examples.transmitter.customtransmitters") # Get the Default Set ID sets = system.cirruslink.transmission.readConfig("Sets") for config in sets: if config["Name"] == "Default": setId = config["Id"] logger.debug("New Set ID: " + str(setId)) # Create Transmitter One transmitterProps = {} transmitterProps["Name"] = "Custom One" transmitterProps["Enabled"] = True transmitterProps["TagProvider"] = "default" transmitterProps["TagPath"] = "" transmitterProps["TagPacingPeriod"] = 1000 transmitterProps["ServerSetId"] = setId transmitterProps["DiscoveryDelay"] = 0 transmitterProps["AliasedTags"] = False transmitterProps["CompressionTypeWrapper"] = "NONE" transmitterProps["BlockCommands"] = False transmitterProps["ConvertUdts"] = True transmitterProps["PublishUdtDefinitions"] = True transmitterProps["OptimizeUdts"] = True transmitterProps["CacheBirthsEnabled"] = False #transmitterProps["HistoryStore"] = None transmitterProps["EnableStoreForwardByDefault"] = True transmitterProps["InOrderHistory"] = False transmitterProps["GroupId"] = "Test1G" transmitterProps["EdgeNodeId"] = "Test1E" transmitterProps["DeviceId"] = None transmitterProps["FilteredProperties"] = "accessRights;clampMode;deadband;deadbandMode;formatString;historicalDeadband;historicalDeadbandMode;historicalDeadbandStyle;historyEnabled;historyMaxAge;historyMaxAgeUnits;historyProvider;historySampleRate;historySampleRateUnits;historyTagGroup;historyTimeDeadband;historyTimeDeadbandUnits;opcItemPath;opcServer;permissionModel;rawHigh;rawLow;sampleMode;scaleFactor;scaleMode;scaledHigh;scaledLow;tagGroup;valueSource;expression;expressionType;ConfiguredTagPath;eventScripts;readPermissions;writePermissions;eventScripts" transmitterProps["RebirthDebounceDelay"] = 5000 system.cirruslink.transmission.createConfig("Transmitters", transmitterProps) # Read Config savedTransmitters = system.cirruslink.transmission.readConfig("Transmitters") for config in savedTransmitters: if config["Name"] == "Custom One": logger.info("Transmitter Config: " + str(config)) customOneId = config["Id"] # Update Config using MergeOverwrite transmitterProps = {} transmitterProps["GroupId"] = "Test2G" transmitterProps["EdgeNodeId"] = "Test2E" system.cirruslink.transmission.updateConfig(“Transmitters”, customOneId, “MergeOverwrite”, transmitterProps) # Update Config using Overwrite transmitterProps = {} transmitterProps["Name"] = "Custom One" transmitterProps["Enabled"] = True transmitterProps["TagProvider"] = "default" transmitterProps["TagPath"] = "" transmitterProps["TagPacingPeriod"] = 1000 transmitterProps["ServerSetId"] = setId transmitterProps["DiscoveryDelay"] = 0 transmitterProps["AliasedTags"] = False transmitterProps["CompressionTypeWrapper"] = "NONE" transmitterProps["BlockCommands"] = False transmitterProps["ConvertUdts"] = True transmitterProps["PublishUdtDefinitions"] = True transmitterProps["OptimizeUdts"] = True transmitterProps["CacheBirthsEnabled"] = False #transmitterProps["HistoryStore"] = None transmitterProps["EnableStoreForwardByDefault"] = True transmitterProps["InOrderHistory"] = False transmitterProps["GroupId"] = "Test2G" transmitterProps["EdgeNodeId"] = "Test2E" transmitterProps["DeviceId"] = None transmitterProps["FilteredProperties"] = "accessRights;clampMode;deadband;deadbandMode;formatString;historicalDeadband;historicalDeadbandMode;historicalDeadbandStyle;historyEnabled;historyMaxAge;historyMaxAgeUnits;historyProvider;historySampleRate;historySampleRateUnits;historyTagGroup;historyTimeDeadband;historyTimeDeadbandUnits;opcItemPath;opcServer;permissionModel;rawHigh;rawLow;sampleMode;scaleFactor;scaleMode;scaledHigh;scaledLow;tagGroup;valueSource;expression;expressionType;ConfiguredTagPath;eventScripts;readPermissions;writePermissions;eventScripts" transmitterProps["RebirthDebounceDelay"] = 5000 system.cirruslink.transmission.updateConfig(“Transmitters”, customOneId, “Overwrite”, transmitterProps) # Delete Config #systemsystem.cirruslink.transmission.deleteConfig("Transmitters", customOneId) |
...