O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

Gerenciamento de dados de tecer

Agora que você entende os principais componentes do Weave, vamos dar uma olhada em como algumas de suas funcionalidades são tratadas em alto nível.

Quase todas as funcionalidades do ecossistema Nest para operações diárias são mapeadas para recursos e características como parte do esquema do Weave. O perfil Gerenciamento de Dados gerencia todas as solicitações de características usando um modelo de publicação-assinatura. Essas solicitações são mensagens específicas para o perfil de gerenciamento de dados.

Nesse tipo de modelo, um editor anuncia características (dados a serem observados) e um assinante reage a alterações nessas características publicadas (dados sendo observados). Essa função é chamada de gerenciamento de características em tempo real .

O perfil de gerenciamento de dados é o cavalo de batalha do Weave e geralmente é chamado de WDM (Weave Data Management).

solicitações de

Solicitações são um elemento-chave do gerenciamento de características em tempo real do WDM. Solicitações são solicitações padrão para ação de uma característica, com uma resposta esperada. Eles são diferentes dos comandos de uma característica, pois não são e não podem ser definidos no esquema e não são específicos a nenhuma característica.

Existem três tipos de solicitações padrão:

  • Notificar Solicitação padrão que informa um assinante do estado de uma propriedade de característica ou de um evento específico relacionado a essa característica.
  • Atualize a solicitação Standard para alterar o estado de uma propriedade de característica.
  • Visualizar Solicitação padrão para visualizar as propriedades de uma característica.

Funções de protocolo

Existem dois tipos de funções de protocolo WDM: publicador e assinante. Essas funções são atribuídas no nível de característica.

Editor

A função de editor do WDM produz e serve instâncias com versão de um ou mais esquemas para um ou mais assinantes e envia notificações sobre uma alteração no esquema aos assinantes interessados. Essas notificações são as solicitações padrão de notificação .

Por exemplo, suponha que o Traço A seja publicado pelo Recurso 1 e inscrito no Recurso 2. Conforme mostrado na Figura 1 , se o Traço A mudar:

  1. WDM envia uma notificar pedido da Resource 1 a todos os assinantes de Trait A, informando-os da mudança.
  2. Cada assinante atualiza sua instância do Traço A de acordo.
Solicitação de notificação do Publicador WDM
Figura 1 - Solicitações do editor WDM

O mesmo acontece com outras características no esquema. Por exemplo, se o Recurso 2 publica o Traço B, o Recurso 1 assina o Traço B e o Traço B muda:

  1. WDM envia um pedido notificar de Recurso 2 para todos os assinantes de Trait B, informando-os da mudança.
  2. Cada assinante atualiza sua instância do Traço B de acordo.

Assinante

A função de assinante WDM exibe e consome instâncias com versão de um ou mais esquemas publicados externamente. Ele pode alterar a instância com versão de um esquema publicado com uma solicitação de atualização ou emitir um comando específico do aplicativo.

Por exemplo, suponha que o Recurso 2 queira alterar o Traço A, publicado pelo Recurso 1. Como mostrado na Figura 2 , para alterar o Traço A:

  1. O WDM envia uma solicitação de atualização do Recurso 2 para o Recurso 1, para solicitar uma alteração no Traço A.
  2. A característica A do recurso 1 foi alterada.
  3. WDM envia um pedido notificar da Resource 1 a todos os assinantes de Trait A, informando-os da mudança.
  4. Cada assinante atualiza sua instância do Traço A de acordo.
Visualização e atualização do Assinante WDM
Figura 2 - Solicitações de assinante WDM

Os assinantes também podem enviar uma solicitação de visualização ao de uma característica, para visualizar as propriedades dessa característica e manter suas próprias instâncias das características em sincronia com o editor.

Tipos de assinatura

Existem dois tipos de assinaturas WDM. As assinaturas são estabelecidas com uma solicitação de assinatura . A Figura 3 ilustra o fluxo de mensagens básico para estabelecer uma assinatura unidirecional.

Assinatura unidirecional do WDM
Figura 3 - Assinatura unidirecional do WDM

Mão única

As assinaturas unidirecionais envolvem uma solicitação de um assinante para um editor para uma ou mais instâncias de características. Por exemplo, um dispositivo móvel que recupera o estado da casa (estrutura) de um serviço.

Mútuo

