Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The following API calls are available for the Azure Injector Module and can be executed within any of the available Ignition scopes.

APIs

  • Anchor
    createConfig
    createConfig
    system.cirruslink.azure.createConfig(type, props) → void

    • Parameters
      • String type (str)
        • The type of configuration to create with valid options:

          • "Cert Files"
          • "IoT Hubs"
          • "IoT Edges"
          • "IoT EdgeCentrals"
          • "Event Hubs"
          • "Agents"
          • "Sets"
      • Map props
        • Dictionary of properties making up the configuration with the following keys and datatypes:
          • Cert Files
            • Name (str)

            • FileName (str)

            • FileContents (str)

            • Description (str)

          • IoT Hubs
            • Id (long)

            • Name (str)

            • Enabled (bool)

            • 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" 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)

            • 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
            • Id (long)

            • Name (str)

            • Enabled (bool)

            • 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)(deprecated 4.0.19)

            • HistoryMaxSize (int)(added 4.0.22)
            • HistoryMaxAge (int)(added 4.0.19)
            • FlushPeriod (long)

            • 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 Centrals
            • Id (Long)
            • Name (str)
            • Enabled (bool)
            • ScopeId (str)
            • EnrollmentGroupSymmetricKey (str)
            • GlobalEndpoint (str)
            • ProvisionedDeviceId (str)
            • ModelId (str)
            • AureSetId (long)(must be included)
            • 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)
            • H2dbPort (int)(added 4.0.22)
            • MaximumSize (int)
            • AzureDateTimeFormat (str) "LONG_MS_SINCE_EPCOH" or "STRING_AZURE_COMPAT"
      Return ValueNone
          • Event Hubs
            • Id (long)

            • Name (str)

            • Enabled (bool)

            • AzureSetId(long)(must be included)

            • 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)

            • H2dbPort (int)(added 4.0.22)
            • MaxSize (int)

            • AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"

          • Agents
            • Id (long)

            • Name (str) (added 4.0.17)
            • Enabled (bool) (added 4.0.17)
            • TagProvider (str)

            • TagPath (str)

            • PushTrigger (str) "EVENT_DRIVEN" or "PERIODIC"

            • TagPacingPeriod (long)

            • ConvertUdts (bool)

            • PublishUdtDefinitions (bool)

            • OptimizeUdts (bool)

            • AzureSetId (long)(must be included)

            • GroupId (str)

            • EdgeNodeId (str)

            • DeviceId (str)

            • FilteredProperties (str)

          • Sets
            • Id (long)

            • Name (str)

            • Description (str)

            • PushPolicy (str) "PUSH_TO_ALL" or "PUSH_TO_ANY"

    • 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.azure.readConfig(type) → List

    • Parameters
      • String type (str)
        • The type of configuration to read with valid options:

          • "General"
          • "Cert Files"
          • "IoT Hubs"
          • IoT Edge
          • "IoT Edges"
          • "IoT Centrals"
          • "Event Hubs"
          • "Agents"
          • "Sets"
    • Return Value
      • A List of Dictionaries of properties making up the configurations with the following keys and datatypes:
        • General
          • Id (long)

          • Enabled (bool)

        • Cert Files
          • Name (str)

          • FileName (str)

          • FileContents (str)

          • Description (str)

        • IoT Hubs
          • Id (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)

          • 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
          • Id (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)

          • 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 Centrals
          • Id (long)
          • Name (str)
          • Enabled (bool)
          • ScopeId (str)
          • EnrollmentGroupSymmetricKey (str)
          • GlobalEndpoint (str)
          • ProvisionedDeviceId (str)
          • ModelId (str)
          • AzureSetId (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)
          • H2dbPort (int)(added 4.0.22)
          • MaximumSize (int)
          • AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCK" or "STRING_AZURE_COMPAT"
        • Event Hubs
          • Id (long)

          • Name (str)

          • Enabled (str)

          • 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)

          • H2dbPort (int)(added 4.0.22)
          • MaxSize (int)

          • AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"

        • Agents
          • Id (long)

          • Name (str) (added 4.0.17)
          • Enabled (bool) (added 4.0.17)
          • TagProvider (str)

          • TagPath (str)

          • PushTrigger (str) "EVENT_DRIVEN" or "PERIODIC"

          • TagPacingPeriod (long)

          • ConvertUdts (bool)

          • PublishUdtDefinitions (bool)

          • OptimizeUdts (bool)

          • AzureSetId (long)

          • GroupId (str)

          • EdgeNodeId (str)

          • DeviceId (str)

          • FilteredProperties (str)

        • Sets
          • Id (long)

          • Name (str)

          • Description (str)

          • PushPolicy (str) "PUSH_TO_ALL" or "PUSH_TO_ANY"

  • Anchor
    updateConfig
    updateConfig
    system.cirruslink.azure.updateConfig(type, id, collisionPolicy, props) → void
    • Parameters
      • Type (str)String type
        • The type of configuration to update with valid options:

          • "General"
          • "Cert Files"
          • "IoT Hubs"
          • IoT Edge
          • "IoT Edges"
          • "IoT Centrals"
          • "Event Hubs"
          • "Agents"
          • "Sets"
      • Id (long)Long id
        • The ID of the record to update
      • String collisionPolicy(str)
        • Either "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:
          • General
            • Id (long)

            • Enabled (bool)

          • Cert Files
            • Name (str)

            • FileName (str)

            • FileContents (str)

            • Description (str)

          • IoT Hubs
            • Id (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)

            • 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
            • Id (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)

            • 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 Centrals
            • Id (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)
            • H2dbPort (int)(added 4.0.22)
            • MaximumSize (int)
            • AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"
          • Event Hubs
            • Id (long)

            • Name (str)

            • Enabled (str)

            • 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)

            • H2dbPort (int)(added 4.0.22)
            • MaxSize (int)

            • AzureDateTimeFormat (str) "LONG_MS_SINCE_EPOCH" or "STRING_AZURE_COMPAT"

          • Agents
            • Id (long)

            • Name (str) (added 4.0.17)
            • Enabled (bool) (added 4.0.17)
            • TagProvider (str)

            • TagPath (str)

            • PushTrigger (str) "EVENT_DRIVEN" or "PERIODIC"

            • TagPacingPeriod (long)

            • ConvertUdts (bool)

            • PublishUdtDefinitions (bool)

            • OptimizeUdts (bool)

            • AzureSetId (long)

            • GroupId (str)

            • EdgeNodeId (str)

            • DeviceId (str)

            • FilteredProperties (str)

          • Sets
            • Id (long)

            • Name (str)

            • Description (str)

            • PushPolicy (str) "PUSH_TO_ALL" or "PUSH_TO_ANY"

    • Return ValueNone
      • A map representing the updated configuration after it has been written to the database. (added 4.0.16)
  • Anchor
    deleteConfig
    deleteConfig
    system.cirruslink.azure.deleteConfig(type, id) → void

    • Parameters
      • Type (str)String type
        • The type of configuration to delete with valid options:

          • "Cert Files"
          • "IoT Hubs"
          • "IoT Edges"
          • "IoT EdgeCentrals"
          • "Event Hubs"
          • "Agents"
          • "Sets"
      • Id (long)Long id
        • The ID of the record to delete
    • Return Value
        None
      • True 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
languagepy
# 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)