Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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.
Você também pode gerenciar e visualizar arquivos carregados por 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.
Observação
O comportamento de dimensionamento automático do IoT Central não considera operações de upload de arquivo. Se sua solução depender muito de uploads de arquivos, talvez seja necessário dimensionar manualmente a instância subjacente do Hub IoT para evitar a limitação. Se esse for o caso, entre em contato com o suporte da Microsoft.
Pré-requisitos
Você precisa ser um administrador em seu aplicativo do 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 e um contêiner, crie uma conta de armazenamento no portal do Azure.
Configurar uploads de arquivos dos dispositivos
Para configurar uploads de arquivos dos dispositivos:
Vá para a seção Aplicativo em seu 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 do aplicativo, insira uma cadeia de conexão de conta de armazenamento.
Se necessário, ajuste o tempo limite de carregamento que define por quanto tempo uma solicitação é válida. Você pode defini-lo de 1 a 24 horas.
Para permitir que os usuários exibam e gerenciem arquivos carregados no IoT Central, defina Habilitar o acesso como Ativado.
Clique em Salvar. Quando o status mostra Configurado, os dispositivos podem carregar arquivos.
Práticas recomendadas para evitar restrição inesperada em cenários de upload de arquivo
Para evitar uma limitação inesperada ao usar envios de arquivo, considere as seguintes práticas recomendadas:
- Fazer uploads escalonados entre dispositivos.
- Evite uploads sincronizados. Por exemplo, na parte superior da hora.
- Implemente a retirada exponencial no lado do cliente para erros
429 / ThrottleBacklogTimeout. - Considere mecanismos de ingestão alternativos, como ingestão do ADX, pipelines do Fabric ou escritas diretas em armazenamento.
- Testar o comportamento da carga de trabalho em padrões de upload de produção esperados.
Desabilitar uploads de arquivos de dispositivos
Para desativar os uploads de arquivo de dispositivo em seu aplicativo do 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 o recurso de upload de arquivo do Hub IoT para permitir que os dispositivos carreguem arquivos. Para obter um código de exemplo que mostra como carregar arquivos de um dispositivo, consulte o exemplo de dispositivo de upload de arquivo do IoT Central.
Ver e gerenciar arquivos carregados
Se você ativar o acesso a arquivos na configuração de upload de arquivo, os usuários com as permissões certas poderão exibir e excluir arquivos carregados.
Importante
Todos os arquivos na pasta de contêiner de blob associada a um dispositivo aparecem na exibição Arquivos para esse dispositivo, incluindo todos os arquivos que o dispositivo não carregou.
Para exibir e excluir arquivos carregados, vá para 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 mime atribuído ao arquivo quando ele foi carregado no armazenamento de blobs determina seu tipo de arquivo. O tipo padrão é binary/octet-stream.
Personalize 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 ele, 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 uploads de arquivo em seu aplicativo do IoT Central, teste-o com o código de exemplo. Use os seguintes comandos para clonar o repositório de exemplo em um local adequado no computador local e instalar as dependências:
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 arquivo, execute o aplicativo de dispositivo de exemplo. Primeiro, crie um modelo de dispositivo para o dispositivo de exemplo:
Abra seu aplicativo na interface do usuário do IoT Central.
Vá para Modelos de Dispositivo no painel esquerdo e selecione + Novo.
Selecione o dispositivo IoT para o tipo de modelo.
Na página Personalizar , insira um nome como Exemplo de Dispositivo de Upload de Arquivo para o modelo de dispositivo.
Na página Examinar, selecione Criar.
Selecione Importar um modelo e carregue o arquivo de modelo FileUploadDeviceDcm.json da
iotc-file-upload-device\setuppasta no repositório que você baixou anteriormente.Selecione Publicar para concluir a criação do modelo de dispositivo.
Adicionar um dispositivo
Para adicionar um dispositivo ao aplicativo Azure IoT Central:
Vá para Dispositivos no painel esquerdo.
Selecione o modelo de dispositivo Amostra do dispositivo de carregamento de arquivos que você criou anteriormente.
Selecione + Novo e, em seguida, selecione Criar.
Selecione o dispositivo que você criou e, em seguida, selecione 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 a este exemplo, com seus valores:
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. Para executar ou depurar o exemplo, pressione F5. Na janela do terminal, você vê o dispositivo se registrando e se conectando 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 inclui um arquivo de exemplo chamado datafile.json. Esse arquivo é carregado quando você usa o comando Carregar Arquivo em seu aplicativo do IoT Central.
Para testar esse upload, abra o aplicativo e selecione o dispositivo criado. Selecione a guia Comando e selecione o botão Executar . Quando você seleciona Executar, 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. Para testar esse upload, abra o aplicativo e selecione o dispositivo criado. Selecione a guia Comando e, em seguida, selecione o botão Executar . Quando você seleciona Executar, o IoT Central chama um método direto em seu dispositivo para carregar o arquivo. Você pode ver esse método 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.