Dela via


Ladda upp filer från dina enheter till molnet

Med IoT Central kan du ladda upp media och andra filer från anslutna enheter till molnlagring. Du konfigurerar filuppladdningsfunktionen i ditt IoT Central-program och implementerar sedan filuppladdningar i enhetskoden.

Du kan också hantera och förhandsgranska filer som laddats upp av dina enheter i ditt IoT Central-program.

Information om hur du konfigurerar filuppladdningar med hjälp av REST-API:et för IoT Central finns i Lägga till en konfiguration av lagringskonto för filuppladdning.

Förutsättningar

Du måste vara administratör i ditt IoT Central-program för att konfigurera filuppladdningar.

Du behöver ett Azure Storage-konto och en container för att lagra de uppladdade filerna. Om du inte har något lagringskonto och en container skapar du ett lagringskonto i Azure-portalen.

Konfigurera uppladdningar av enhetsfiler

Så här konfigurerar du uppladdningar av enhetsfiler:

  1. Gå till avsnittet Program i ditt program.

  2. Välj Lagring av enhetsfil.

  3. Välj det lagringskonto och den container som ska användas. Om lagringskontot finns i en annan Azure-prenumeration än ditt program anger du en anslutningssträng för lagringskontot.

  4. Om det behövs justerar du tidsgränsen för uppladdning som anger hur länge en begäran är giltig. Du kan ange den från 1 till 24 timmar.

  5. Om du vill låta användare visa och hantera uppladdade filer i IoT Central anger du Aktivera åtkomst till .

  6. Välj Spara. När statusen visar Konfigurerad kan enheter ladda upp filer.

Skärmbild som visar en korrekt konfigurerad filuppladdning.

Inaktivera uppladdningar av enhetsfiler

Så här inaktiverar du uppladdningar av enhetsfiler i IoT Central-programmet:

  1. Gå till avsnittet Program i ditt program.

  2. Välj Lagring av enhetsfil.

  3. Välj Ta bort.

Kontrollera åtkomsten till uppladdade filer

Använd roller och behörigheter för att styra vem som kan visa och ta bort uppladdade filer. Mer information finns i Hantera användare och roller i ditt IoT Central-program > Hantera enheter.

Ladda upp en fil från en enhet

IoT Central använder IoT Hubs filuppladdningsfunktion för att göra det möjligt för enheter att ladda upp filer. Exempelkod som visar hur du laddar upp filer från en enhet finns i IoT Central-filuppladdningsenhetens exempel.

Visa och hantera uppladdade filer

Om du aktiverar åtkomst till filer i filuppladdningskonfigurationen kan användare med rätt behörighet visa och ta bort uppladdade filer.

Viktigt!

Alla filer i mappen blobcontainer som är associerade med en enhet visas i vyn Filer för enheten, inklusive filer som enheten inte laddade upp.

Om du vill visa och ta bort uppladdade filer går du till vyn Filer för en enhet. På den här sidan kan du se miniatyrbilder av de uppladdade filerna och växla mellan ett galleri och en listvy. Varje fil har alternativ för att ladda ned eller ta bort den:

Skärmbild som visar gallerivyn för uppladdade filer.

Dricks

Mime-typen som tilldelades filen när den laddades upp till Blob Storage avgör dess filtyp. Standardtypen är binary/octet-stream.

Anpassa listvyn genom att filtrera efter filnamn och välja vilka kolumner som ska visas.

Om du vill förhandsgranska filinnehållet och få mer information om det väljer du det. IoT Central stöder förhandsversioner av vanliga filtyper som text och bilder:

Skärmbild som visar en förhandsgranskning av en textfil.

Testa filuppladdning

När du har konfigurerat filuppladdningar i ditt IoT Central-program testar du det med exempelkoden. Använd följande kommandon för att klona exempellagringsplatsen till en lämplig plats på den lokala datorn och installera beroendena:

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

Skapa enhetsmallen och importera modellen

Om du vill testa filuppladdningen kör du exempelprogrammet för enheten. Skapa först en enhetsmall för exempelenheten:

  1. Öppna ditt program i IoT Central-användargränssnittet.

  2. Gå till Enhetsmallar i det vänstra fönstret och välj sedan + Ny.

  3. Välj IoT-enhet som malltyp.

  4. På sidan Anpassa anger du ett namn som Exempel på filuppladdningsenhet för enhetsmallen.

  5. På sidan Granska väljer du Skapa.

  6. Välj Importera en modell och ladda upp FileUploadDeviceDcm.json modellfilen från iotc-file-upload-device\setup mappen på den lagringsplats som du laddade ned tidigare.

  7. Välj Publicera för att slutföra skapandet av enhetsmallen.

Lägg till en enhet

Så här lägger du till en enhet i ditt Azure IoT Central-program:

  1. Gå till Enheter i det vänstra fönstret.

  2. Välj enhetsmallen Exempel på filuppladdningsenhet som du skapade tidigare.

  3. Välj + Ny och sedan Skapa.

  4. Välj den enhet som du skapade och välj sedan Anslut.

Kopiera värdena för ID scope, Device IDoch Primary key. Du använder dessa värden i enhetsexempelkoden.

Kör exempelkoden

Öppna git-lagringsplatsen som du laddade ned i VS Code. Skapa en ".env"-fil i roten av projektet och lägg till de värden som du kopierade tidigare. Filen bör se ut som det här exemplet med dina värden:

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

Öppna git-lagringsplatsen som du laddade ned i VS Code. Tryck på F5 om du vill köra eller felsöka exemplet. I terminalfönstret ser du enhetsregistreringen och ansluter till 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
}

Exempelprojektet innehåller en exempelfil med namnet datafile.json. Den här filen laddas upp när du använder kommandot Ladda upp fil i ditt IoT Central-program.

Om du vill testa uppladdningen öppnar du programmet och väljer den enhet som du skapade. Välj fliken Kommando och välj knappen Kör . När du väljer Kör anropar IoT Central-programmet en direktmetod på enheten för att ladda upp filen. Du kan se den här direktmetoden i exempelkoden i filen /device.ts. Metoden heter uploadFileCommand. Om du vill testa uppladdningen öppnar du programmet och väljer den enhet som du skapade. Välj fliken Kommando och välj sedan knappen Kör . När du väljer Kör anropar IoT Central en direktmetod på enheten för att ladda upp filen. Du kan se den här metoden i exempelkoden i filen /device.ts . Metoden heter uploadFileCommand.

Välj fliken Rådata för att kontrollera filuppladdningsstatusen.

Skärmbild som visar U I för hur du verifierar en filuppladdning.

Du kan också göra ett REST API-anrop för att kontrollera filuppladdningsstatusen i lagringscontainern.