O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

A arquitetura da API Nest

Sobre o serviço Nest

Os aplicativos Nest permitem que os usuários se conectem com suas casas onde quer que estejam. Todos os dispositivos Nest (termostatos, proteções e câmeras) e aplicativos (iOS, Android e aplicativos da web) se conectam ao serviço Nest.

Exemplo de nuvem para nuvem

O serviço Nest fornece um modelo de dados da casa. Dispositivos e aplicativos leem a partir deste modelo de dados para tomar as medidas adequadas. Eles atualizam o modelo de dados para refletir as mudanças no sistema.

Por exemplo, um termostato lê sua temperatura alvo a partir do modelo de dados. Ele ajusta a temperatura ambiente para sua medição atual e envia os dados do sensor para o Home / Away Assist, que ajusta o modo de estrutura de acordo.

Os dispositivos Nest operam em ambientes restritos. A energia é limitada e a conectividade da rede doméstica pode não ser confiável. Seus produtos e serviços podem aproveitar nossos algoritmos de dispositivo para oferecer aos usuários uma experiência doméstica simples e intuitiva.

O modelo de dados

A API Nest é representado como um documento JSON com atributos de alto nível de metadata , devices e structures . Seus produtos Works with Nest usam este documento JSON para interagir e reagir a dispositivos Nest e mudanças de estado relacionadas.

Nest structures representam estruturas físicas do mundo real. Eles servem como um ponto de organização para devices e armazenar dados para a construção como um todo. Tipicamente, uma structure é uma casa do utilizador.

Nest devices representam dispositivos físicos (termostatos, protege, e Câmaras) dentro de uma estrutura.

Cada elemento de dados no documento JSON pode ser endereçado por URL (também conhecido como "locais de dados"). Os produtos Works with Nest podem ler e gravar seções deste documento e assinar as alterações. Esse recurso de assinatura permite que os produtos Works with Nest reajam em tempo real às alterações feitas no sistema, como desligar as luzes quando um usuário define a estrutura como Ausente.

Os objetos também funcionam sob restrições do mundo real. O modelo de dados protege os dispositivos e a casa do usuário, evitando ações surpreendentes e perigosas. Por exemplo, o termostato não liga o ar condicionado quando o aquecimento de emergência está ativado.

Explorar o modelo de dados com este Referência API interativa .

Estado pretendido

O serviço Nest armazena o estado autoritativo do sistema e os produtos Works with Nest assinam as alterações. A modificação desse estado (por exemplo, para alterar a temperatura desejada de um termostato) faz com que o serviço envie uma notificação de alteração para todos os assinantes.

Como essa propagação tem algum atraso e as redes podem não ser confiáveis, o estado observado por um produto pode não ser o estado atualmente observado por outros produtos ou serviço. O estado é eventualmente sincronizado à medida que as mensagens são transmitidas entre vários produtos.

Este modelo de publicação / assinatura orientado a documentos fornece interações de aplicativos responsivas.

Usando o serviço Nest

Para acessar os terminais REST no serviço Nest, use HTTPS em seu produto. Existem muitas bibliotecas cliente de terceiros que podem ser usadas para essa finalidade.

Permissões e autorização

Queremos permitir que os desenvolvedores criem produtos e serviços que tornem as casas melhores, sem comprometer a privacidade e a segurança do usuário. Todas as nossas comunicações são seguras e a permissão para acessar os dados é sempre concedida explicitamente pelo usuário. Para mais informações, consulte a Visão geral das permissões .

A autorização é tratada pelo protocolo OAuth 2.0. Quando um usuário concorda em fornecer acesso ao nível de permissão solicitado, a Nest autentica a solicitação e um token de acesso é concedido ao solicitante. Esse token de acesso pode ser usado para acessar a API Nest e interagir com as estruturas e dispositivos do usuário.

A concessão de um token de acesso estabelece uma relação de confiança entre um usuário, um produto Works with Nest e a Nest. Os usuários podem revogar o acesso a qualquer momento.

Para aprender a autorizar uma conexão com a API Nest, consulte o Visão geral de Autorização .