Faça upload de arquivos dos seus dispositivos para a nuvem
O IoT Central permite que você carregue mídia e outros arquivos dos dispositivos conectados no armazenamento em nuvem. Você configura a capacidade de upload de arquivos no seu aplicativo IoT Central e, então, implementa os uploads de arquivo no código do seu dispositivo.
Opcionalmente, você pode gerenciar e visualizar arquivos carregados pelos seus dispositivos dentro do aplicativo IoT Central.
Para saber como configurar uploads de arquivos usando a API REST do IoT Central, consulte Adicionar uma configuração de conta de armazenamento de upload de arquivo.
Pré-requisitos
Você deve ser um administrador do aplicativo IoT Central para configurar uploads de arquivos.
Além disso, você também precisa de uma conta de armazenamento e um contêiner do Azure para armazenar os arquivos carregados. Se você não tiver uma conta de armazenamento nem um contêiner existente para usar, crie uma nova conta de armazenamento no portal do Azure.
Configurar uploads de arquivos dos dispositivos
Para configurar uploads de arquivos dos dispositivos:
Navegue até a seção Administração do aplicativo.
Selecione Armazenamento de arquivos de dispositivos.
Escolha a conta de armazenamento e o contêiner que serão usados. Se a conta de armazenamento estiver em uma assinatura do Azure diferente da assinatura do seu aplicativo, insira uma cadeia de conexão da conta de armazenamento.
Se necessário, ajuste o tempo limite de upload, que define por quanto tempo uma solicitação de upload permanece válida. Os valores válidos são de 1 a 24 horas.
Para permitir que os usuários vejam e gerenciem arquivos carregados dentro do IoT Central, defina Habilitar o acesso como Ativado.
Selecione Salvar. Quando o status mostrar Configurado, você estará pronto para carregar arquivos dos dispositivos.
Desabilitar uploads de arquivos de dispositivos
Se você quiser desabilitar os uploads de arquivos de dispositivos para o seu aplicativo IoT Central:
Navegue até a seção Administração do aplicativo.
Selecione Armazenamento de arquivos de dispositivos.
Selecione Excluir.
Controlar o acesso a arquivos carregados
Use funções e permissões para controlar quem pode ver e excluir arquivos carregados. Para saber mais, confira Gerenciar usuários e funções no aplicativo IoT Central > Gerenciar dispositivos.
Carregar um arquivo de um dispositivo
O IoT Central usa a capacidade de upload de arquivos do Hub IoT para permitir que os dispositivos carreguem arquivos. Para ver um exemplo de código que mostra como carregar arquivos de um dispositivo, confira a Amostra de dispositivo de upload de arquivos do IoT Central.
Ver e gerenciar arquivos carregados
Se você habilitou o acesso a arquivos na configuração de upload de arquivo, os usuários com as permissões corretas poderão ver e excluir arquivos carregados.
Importante
Todos os arquivos na pasta de contêiner de blob associados a um dispositivo ficam visíveis na exibição Arquivos desse dispositivo. Isso inclui todos os arquivos que não foram carregados pelo dispositivo.
Para ver e excluir arquivos carregados, navegue até a exibição Arquivos de um dispositivo. Nesta página, você pode ver miniaturas dos arquivos carregados e alternar entre uma galeria e uma exibição de lista. Cada arquivo tem opções para baixá-lo ou excluí-lo:
Dica
O tipo de arquivo é determinado pelo tipo MIME atribuído ao arquivo quando ele foi carregado no armazenamento de blobs. O tipo padrão é binary/octet-stream
.
Você pode personalizar a exibição de lista filtrando pelo nome do arquivo e escolhendo as colunas a serem exibidas.
Para visualizar o conteúdo do arquivo e obter mais informações sobre o arquivo, selecione-o. O IoT Central dá suporte a visualizações de tipos de arquivo comuns, como texto e imagens:
Testar o upload de arquivos
Depois de configurar o upload de arquivos no aplicativo IoT Central, você pode testá-lo com o código de exemplo. Caso ainda não tenha clonado o repositório de exemplo do upload de arquivos, use o seguinte comando para cloná-lo em uma localização adequada no computador local e instalar os pacotes dependentes:
git clone https://github.com/azure-Samples/iot-central-file-upload-device
cd iotc-file-upload-device
npm i
npm build
Criar o modelo de dispositivo e importar o modelo
Para testar o upload de arquivos, execute um aplicativo de dispositivo de exemplo. Crie um modelo de dispositivo para o dispositivo de exemplo a ser usado.
Abra seu aplicativo na interface do usuário do IoT Central.
Navegue até a guia Modelos de dispositivo no painel esquerdo, selecione + Novo:
Escolha dispositivo IoT como o tipo de modelo.
Na página Personalizar do assistente, insira um nome como Amostra de dispositivo de upload de arquivos para o modelo de dispositivo.
Na página Examinar, selecione Criar.
Selecione Importar um modelo e carregue o arquivo de modelo FileUploadDeviceDcm.json da pasta
iotc-file-upload-device\setup
no repositório baixado anteriormente.Escolha Publicar para publicar o modelo de dispositivo.
Adicionar um dispositivo
Para adicionar um dispositivo ao aplicativo Azure IoT Central:
Escolha Dispositivos no painel esquerdo.
Selecione o modelo de dispositivo Amostra de dispositivo de upload de arquivos que foi criado anteriormente.
Selecione + Novo e, em seguida, Criar.
Selecione o dispositivo criado e, em seguida, Conectar
Copie os valores de ID scope
, Device ID
e Primary key
. Você usa esses valores no código de exemplo do dispositivo.
Execute o código de exemplo
Abra o repositório do Git que você baixou no VS Code. Crie um arquivo ".env" na raiz do projeto e adicione os valores copiados antes. O arquivo deve ser semelhante ao exemplo a seguir com os valores anotados anteriormente.
scopeId=<YOUR_SCOPE_ID>
deviceId=<YOUR_DEVICE_ID>
deviceKey=<YOUR_PRIMARY_KEY>
modelId=dtmi:IoTCentral:IotCentralFileUploadDevice;1
Abra o repositório do Git que você baixou no VS Code. Pressione F5 para executar/depurar o exemplo. Na janela do terminal, você verá que o dispositivo está registrado e conectado ao 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
}
O projeto de exemplo vem com um arquivo de exemplo chamado datafile.json. Esse arquivo é carregado quando você usa o comando Carregar arquivo no aplicativo IoT Central.
Para testar esse upload, abra o aplicativo e selecione o dispositivo criado. Selecione a guia Comando e um botão chamado Executar será exibido. Ao selecionar esse botão, o aplicativo IoT Central chama um método direto em seu dispositivo para carregar o arquivo. Esse método direto será exibido no código de exemplo no arquivo /device.ts. O método é chamado uploadFileCommand.
Selecione a guia Dados brutos para verificar o status de upload do arquivo.
Você também pode fazer uma chamada à API REST para verificar o status de upload do arquivo no contêiner de armazenamento.