Partager via


Charger des fichiers de vos appareils vers le cloud

IoT Central vous permet de charger des médias et d’autres fichiers à partir d’appareils connectés et vers le stockage cloud. Vous configurez la capacité de chargement de fichiers dans votre application IoT Central, puis vous implémentez les chargements de fichiers dans le code de votre appareil.

Si vous le souhaitez, vous pouvez gérer et prévisualiser les fichiers chargés par vos appareils dans votre application IoT Central.

Pour savoir comment configurer des chargements de fichiers à l’aide de l’API REST IoT Central, consultez Ajouter une configuration de compte de stockage de chargement de fichiers.

Prérequis

Vous devez être administrateur dans votre application IoT Central pour configurer les chargements de fichiers.

Vous avez besoin d’un compte et d’un conteneur de stockage Azure pour stocker les fichiers chargés. Si vous n’avez pas de compte de stockage ni de conteneur à utiliser, créez un compte de stockage dans le portail Azure.

Configurer les chargements de fichiers d’appareil

Pour configurer les chargements de fichiers d’appareil :

  1. Accédez à la section Application dans votre application.

  2. Sélectionnez Stockage de fichiers d’appareil.

  3. Sélectionnez le compte de stockage et le conteneur à utiliser. Si le compte de stockage se trouve dans un abonnement Azure différent de votre application, entrez une chaîne de connexion au compte de stockage.

  4. Si nécessaire, ajustez le délai d’expiration du chargement qui définit la durée de validité d’une requête de chargement. Les valeurs possibles sont comprises entre 1 et 24 heures.

  5. Pour permettre aux utilisateurs d’afficher et de gérer les fichiers téléchargés dans IoT Central, définissez Activer l’accès sur Activé.

  6. Cliquez sur Enregistrer. Lorsque l’état indique Configuré, vous êtes prêt à charger des fichiers à partir d’appareils.

Capture d’écran montrant un chargement de fichier correctement configuré.

Désactiver les chargements de fichiers d’appareil

Si vous souhaitez désactiver les chargements de fichiers d’appareil dans votre application IoT Central :

  1. Accédez à la section Application dans votre application.

  2. Sélectionnez Stockage de fichiers d’appareil.

  3. Sélectionnez Supprimer.

Contrôler l’accès aux fichiers chargés

Utilisez des rôles et des autorisations pour contrôler qui peut afficher et supprimer des fichiers chargés. Pour en savoir plus, consultez Gérer les utilisateurs et les rôles dans votre application IoT Central > Gestion des appareils.

Charger un fichier à partir d’un appareil

IoT Central utilise la capacité de chargement de fichiers d’IoT Hub pour permettre aux appareils de charger des fichiers. Pour obtenir un exemple de code qui vous montre comment charger des fichiers à partir d’un appareil, consultez l’exemple de chargement de fichiers d’appareil avec IoT Central.

Afficher et gérer des fichiers chargés

Si vous avez activé l’accès aux fichiers dans la configuration du chargement de fichiers, les utilisateurs disposant des autorisations appropriées peuvent afficher et supprimer des fichiers téléchargés.

Important

Tous les fichiers du dossier du conteneur d’objets blob associés à un appareil sont visibles dans la vue Fichiers de cet appareil. Cela inclut tous les fichiers qui n’ont pas été chargés par l’appareil.

Pour afficher et supprimer des fichiers chargés, accédez à la vue Fichiers d’un appareil. Dans cette page, vous pouvez voir les miniatures des fichiers chargés, et basculer entre une galerie et un affichage de liste. Chaque fichier dispose d’options permettant de le télécharger ou de le supprimer :

Capture d’écran montrant la vue Galerie de fichiers chargés.

Conseil

Le type de fichier est déterminé par le type MIME affecté au fichier lorsqu’il a été chargé dans le stockage d’objets blob. Le type par défaut est binary/octet-stream.

Vous pouvez personnaliser l’affichage de liste en filtrant sur le nom de fichier et en choisissant les colonnes à afficher.

Pour prévisualiser le contenu du fichier et obtenir plus d’informations sur le fichier, sélectionnez-le. IoT Central prend en charge les prévisualisations des types de fichiers courants tels que le texte et les images :

Capture d’écran montrant une prévisualisation d’un fichier texte.

Chargement du fichier de test

