Hochladen von Dateien von Ihren Geräten in die Cloud

Mit IoT Central können Sie Medien und andere Dateien von verbundenen Geräten in den Cloudspeicher hochladen. Sie konfigurieren die Dateiuploadfunktion in Ihrer IoT Central Anwendung und implementieren dann Dateiuploads in Ihrem Gerätecode.

Optional können Sie Dateien verwalten und voranzeigen, die von Ihren Geräten in Ihrer IoT Central-Anwendung hochgeladen wurden.

Informationen zum Konfigurieren von Dateiuploads mithilfe der IoT Central-REST-API finden Sie unter Hinzufügen einer Speicherkontokonfiguration für den Dateiupload.

Voraussetzungen

Sie müssen Administrator in Ihrer IoT Central-Anwendung sein, um Dateiuploads konfigurieren zu können.

Sie benötigen ein Azure Storage-Konto und einen Container zum Speichern der hochgeladenen Dateien. Wenn Sie über kein Azure Storage-Konto und keinen Container verfügen, erstellen Sie im Azure-Portal ein neues Speicherkonto.

Konfigurieren von Gerätedateiuploads

So konfigurieren Sie Uploads von Gerätedateien

  1. Navigieren Sie in Ihrer Anwendung zum Abschnitt Anwendung.

  2. Wählen Sie Gerätedateispeicher aus.

  3. Wählen Sie das Speicherkonto und den Container aus, die Sie verwenden möchten. Wenn sich das Speicherkonto in einem anderen Azure-Abonnement als Ihre Anwendung befindet, geben Sie eine Verbindungszeichenfolge für das Speicherkonto ein.

  4. Passen Sie ggf. den Uploadtimeout an, der festlegt, wie lange eine Uploadanforderung gültig bleibt. Gültige Werte liegen zwischen 1 und 24.

  5. Um Benutzern das Anzeigen und Verwalten hochgeladener Dateien innerhalb von IoT Central zu ermöglichen, legen Sie Zugriff aktivieren auf Ein fest.

  6. Wählen Sie Speichern. Wenn der Status Konfiguriert angezeigt wird, können Sie Dateien von Geräten hochladen.

Screenshot, der einen ordnungsgemäß konfigurierten Dateiupload zeigt.

Deaktivieren von Gerätedateiuploads

Wenn Sie das Hochladen von Gerätedateien in Ihre IoT Central-Anwendung deaktivieren möchten:

  1. Navigieren Sie in Ihrer Anwendung zum Abschnitt Anwendung.

  2. Wählen Sie Gerätedateispeicher aus.

  3. Klicken Sie auf Löschen.

Steuern des Zugriffs auf hochgeladene Dateien

Mithilfe von Rollen und Berechtigungen können Sie steuern, wer hochgeladene Dateien anzeigen und löschen kann. Weitere Informationen finden Sie unter „Verwalten von Benutzern und Rollen in Ihrer IoT Central-Anwendung“ > „Verwalten von Geräten“.

Hochladen einer Datei von einem Gerät

IoT Central verwendet die IoT Hub-Funktion zum Hochladen von Dateien, um das Hochladen von Dateien von Geräten zu ermöglichen. Beispielcode, der zeigt, wie Sie Dateien von einem Gerät hochladen können, finden Sie im Beispiel für einen IoT Central-Dateiupload von einem Gerät.

Anzeigen und Verwalten von hochgeladenen Dateien

Wenn Sie den Zugriff auf Dateien in der Dateiuploadkonfiguration aktiviert haben, können Benutzer mit den richtigen Berechtigungen hochgeladene Dateien anzeigen und löschen.

Wichtig

Alle Dateien in dem Blobcontainerordner, der einem Gerät zugeordnet ist, sind in der Ansicht Dateien für dieses Gerät sichtbar. Dies umfasst alle Dateien, die vom Gerät nicht hochgeladen wurden.

Zum Anzeigen und Löschen von hochgeladenen Dateien navigieren Sie zur Ansicht Dateien für ein Gerät. Auf dieser Seite können Sie Miniaturansichten der hochgeladenen Dateien anzeigen und zwischen einer Katalog- und Listenansicht wechseln. Bei jeder Datei gibt es Optionen zum Herunterladen oder Löschen:

Screenshot der Katalogansicht für hochgeladene Dateien.

Tipp

Der Dateityp wird durch den „mime“-Typ bestimmt, der der Datei bei ihrem Hochladen in den Blobspeicher zugewiesen wurde. Der Standardtyp ist binary/octet-stream.

