The following API calls are available for the Azure Injector Module and can be executed within any of the
...
available Ignition scopes.
APIs
system.cirruslink.azure.createConfig(type, props) → void
ParametersString type (str)Map propsDictionary of properties making up the configuration with the following keys and datatypes:Cert FilesName (str)
FileName (str)
FileContents (str)
Description (str)
IoT HubsId (long)(cannot be null)
Name (str)
Enabled (strbool)
Protocol (str) "MQTT"
AzureSetId (long)(must be included)
CertAuthEnabled (bool)
ConnectionString (str)
MqttHostname (str)
DeviceId (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory"
MessageCapacity (int)
FlushPeriod (long)
KeepAlive (int)
MaxSize (int)
" or "Disk_Backed" (added 4.0.17)
MessageCapacity (int)(deprecated 4.0.19)
HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int)(added 4.0.19)FlushPeriod Expiration (long)ContentType
H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
ContentEncoding (str) " "NONE" or "APPLICATION_JSON"ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"
AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
CustomTopicExtension (str)
IoT Edges IoT EdgeId (long)(cannot be null)
Name (str)
Enabled (strbool)
Protocol (str) "MQTT"
AzureSetId (long)(must be included)
MqttServerUrl (str)
CertAuthEnabled (bool)
ConnectionString (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HostnameVerification (bool)
MqttHostname (str)
DeviceId (str)
ModuleIdOption (str) "NONE", "ENVIRONMENT_VARIABLE" or "IGNITION_CONFIG"
ModuleId (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory" or "Disk_Backed" (added 4.0.17)
MessageCapacity (int)FlushPeriod (long(deprecated 4.0.19)KeepAlive
HistoryMaxSize (int)(added 4.0.22)- MaxSize
HistoryMaxAge (int)(added 4.0.19) Expiration FlushPeriod (long)
H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"
AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
CustomTopicExtension (str)
IoT CentralsEvent HubsId (long(Long)(cannot be null)Name (str)Enabled (strbool)- ConnectionString
ScopeId (str) EnrollmentGroupSymmetricKey (str)GlobalEndpoint (strHistoryEnabled (bool)- HistoryStoreType
ProvisionedDeviceId (str) "In_Memory" - MessageCapacity
ModelId (intstr) - FlushPeriod
AureSetId (long)(must be included) - MaxSize
HistoryEnabled (intbool) - AzureDateTimeFormat
HistoryStoreType (str) "LONG_MS_SINCE_EPOCHIn_Memory" or "STRINGDisk_AZURE_COMPAT"
AgentsBacked" (added 4.0.17)MessageCapacity (int)(deprecated 4.0.19)HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int)(added 4.0.19)FlushPeriod (long)H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)MaximumSize (int)AzureDateTimeFormat (str) "LONG_MS_SINCE_EPCOH" or "STRING_AZURE_COMPAT"
readConfig | system.cirruslink.azure.readConfig(type) → List
ParametersReturn ValueA List of Dictionaries of properties making up the configurations with the following keys and datatypes:GeneralCert FilesName (str)
FileName (str)
FileContents (str)
Description (str)
IoT HubsId (long)
Name (str)
Enabled (str)
Protocol (str) "MQTT"
AzureSetId (long)
CertAuthEnabled (bool)
ConnectionString (str)
MqttHostname (str)
DeviceId (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory"
MessageCapacity (int)
FlushPeriod (long)
KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
Event HubsSets
Return Value
| Anchor |
|---|
readConfig | IoT EdgeAgentsProtocol MQTTAzureSetId MqttServerUrl strCertAuthEnabled ConnectionString strCaCertFileId ClientCertFileId (long)
ClientPrivateKeyFileId (long)
(must be included)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
FilteredProperties
ClientKeyPassword HostnameVerification )SetsMqttHostname DeviceId ModuleIdOption NONE", "ENVIRONMENT_VARIABLEIGNITIONCONFIGModuleId (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory"
MessageCapacity (int)
FlushPeriod (long)
KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"
AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
CustomTopicExtension (str)
Return ValueA map representing the newly created configuration after it has been written to the database. (added 4.0.16)
system.cirruslink.azure.readConfig(type) → List
ParametersReturn ValueA List of Dictionaries of properties making up the configurations with the following keys and datatypes:GeneralEvent HubsId (long)
Name Enabled (strbool)
Cert FilesEnabled Name (str)
ConnectionString FileName (str)
HistoryEnabled FileContents (boolstr)
HistoryStoreType Description (str) "In_Memory"
IoT HubsAgentsMQTT"
AzureSetId (long)
CertAuthEnabled (bool)
ConnectionString
Id (long)
TagProvider (str)
TagPath MqttHostname (str)
PushTrigger DeviceId (str) "EVENT_DRIVEN" or "PERIODIC"
CaCertFileId TagPacingPeriod (long)
ConvertUdts ClientCertFileId (boollong)
PublishUdtDefinitions ClientPrivateKeyFileId (boollong)
OptimizeUdts ClientKeyPassword (boolstr)
AzureSetId HistoryEnabled (longbool)
AutoDiscover HistoryStoreType (bool)
GroupId (str)
EdgeNodeId (str)
DeviceId (str)
FilteredProperties (str)
Sets
| Anchor |
|---|
updateConfig | updateConfig | system.cirruslink.azure.str) "In_Memory" or "Disk_Backed" (added 4.0.17)
MessageCapacity (int)(deprecated 4.0.19)
HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int)(added 4.0.19)FlushPeriod (long)
H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"
AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
CustomTopicExtension (str)
IoT Edges
updateConfig(type, id, collisionPolicy, props) → voidParameters- ContentType
H2dbDirectory (str)(added 4.0.25) H2dbPort (int)(added 4.0.22)KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
ContentEncoding (str) "NONE"
) "NONE" or "APPLICATION_JSON"ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"
AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
CustomTopicExtension (str)
IoT Edge
IoT Centrals- HostnameVerification
HistoryEnabled (bool) - MqttHostname
HistoryStoreType (str) DeviceId (str)
ModuleIdOption (str) "NONE", "ENVIRONMENT_VARIABLE"In_Memory" or "IGNITIONDisk_CONFIGBacked" ModuleId (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory"
MessageCapacity (int)
FlushPeriod (long)
KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"(added 4.0.17)MessageCapacity (int)(deprecated 4.0.19)HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int)(added 4.0.19)FlushPeriod (long)H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)MaximumSize (int)AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCHEPOCK" or "STRING_AZURE_COMPAT"CustomTopicExtension (str)
Event HubsAgentsSetsReturn Value| Anchor |
|---|
deleteConfig | deleteConfig | system.cirruslink.azure.deleteConfig(type, id) → voidParametersString typeLong idThe ID of the record to delete
Return ValueNone(added 4.0.26)EventHubNamespace (str)(added 4.0.26)EventHubName (str)(added 4.0.26)ClientCertFileId (long)(added 4.0.26)ClientPrivateKeyFileId (long)(added 4.0.26)ClientKeyPassword (str)(added 4.0.26)ConnectionString (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory" or "Disk_Backed" (added 4.0.17)
MessageCapacity (int)(deprecated 4.0.19)
HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int)(added 4.0.19)FlushPeriod (long)
H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)MaxSize (int)
ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
AgentsSets
system.cirruslink.azure.updateConfig(type, id, collisionPolicy, props) → voidParametersType (str)Id (long)The ID of the record to update
collisionPolicy(str)"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 propsDictionary of properties making up the configuration with the following keys and datatypes:GeneralCert FilesName (str)
FileName (str)
FileContents (str)
Description (str)
IoT HubsId (long)
Name (str)
Enabled (str)
Protocol (str) "MQTT"
AzureSetId (long)
CertAuthEnabled (bool)
ConnectionString (str)
MqttHostname (str)
DeviceId (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory" or "Disk_Backed" (added 4.0.17)
MessageCapacity (int)(deprecated 4.0.19)
HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int) (added 4.0.19)FlushPeriod (long)
H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"
AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
CustomTopicExtension (str)
IoT EdgesId (long)
Name (str)
Enabled (str)
Protocol (str) "MQTT"
AzureSetId (long)
MqttServerUrl (str)
CertAuthEnabled (bool)
ConnectionString (str)
CaCertFileId (long)
ClientCertFileId (long)
ClientPrivateKeyFileId (long)
ClientKeyPassword (str)
HostnameVerification (bool)
MqttHostname (str)
DeviceId (str)
ModuleIdOption (str) "NONE", "ENVIRONMENT_VARIABLE" or "IGNITION_CONFIG"
ModuleId (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory" or "Disk_Backed" (added 4.0.17)
MessageCapacity (int)(deprecated 4.0.19)
HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int)(added 4.0.19)FlushPeriod (long)
H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)KeepAlive (int)
MaxSize (int)
Expiration (long)
ContentType (str) "NONE" or "APPLICATION_JSON"
ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"
AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
CustomTopicExtension (str)
IoT CentralsId (long)Name (str)Enabled (bool)ScopeId (str)EnrollmentGroupSymmetricKey (str)GlobalEndpoint (str)ModelId (str)AzureSetId (long)HistoryEnabled (bool)HistoryStoreType (str) "In_Memory" or "Disk_Backed" (added 4.0.17)MessageCapacity (int)(depreacted 4.0.19)HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int)(added 4.0.19)FlushPeriod (long)H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)MaximumSize (int)AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
Event HubsId (long)
Name (str)
Enabled (str)
CertAuthEnabled (bool)(added 4.0.26)TenantId (str)(added 4.0.26)AzureServicePrincipalClientId (str)(added 4.0.26)EventHubNamespace (str)(added 4.0.26)EventHubName (str)(added 4.0.26)ClientCertFileId (long)(added 4.0.26)ClientPrivateKeyFileId (long)(added 4.0.26)ClientKeyPassword (str)(added 4.0.26)ConnectionString (str)
HistoryEnabled (bool)
HistoryStoreType (str) "In_Memory" or "Disk_Backed" (added 4.0.17)
MessageCapacity (int)(deprecated 4.0.19)
HistoryMaxSize (int)(added 4.0.22)HistoryMaxAge (int)(added 4.0.19)FlushPeriod (long)
H2dbDirectory (str)(added 4.0.25)H2dbPort (int)(added 4.0.22)MaxSize (int)
ContentEncoding (str) "NONE", "UTF_8", "UTF_16", or "UTF_32"AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
AgentsSets
Return ValueA map representing the updated configuration after it has been written to the database. (added 4.0.16)
system.cirruslink.azure.deleteConfig(type, id) → void
ParametersType (str)Id (long)The ID of the record to delete
Return ValueTrue if the record was successfully deleted otherwise False (added 4.0.16)
Sample Script
| 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
# Update Certificates
# Get Id for current certificate
savedCerts = system.cirruslink.azure.readConfig("Cert Files")
for config in savedCerts:
if config["Name"] == "My current cert name":
certId = config["Id"]
# Read New Cert File
deviceCaCertFilePath = "/path/to/your/certs/iot-edge-device-ca-CA.cert.pem"
deviceCaCert = open(deviceCaCertFilePath, 'r').read()
# Update existing cert config using MergeOverwrite
certProps = {}
certProps["FileContents"] = deviceCaCert
system.cirruslink.azure.updateConfig(“Cert Files”, certId, “MergeOverwrite”, certProps)
|