Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Use a CLI do Azure para agendar e controlar trabalhos que atualizam milhões de dispositivos. Use tarefas para:
- Atualizar as propriedades desejadas
- Atualizar tags
- Invocar métodos diretos
Conceitualmente, um trabalho engloba uma dessas ações e rastreia o progresso da execução em relação a um conjunto de dispositivos. Uma consulta de gêmeo de dispositivo define o conjunto de dispositivos com os quais um trabalho interage. Por exemplo, um aplicativo back-end pode usar um trabalho para invocar um método de reinicialização em 10.000 dispositivos, especificado por uma consulta gêmea de dispositivo e agendado em um momento futuro. Esse aplicativo pode então acompanhar o progresso à medida que cada um desses dispositivos recebe e executa o método de reinicialização.
Para saber mais sobre como os trabalhos ajudam a gerenciar operações de gerenciamento de dispositivos em massa, consulte Agendar trabalhos em vários dispositivos.
Nota
Os recursos descritos neste artigo estão disponíveis somente na camada padrão do Hub IoT. Para obter mais informações sobre as camadas básica e padrão/gratuita do Hub IoT, consulte Escolha a camada e o tamanho certos do Hub IoT para sua solução.
Pré-requisitos
CLI do Azure. Você também pode executar os comandos neste artigo usando o Azure Cloud Shell, um shell interativo da CLI que é executado em seu navegador ou em um aplicativo como o Terminal do Windows. Se você usa o Cloud Shell, não precisa instalar nada. Se você preferir usar a CLI localmente, este artigo requer a CLI do Azure versão 2.36 ou posterior. Para localizar a versão instalada, execute
az --version. Para instalar ou atualizar localmente a CLI do Azure, consulte Instalar a CLI do Azure.Um hub IoT em sua assinatura do Azure. Se você ainda não tiver um hub, siga as etapas em Criar um hub IoT.
Programar uma tarefa para invocar um método direto
Você pode usar tarefas para invocar um método direto em um ou mais dispositivos.
Use o comando az iot hub job create , substituindo os seguintes espaços reservados por seus valores correspondentes. O comando agenda um trabalho que chama um nome de método nos dispositivos de destino.
az iot hub job create --hub-name {HubName} --job-id {JobName} \
--job-type scheduleDeviceMethod \
--method-name {MethodName} --method-payload {MethodPayload} \
--query-condition "{DeviceQuery}"
| Marcador de Posição | Valor |
|---|---|
{HubName} |
O nome do seu hub IoT. |
{JobName} |
O nome da sua tarefa agendada. Os nomes de trabalho são exclusivos, portanto, escolha um nome de trabalho diferente cada vez que executar esse comando. |
{MethodName} |
O nome do seu método direto. |
{MethodPayload} |
Qualquer carga útil a ser fornecida ao método direto. Se não for necessária carga útil, utilize null. |
{DeviceQuery} |
Uma consulta que define o ou os dispositivos alvo do trabalho. Por exemplo, uma tarefa de dispositivo único pode usar a seguinte condição de consulta: deviceId = 'myExampleDevice'. |
Gorjeta
Ao agendar um job az iot hub job create que invoca um método direto, deve especificar valores para ambos os --method-name e --method-payload parâmetros opcionais. Para métodos diretos que não aceitam uma carga útil, especifique null para o parâmetro --method-payload.
Agendar um trabalho para atualizar as propriedades gêmeas de um dispositivo
Você pode usar trabalhos para atualizar uma propriedade desejada do gémeo digital de um dispositivo.
Use o comando az iot hub job create , substituindo os seguintes espaços reservados por seus valores correspondentes. Neste exemplo, estamos agendando uma tarefa para definir o valor da propriedade desejada do gêmeo BuildingNo como 45 para o nosso dispositivo simulado.
az iot hub job create --hub-name {HubName} --job-id {JobName} \
--job-type scheduleUpdateTwin \
--twin-patch '{JSONTwinPatch}' \
--query-condition "{DeviceQuery}"
| Marcador de Posição | Valor |
|---|---|
{HubName} |
O nome do seu hub IoT. |
{JobName} |
O nome da sua tarefa agendada. Os nomes de trabalho são exclusivos, portanto, escolha um nome de trabalho diferente cada vez que executar esse comando. |
{JSONTwinPatch} |
O trecho JSON que você deseja usar para atualizar as propriedades desejadas do gêmeo do dispositivo. Por exemplo, {"properties":{"desired": {"BuildingNo": 45}}}. |
{DeviceQuery} |
Uma consulta que define o ou os dispositivos alvo do trabalho. Por exemplo, uma tarefa para um único dispositivo pode usar a seguinte condição de consulta: deviceId = 'myExampleDevice'. |
Conteúdos relacionados
Saiba como implementar trabalhos programaticamente usando os SDKs do Azure IoT: Agendar e transmitir trabalhos.