Sie können die Listenansicht anpassen, indem Sie nach dem Dateinamen filtern und die anzuzeigenden Spalten auswählen.

Wenn Sie eine Vorschau des Dateiinhalts anzeigen und weitere Informationen zur Datei erhalten möchten, wählen Sie sie aus. IoT Central unterstützt Vorschauen allgemeiner Dateitypen wie Text und Bilder:

Screenshot der Vorschau einer Textdatei.

Testen des Dateiuploads

Nach dem Konfigurieren von Dateiuploads in Ihrer IoT Central-Anwendung können Sie die Konfiguration mit dem Beispielcode testen. Wenn Sie das Beispielrepository für Dateiuploads noch nicht geklont haben, verwenden Sie die folgenden Befehle, um es in einem geeigneten Speicherort auf Ihrem lokalen Computer zu klonen und die abhängigen Pakete zu installieren:

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

Erstellen der Gerätevorlage und Importieren des Modells

Führen Sie zum Testen des Dateiuploads eine Beispielgeräteanwendung aus. Erstellen Sie eine Gerätevorlage für das zu verwendende Beispielgerät.

  1. Öffnen Sie Ihre Anwendung in der IoT Central-Benutzeroberfläche.

  2. Navigieren Sie im linken Bereich zur Registerkarte Gerätevorlagen, und wählen Sie + Neu aus:

  3. Wählen Sie IoT-Gerät als Vorlagentyp aus.

  4. Geben Sie auf der Seite Anpassen des Assistenten für die Gerätevorlage einen Namen wie beispielsweise Gerätebeispiel für Dateiupload ein.

  5. Wählen Sie auf der Seite Überprüfen die Option Erstellen aus.

  6. Wählen Sie Modell importieren aus, und laden Sie die Modelldatei FileUploadDeviceDcm.json aus dem Ordner iotc-file-upload-device\setup in das zuvor heruntergeladenen Repository hoch.

  7. Wählen Sie Veröffentlichen aus, um die Gerätevorlage zu veröffentlichen.

Hinzufügen eines Geräts

So fügen Sie ein Gerät Ihrer Azure IoT Central-Anwendung hinzu:

  1. Wählen Sie im linken Bereich Geräte aus.

  2. Wählen Sie die Gerätevorlage File Upload Device Sample aus, die Sie zuvor erstellt haben.

  3. Wählen Sie + Neu und dann Erstellen aus.

  4. Wählen Sie das von Ihnen erstellte Gerät aus, und klicken Sie dann auf Verbinden.

Kopieren Sie die Werte für ID scope, Device ID und Primary key. Sie verwenden diese Werte im Gerätebeispielcode.

Ausführen des Beispiels

Öffnen Sie das Git-Repository, das Sie in VS Code heruntergeladen haben. Erstellen Sie eine ENV-Datei im Stammverzeichnis Ihres Projekts, und fügen Sie die zuvor kopierten Werte hinzu. Die Datei sollte wie das folgende Beispiel aussehen, allerdings mit den Werten, die Sie sich zuvor notiert haben.

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

Öffnen Sie das Git-Repository, das Sie in VS Code heruntergeladen haben. Drücken Sie die Taste F5, um das Beispiel auszuführen bzw. zu debuggen. In Ihrem Terminalfenster sehen Sie, dass das Gerät registriert und mit IoT Central verbunden ist:

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
}

Das Beispielprojekt enthält eine Beispieldatei namens datafile.json. Diese Datei wird hochgeladen, wenn Sie den Befehl Datei hochladen in Ihrer IoT Central-Anwendung verwenden.

Öffnen Sie Ihre Anwendung, und wählen Sie das erstellte Gerät aus, um den Upload zu testen. Wählen Sie die Registerkarte Befehl aus. Hier sehen Sie eine Schaltfläche namens Ausführen. Wenn Sie diese Schaltfläche auswählen, ruft die IoT Central-App eine direkte Methode auf Ihrem Gerät auf, um die Datei hochzuladen. Sie können diese direkte Methode im Beispielcode in der Datei „/device.ts“ sehen. Der Name dieser Methode lautet uploadFileCommand.

Wählen Sie die Registerkarte Rohdaten aus, um den Dateiuploadstatus zu überprüfen.

Screenshot: Das U I zeigt, wie Sie einen Dateiupload überprüfen.

Sie können auch einen REST-API-Aufruf ausführen, um den Dateiuploadstatus im Speichercontainer zu überprüfen.