Configurare gli upload dei file nell'hub IoT tramite l'interfaccia della riga di comando di AzureConfigure IoT Hub file uploads using Azure CLI

Per usare la funzionalità di caricamento di file nell'hub IoT, è prima di tutto necessario associare un account di archiviazione di Azure all'hub IoT.To use the file upload functionality in IoT Hub, you must first associate an Azure Storage account with your IoT hub. È possibile usare un account di archiviazione esistente o crearne uno nuovo.You can use an existing storage account or create a new one.

Per completare l'esercitazione, sono necessari gli elementi seguenti:To complete this tutorial, you need the following:

Accedere all'account Azure e impostarloSign in and set your Azure account

Accedere al proprio account Azure e selezionare la sottoscrizione.Sign in to your Azure account and select your subscription.

  1. Al prompt dei comandi eseguire il comando per l'accesso:At the command prompt, run the login command:

    az login
    

    Seguire le istruzioni per l'autenticazione tramite il codice e accedere all'account Azure con un Web browser.Follow the instructions to authenticate using the code and sign in to your Azure account through a web browser.

  2. Se si usano più sottoscrizioni di Azure, effettuando l'accesso ad Azure è possibile accedere a tutti gli account Azure associati alle credenziali.If you have multiple Azure subscriptions, signing in to Azure grants you access to all the Azure accounts associated with your credentials. Usare il seguente comando per elencare gli account Azure che è possibile usare:Use the following command to list the Azure accounts available for you to use:

    az account list
    

    Usare il comando seguente per selezionare la sottoscrizione che si vuole usare per eseguire i comandi per creare l'hub IoT.Use the following command to select subscription that you want to use to run the commands to create your IoT hub. È possibile usare il nome o l'ID della sottoscrizione dall'output del comando precedente:You can use either the subscription name or ID from the output of the previous command:

    az account set --subscription {your subscription name or id}
    

Recuperare i dettagli dell'account di archiviazioneRetrieve your storage account details

I passaggi seguenti presuppongono che l'account di archiviazione sia stato creato tramite il modello di distribuzione di Resource Manager e non tramite quello Classico.The following steps assume that you created your storage account using the Resource Manager deployment model, and not the Classic deployment model.

Per configurare i caricamenti dei file dai propri dispositivi, è necessario disporre della stringa di connessione di un account di Archiviazione di Azure.To configure file uploads from your devices, you need the connection string for an Azure storage account. L'account di archiviazione deve trovarsi nella stessa sottoscrizione dell'hub IoT.The storage account must be in the same subscription as your IoT hub. È inoltre necessario il nome del contenitore BLOB nell'account di archiviazione.You also need the name of a blob container in the storage account. Usare il comando seguente per recuperare le chiavi dell'account di archiviazione:Use the following command to retrieve your storage account keys:

az storage account show-connection-string --name {your storage account name} --resource-group {your storage account resource group}

Prendere nota del valore connectionString.Make a note of the connectionString value. sarà necessario nei passaggi successivi.You need it in the following steps.

Per i caricamenti dei file, è possibile usare un contenitore BLOB esistente oppure crearne uno nuovo:You can either use an existing blob container for your file uploads or create new one:

  • Per elencare i contenitori BLOB esistenti nell'account di archiviazione, usare i comandi seguenti:To list the existing blob containers in your storage account, use the following command:

    az storage container list --connection-string "{your storage account connection string}"
    
  • Per creare un contenitore BLOB nell'account di archiviazione, usare i comandi seguenti:To create a blob container in your storage account, use the following command:

    az storage container create --name {container name} --connection-string "{your storage account connection string}"
    

Caricamento di fileFile upload

È ora possibile configurare l'hub IoT per abilitare la funzionalità di caricamento dei file usando i dettagli dell'account di archiviazione.You can now configure your IoT hub to enable file upload functionality using your storage account details.

La configurazione richiede i valori seguenti:The configuration requires the following values:

