Fichier de configuration de Device Update pour Azure IoT Hub

L’agent Device Update tire ses informations de configuration du fichier du-config.json sur l’appareil. L’agent lit ces valeurs et les communique au service Device Update :

  • AzureDeviceUpdateCore:4.ClientMetadata:4.deviceProperties["manufacturer"]
  • AzureDeviceUpdateCore:4.ClientMetadata:4.deviceProperties["model"]
  • DeviceInformation.manufacturer
  • DeviceInformation.model
  • additionalProperties
  • connectionData
  • connectionType

Emplacement du fichier

Lors de l’installation de l’agent Debian sur un appareil IoT avec un système d’exploitation Linux, modifiez le fichier /etc/adu/du-config.json pour mettre à jour les valeurs. Pour un système de génération Yocto, dans la partition ou le disque appelé adu, créez un fichier JSON appelé /adu/du-config.json.

Liste de champs

Nom Description
SchemaVersion Version de schéma correspondant à la version actuelle du format de fichier de configuration.
aduShellTrustedUsers Liste des utilisateurs qui peuvent lancer le programme adu-shell. Veuillez noter qu’adu-shell est un programme broker qui effectue diverses actions de mise à jour, telle que « root ». Les gestionnaires de mise à jour de contenu par défaut de Device Update appellent adu-shell pour effectuer des tâches qui requièrent le privilège de super utilisateur. apt-get install ou l’exécution d’un script privilégié sont des exemples de tâches qui requièrent ce privilège.
aduc_manufacturer Signalé par l’interface AzureDeviceUpdateCore:4.ClientMetadata:4 pour classer l’appareil afin de cibler le déploiement de mise à jour.
aduc_model Signalé par l’interface AzureDeviceUpdateCore:4.ClientMetadata:4 pour classer l’appareil afin de cibler le déploiement de mise à jour.
iotHubProtocol Les valeurs acceptées sont mqtt ou mqtt/ws pour modifier le protocole utilisé pour se connecter à IoT Hub. La valeur par défaut est « mqtt ».
compatPropertyNames Ces propriétés sont utilisées pour vérifier la compatibilité de l'appareil pour cibler le déploiement de la mise à jour. Pour toutes les propriétés spécifiées pour être utilisées à des fins de compatibilité, les valeurs doivent être uniquement en minuscules
additionalProperties Champ facultatif. Des propriétés d’appareil supplémentaires signalées peuvent être définies et utilisées pour la vérification de la compatibilité. Limitées à cinq propriétés d’appareil. Ces propriétés doivent être en minuscules uniquement.
connectionType Les valeurs acceptées sont string ou AIS. Utilisez string lors de la connexion de l’appareil à IoT Hub manuellement à des fins de test. Pour les scénarios de production, utilisez AIS lors de l’utilisation du service d’identité IoT pour connecter l’appareil à IoT Hub. Pour plus d’informations, consultez Comprendre les configurations du service d’identité IoT.
connectionData Si connectionType = "string", ajoutez la chaîne de connexion de votre appareil ou module IoT ici. Si connectionType = "AIS", définissez connectionData sur une chaîne vide ("connectionData": "").
manufacturer Signalé par l’agent Device Update dans le cadre de l’interface DeviceInformation.
model Signalé par l’agent Device Update dans le cadre de l’interface DeviceInformation.

Exemple de contenu du fichier « du-config.json »


{
  "schemaVersion": "1.1",
  "aduShellTrustedUsers": [
    "adu",
    "do"
  ],
  "iotHubProtocol": "mqtt",
  "compatPropertyNames":"manufacturer,model,location,environment" <The property values must be in lower case only>,
  "manufacturer": <Place your device info manufacturer here>,
  "model": <Place your device info model here>,
  "agents": [
    {
      "name": <Place your agent name here>,
      "runas": "adu",
      "connectionSource": {
        "connectionType": "string", //or “AIS”
        "connectionData": <Place your Azure IoT device connection string here>
      },
      "manufacturer": <Place your device property manufacturer here>,
      "model": <Place your device property model here>,
      "additionalDeviceProperties": {
        "location": "usa",
        "environment": "development"
      }
    }
  ]
}