Après avoir configuré les chargements de fichiers dans votre application IoT Central, vous pouvez les tester avec l’exemple de code. Si vous n’avez pas encore cloné le référentiel d’échantillons de chargement de fichiers, utilisez les commandes suivante pour le cloner dans un emplacement approprié sur votre ordinateur local et installer les packages dépendants :

git clone https://github.com/azure-Samples/iot-central-file-upload-device
cd iotc-file-upload-device
npm i
npm build

Créer et importer le modèle d’appareil

Pour tester le chargement du fichier, exécutez un exemple d’application d’appareil. Créez un modèle d’appareil pour l’exemple d’appareil à utiliser.

  1. Ouvrez votre application dans l’interface utilisateur IoT Central.

  2. Accédez à l’onglet Modèles d’appareil dans le volet gauche, sélectionnez + Nouveau :

  3. Choisissez l’appareil IoT comme type de modèle.

  4. Dans la page Personnaliser de l’Assistant, entrez un nom tel que Exemple d’appareil de chargement de fichiers pour le modèle d’appareil.

  5. Dans la page Vérifier, sélectionnez Créer.

  6. Sélectionnez Importer un modèle et chargez le fichier de modèle FileUploadDeviceDcm.json à partir du dossier iotc-file-upload-device\setup dans le dépôt que vous avez téléchargé précédemment.

  7. Sélectionnez Publier pour publier le modèle d’appareil.

Ajout d’un appareil

Pour ajouter un appareil à votre application Azure IoT Central :

  1. Choisissez Appareils dans le volet gauche.

  2. Sélectionnez le modèle d’appareil Exemple d’appareil de chargement de fichiers que vous avez créé précédemment.

  3. Sélectionnez + Nouveau et sélectionnez Créer.

  4. Sélectionnez l’appareil que vous venez de créer, puis sélectionnez Connecter

Copiez les valeurs pour ID scope, Device ID et Primary key. Vous utilisez ces valeurs dans l’exemple de code de l’appareil.

Exécuter l’exemple de code

Ouvrez le dépôt Git que vous avez téléchargé dans VS Code. Créez un fichier « .env » à la racine de votre projet et ajoutez les valeurs que vous avez copiées précédemment. Le fichier devrait ressembler à l’exemple suivant avec les valeurs que vous avez notées précédemment.

scopeId=<YOUR_SCOPE_ID>
deviceId=<YOUR_DEVICE_ID>
deviceKey=<YOUR_PRIMARY_KEY>
modelId=dtmi:IoTCentral:IotCentralFileUploadDevice;1

Ouvrez le dépôt Git que vous avez téléchargé dans VS Code. Appuyez sur F5 pour exécuter/déboguer l’exemple. Dans votre fenêtre de terminal, vous voyez que l’appareil est inscrit et connecté à IoT Central :

Starting IoT Central device...
 > Machine: Windows_NT, 8 core, freemem=6674mb, totalmem=16157mb
Starting device registration...
DPS registration succeeded
Connecting the device...
IoT Central successfully connected device: 7z1xo26yd8
Sending telemetry: {
    "TELEMETRY_SYSTEM_HEARTBEAT": 1
}
Sending telemetry: {
    "TELEMETRY_SYSTEM_HEARTBEAT": 1
}
Sending telemetry: {
    "TELEMETRY_SYSTEM_HEARTBEAT": 1
}

L’exemple de projet est fourni avec un exemple de fichier nommé datafile.json. Ce fichier est chargé lorsque vous utilisez la commande Charger le fichier dans votre application IoT Central.

Pour tester le chargement, ouvrez votre application et sélectionnez l’appareil que vous avez créé. Sélectionnez l’onglet Commande et un bouton nommé Exécuter s’affiche. Lorsque vous sélectionnez ce bouton, l’application IoT Central appelle une méthode directe sur votre appareil pour charger le fichier. Vous pouvez voir cette méthode directe dans l’exemple de code dans le fichier /device.ts. La méthode est nommée uploadFileCommand.

Sélectionnez l’onglet Données brutes pour vérifier l’état du chargement du fichier.

Capture d’écran montrant l’interface de la façon de vérifier un chargement de fichier.

Vous pouvez également effectuer un appel API REST pour vérifier l’état du chargement de fichier dans le conteneur de stockage.