Assinaturas mútuas são quando os recursos se assinam e cada um atua como publicador e assinante. Um exemplo disso é o Nest Guard e o Nest Detect, que fazem parte do sistema Nest Secure. Uma assinatura mútua permite que ambos os recursos gerenciem o esquema publicado e mantenham a integridade e a vitalidade de sua assinatura de maneira mais eficiente do que duas assinaturas unidirecionais.

Exemplo

Vejamos um exemplo simples de como o WDM lida com uma alteração na localidade de um dispositivo usando um aplicativo móvel.

Existem três recursos e duas características envolvidas neste exemplo, como mostra a Figura 4 :

  • Dispositivo (assinante)
  • Serviço (editor)
  • móvel (assinante)
  • propriedade de recursos de localidade de propriedade de localidades disponíveis
  • característica de configurações de localidade de propriedade localidade ativa

Ambas as características são publicadas pelo recurso Serviço e assinadas pelos recursos Dispositivo e Aplicativo Móvel. Cada assinante funciona como uma assinatura unidirecional para os publicadores de características no recurso Serviço.

Todos os recursos neste exemplo fazem parte da mesma tecido Weave.

Exemplo WDM
Figura 4 - Exemplo WDM

Atualizar fluxo

Digamos que o usuário use seu aplicativo móvel para alterar a localidade do dispositivo de en_US para fr_FR , usando um aplicativo móvel conectado. Conforme mostrado na Figura 5 , o fluxo de atualização no WDM é:

  1. O recurso Mobile App (assinante) envia uma solicitação de atualização ao recurso Service (publisher) para alterar a propriedade Active Locale da característica Locale Settings para fr_FR , um dos valores válidos da propriedade Available Locales da característica Locale Capabilities.
  2. O recurso Serviço altera a propriedade Active Locale da característica Locale Settings em sua cópia do esquema.
  3. O recurso de serviço envia uma solicitação notificar sobre a mudança para quaisquer assinantes de configurações de localidade do traço.
  4. Os recursos do dispositivo e do aplicativo móvel (assinantes) recebem o solicitação de notificação do recurso de serviço e atualizam a propriedade Local ativo do atributo Configurações do local em suas cópias do esquema.
Sequência de fluxo de atualização do WDM
Figura 5 - Fluxo de atualização do WDM

Os benefícios do WDM

Isso pode parecer muito complicado quando tudo o que você deseja fazer é alterar a localidade do seu dispositivo a partir de um aplicativo móvel. Mas, agrupando o esquema com versão, o padrão de publicação-assinatura e as solicitações no perfil WDM, o Weave garante a integridade dos dados em todos os recursos.

Ele também garante agilidade, portanto, quando um dispositivo é reiniciado, ele notifica imediatamente todos os assinantes do estado de seus traços publicados, observa o estado dos traços registrados e reflete todos esses estados em sua cópia do esquema sem perda de funcionalidade.

Além das assinaturas

Se um recurso cancelar a inscrição de uma característica, ele reterá uma cópia da última versão conhecida da característica. Já não recebe notificar solicitações de a partir do editor para essa característica, mas ainda pode enviar pedidos de actualização a esse editor.

Mesmo os recursos que nunca foram inscritos em um editor de características podem enviar solicitações a eles. Por exemplo, um recurso pode não precisar saber sobre o estado de uma característica, mas pode enviar solicitações de atualização para alterar o estado dessa característica em resposta a um evento externo.

Recapitular

O que você aprendeu:

  • Gerenciamento de dados de weave (WDM) é o perfil de Weave para gerenciamento de características em tempo real e garante a integridade e integridade dos dados em todos os recursos
  • Solicitações são solicitações padrão de ação de uma característica, com uma resposta esperada
  • O WDM possui duas funções de protocolo:
    • Publisher - A fonte da verdade para uma característica particular, envia notificar solicitações de
    • Assinante - Observa o esquema publicado, envia a visualização , atualiza ou solicita o comando
  • O WDM possui dois modelos de assinatura:
    • Unidirecional - as solicitações fluem do assinante para o editor
    • Mútuo - os dispositivos se assinam
  • As assinaturas são estabelecidas por solicitações de assinatura
  • Os recursos podem enviar mensagens WDM para características, mesmo que não estejam assinadas.

Para informações mais detalhadas, consulte: