Editar um modelo de dispositivo
Um modelo de dispositivo inclui um modelo que descreve como um dispositivo interage com o IoT Central. Este modelo define as capacidades do dispositivo e como o IoT Central interage com elas. Os dispositivos podem enviar telemetria e valores de propriedade para o IoT Central, o IoT Central pode enviar atualizações de propriedade e comandos para um dispositivo. O IoT Central também usa o modelo para definir interações com recursos do IoT Central, como trabalhos, regras e exportações.
As alterações no modelo em um modelo de dispositivo podem afetar todo o aplicativo, incluindo quaisquer dispositivos conectados. Alterações em um recurso usado por regras, exportações, grupos de dispositivos ou trabalhos podem fazer com que eles se comportem inesperadamente ou não funcionem de todo. Por exemplo, se você remover uma definição de telemetria de um modelo:
- O IoT Central não é mais capaz de interpretar esse valor. O IoT Central mostra dados do dispositivo que ele não pode interpretar como dados não modelados na página Dados brutos do dispositivo.
- O IoT Central não inclui mais o valor em nenhuma exportação de dados.
Para ajudá-lo a evitar consequências não intencionais da edição de um modelo de dispositivo, este artigo inclui recomendações com base no estágio atual do ciclo de vida do desenvolvimento. Em geral, quanto mais cedo você estiver no ciclo de vida de desenvolvimento, mais tolerante você pode ser às alterações de modelo de dispositivo.
Para saber mais sobre modelos de dispositivo e como criar um, consulte O que são modelos de dispositivo? e Configurar um modelo de dispositivo.
Para saber como gerenciar modelos de dispositivo usando a API REST do IoT Central, consulte Como usar a API REST do IoT Central para gerenciar modelos de dispositivo.
Modificar um modelo de dispositivo
Alterações aditivas, como a adição de um recurso ou interface a um modelo, são alterações ininterruptas. Você pode fazer alterações aditivas em um modelo em qualquer estágio do ciclo de vida do desenvolvimento.
As alterações significativas incluem a remoção de partes de um modelo ou a alteração de um nome de recurso ou tipo de esquema. Essas alterações podem fazer com que recursos do aplicativo, como regras, exportações ou painéis, exibam mensagens de erro e parem de funcionar.
Nas primeiras fases de desenvolvimento do dispositivo, enquanto você ainda está projetando e testando o modelo, há maior tolerância para fazer alterações diretamente no modelo do dispositivo. Antes de conectar dispositivos de produção a um modelo de dispositivo, você pode editar o modelo de dispositivo diretamente. O IoT Central aplica essas alterações automaticamente aos dispositivos quando você publica o modelo de dispositivo.
Depois de anexar dispositivos de produção a um modelo de dispositivo, avalie o impacto de quaisquer alterações antes de editar um modelo de dispositivo. Você não deve fazer alterações significativas em um modelo de dispositivo em produção. Para fazer essas alterações, crie uma nova versão do modelo de dispositivo. Teste o novo modelo de dispositivo e, em seguida, migre seus dispositivos de produção para o novo modelo em um tempo de inatividade programado.
Atualizar um modelo de dispositivo IoT Edge
Para um dispositivo IoT Edge, o modelo agrupa recursos por módulos que correspondem aos módulos IoT Edge em execução no dispositivo. O manifesto de implantação é um documento JSON separado que informa a um dispositivo IoT Edge quais módulos instalar, como configurá-los e quais propriedades o módulo tem. Se você modificar um manifesto de implantação, poderá atualizar o modelo de dispositivo para incluir os módulos e as propriedades definidas no manifesto:
- Navegue até o nó Módulos no modelo de dispositivo.
- Na página Resumo dos módulos, selecione Importar módulos do manifesto.
- Selecione o manifesto de implantação apropriado e selecione Importar.
Para saber mais, consulte Dispositivos IoT Edge e IoT Central.
Editar e publicar ações
As seguintes ações são úteis quando você edita um modelo de dispositivo:
- Guardar. Quando você altera parte do modelo de dispositivo, salvar as alterações cria um rascunho ao qual você pode retornar. Essas alterações ainda não afetam os dispositivos conectados. Todos os dispositivos criados a partir deste modelo não têm as alterações salvas até que você o publique.
- Publicar. Quando você publica o modelo de dispositivo, ele aplica todas as alterações salvas às instâncias de dispositivo existentes. As instâncias de dispositivo recém-criadas sempre usam o modelo publicado mais recente.
- Versão de um modelo. Quando você faz a versão de um modelo de dispositivo, ele cria um novo modelo com todas as alterações salvas mais recentes. As alterações feitas em uma nova versão não afetam as instâncias de dispositivos existentes. Para saber mais, consulte Versão de um modelo de dispositivo.
- Versão de uma interface. Quando você faz a versão de uma interface, ela cria uma nova interface com todos os recursos salvos mais recentes. Você pode reutilizar uma interface em vários locais dentro de um modelo. É por isso que uma alteração feita em uma referência a uma interface altera todos os lugares no modelo que usam a interface. Quando você faz a versão de uma interface, esse comportamento muda porque a nova versão agora é uma interface separada. Para saber mais, consulte Versão de uma interface.
- Migrar um dispositivo. Quando você migra um dispositivo, a instância do dispositivo é trocada de um modelo de dispositivo para outro. A migração de dispositivos pode causar um curto período de tempo em que o IoT Central processa as alterações. Para saber mais, consulte Migrar um dispositivo entre versões.
Números de versão
Ambos os modelos de dispositivos e interfaces têm números de versão. Diferentes números de versão permitem que modelos ou interfaces compartilhem um @id
valor, ao mesmo tempo em que fornecem um histórico de atualizações. Os números de versão só aumentam se você optar pela versão do modelo ou da interface, ou se alterar deliberadamente o número da versão. Você deve alterar um número de versão quando fizer uma alteração importante em um modelo ou interface.
O trecho a seguir mostra o modelo do dispositivo para um dispositivo termostato. O modelo do dispositivo tem uma única interface. Você pode ver o número da versão, 1
, no final do@id
campo.
{
"@context": "dtmi:dtdl:context;2",
"@id": "dtmi:com:example:Thermostat;1",
"@type": "Interface",
"displayName": "Thermostat",
"description": "Reports current temperature and provides desired temperature control.",
"contents": [
// ...
]
}
Para exibir essas informações na interface do usuário do IoT Central, selecione Exibir identidade no editor de modelo de dispositivo:
Versão de um modelo de dispositivo
Para a versão de um modelo de dispositivo:
- Vá para a página Modelos de dispositivo .
- Selecione o modelo de dispositivo que deseja versionar.
- Selecione Versão na parte superior da página e dê um novo nome ao modelo. O IoT Central sugere um novo nome, que você pode editar.
- Selecione Criar.
Agora você criou um novo modelo com uma identidade exclusiva que não está anexada a nenhum dispositivo existente.
Versão de uma interface
Para a versão de uma interface:
- Vá para a página Modelos de dispositivo .
- Selecione o modelo de dispositivo que você tem em um modo de rascunho.
- Selecione a interface publicada que você deseja versão e editar.
- Selecione Versão na parte superior da página da interface.
- Selecione Criar.
Agora você criou uma nova interface com uma identidade exclusiva que não está sincronizada com a versão anterior da interface.
Migrar um dispositivo entre versões
Você pode criar várias versões do modelo de dispositivo. Com o tempo, você terá vários dispositivos conectados usando esses modelos de dispositivo. Você pode migrar dispositivos de uma versão do modelo de dispositivo para outra. As etapas a seguir descrevem como migrar um dispositivo:
Aceda à página Dispositivos.
Selecione o dispositivo que você precisa migrar para outra versão.
Escolha Migrar:
Selecione o modelo de dispositivo com a versão para a qual deseja migrar o dispositivo e selecione Migrar.
Gorjeta
Você pode usar um trabalho para migrar todos os dispositivos em um grupo de dispositivos para um novo modelo de dispositivo ao mesmo tempo.