Contenitore di archiviazione: un contenitore BLOB in un account di archiviazione di Azure nella sottoscrizione corrente da associare all'hub IoT.Storage container: A blob container in an Azure storage account in your current Azure subscription to associate with your IoT hub. Le informazioni necessarie sull'account di archiviazione sono state recuperate nella sezione precedente.You retrieved the necessary storage account information in the preceding section. L'hub IoT genera automaticamente URI di firma di accesso condiviso con autorizzazioni di scrittura per questo contenitore BLOB che possono essere usati dai dispositivi durante il caricamento di file.IoT Hub automatically generates SAS URIs with write permissions to this blob container for devices to use when they upload files.

Receive notifications for uploaded files (Ricezione di notifiche per i file caricati): abilitare o disabilitare le notifiche di caricamento del file.Receive notifications for uploaded files: Enable or disable file upload notifications.

SAS TTL(TTL di firma di accesso condiviso): questa impostazione indica la durata degli URI di firma di accesso condiviso restituiti dal dispositivo tramite l’hub IoT.SAS TTL: This setting is the time-to-live of the SAS URIs returned to the device by IoT Hub. Il valore è un'ora per impostazione predefinita.Set to one hour by default.

File notification settings default TTL(TTL predefinito per le impostazioni di notifica dei file): durata di una notifica di caricamento del file.File notification settings default TTL: The time-to-live of a file upload notification before it is expired. Il valore è un giorno per impostazione predefinita.Set to one day by default.

File notification maximum delivery count(Numero massimo di recapiti per le notifiche dei file): numero di tentativi che verranno eseguiti dall'hub IoT per distribuire una notifica di caricamento del file.File notification maximum delivery count: The number of times the IoT Hub attempts to deliver a file upload notification. Il valore è 10 per impostazione predefinita.Set to 10 by default.

Usare i comandi dell'interfaccia della riga di comando di Azure per configurare le impostazioni di upload dei file nell'hub IoT:Use the following Azure CLI commands to configure the file upload settings on your IoT hub:

In un uso di shell bash:In a bash shell use:

az iot hub update --name {your iot hub name} --set properties.storageEndpoints.'$default'.connectionString="{your storage account connection string}"
az iot hub update --name {your iot hub name} --set properties.storageEndpoints.'$default'.containerName="{your storage container name}"
az iot hub update --name {your iot hub name} --set properties.storageEndpoints.'$default'.sasTtlAsIso8601=PT1H0M0S

az iot hub update --name {your iot hub name} --set properties.enableFileUploadNotifications=true
az iot hub update --name {your iot hub name} --set properties.messagingEndpoints.fileNotifications.maxDeliveryCount=10
az iot hub update --name {your iot hub name} --set properties.messagingEndpoints.fileNotifications.ttlAsIso8601=PT1H0M0S

Nell'uso di un prompt dei comandi di Windows:At a Windows command prompt use:

az iot hub update --name {your iot hub name} --set "properties.storageEndpoints.$default.connectionString="{your storage account connection string}""
az iot hub update --name {your iot hub name} --set "properties.storageEndpoints.$default.containerName="{your storage container name}""
az iot hub update --name {your iot hub name} --set "properties.storageEndpoints.$default.sasTtlAsIso8601=PT1H0M0S"

az iot hub update --name {your iot hub name} --set properties.enableFileUploadNotifications=true
az iot hub update --name {your iot hub name} --set properties.messagingEndpoints.fileNotifications.maxDeliveryCount=10
az iot hub update --name {your iot hub name} --set properties.messagingEndpoints.fileNotifications.ttlAsIso8601=PT1H0M0S

È possibile esaminare la configurazione di upload del file sull'hub IoT usando il comando seguente:You can review the file upload configuration on your IoT hub using the following command:

az iot hub show --name {your iot hub name}

Passaggi successiviNext steps

Per altre informazioni sulle funzionalità di caricamento dei file dell'hub IoT, vedere Caricare file da un dispositivo.For more information about the file upload capabilities of IoT Hub, see Upload files from a device.

Per ulteriori informazioni sulla gestione dell'hub IoT di Azure, consultare questi collegamenti:Follow these links to learn more about managing Azure IoT Hub:

Per altre informazioni sulle funzionalità dell'hub IoT, vedere:To further explore the capabilities of IoT Hub, see: