Google is committed to advancing racial equity for Black communities. See how.
Cette page a été traduite par l'API Cloud Translation.
Switch to English

Gestion des données Weave

Maintenant que vous comprenez les principaux composants de Weave, voyons comment certaines de ses fonctionnalités sont gérées à un niveau élevé.

Presque toutes les fonctionnalités de l'écosystème Nest pour les opérations quotidiennes sont mappées sur des ressources et des caractéristiques dans le cadre du schéma Weave. Le profil gestion des données gère toutes les demandes de caractéristiques à l'aide d'un modèle de publication-abonnement. Ces demandes sont des messages spécifiques au profil de gestion des données.

Dans ce type de modèle, un éditeur annonce des traits (données à surveiller) et un abonné réagit aux changements de ces traits publiés (données surveillées). Cette fonction est appelée gestion des traits en temps réel .

Le profil de gestion des données est le cheval de bataille de Weave et est généralement appelé Weave Data Management (WDM).

Demandes

Les demandes sont un élément clé de la gestion des traits en temps réel de WDM. Les demandes sont des demandes standard d'action d'un trait, avec une réponse attendue. Ceux - ci sont différentes de celles d'un trait de commandes en ce sens qu'ils ne sont pas et ne peuvent pas être définis dans le schéma et ne sont pas spécifiques à un trait.

Il existe trois types de requêtes standard:

  • Notify Requête standard qui informe un abonné de l'état d'une propriété de trait ou d'un événement spécifique lié à ce trait.
  • Mettre à jour standard pour modifier l'état d'une propriété de trait.
  • Afficher Demande standard pour afficher les propriétés d'un trait.

Rôles de protocole

Il existe deux types de rôles de protocole WDM: éditeur et abonné. Ces rôles sont attribués au niveau du trait.

Éditeur

Le rôle d' éditeur WDM produit et sert des instances versionnées d'un ou plusieurs schémas à un ou plusieurs abonnés, et envoie des notifications sur une modification du schéma aux abonnés intéressés. Ces notifications sont les demandes standard de notification .

Par exemple, supposons que le trait A est publié par la ressource 1 et abonné par la ressource 2. Comme le montre la figure 1 , si le trait A change:

  1. WDM envoie une de demande de notification de la ressource 1 à tous les abonnés du trait A, les informant du changement.
  2. Chaque abonné met à jour son instance du trait A en conséquence.
Demande de notification de l'éditeur WDM
Figure 1 - Demandes des éditeurs WDM

La même chose se produit pour les autres traits du schéma. Par exemple, si la Ressource 2 publie le Trait B, la Ressource 1 s'abonne au Trait B et le Trait B change:

  1. WDM envoie une de demande de notification de la ressource 2 à tous les abonnés du trait B, les informant du changement.
  2. Chaque abonné met à jour son instance du trait B en conséquence.

Abonné

Le rôle d' abonné WDM affiche et utilise des instances versionnées d'un ou de plusieurs schémas publiés en externe. Il peut modifier l'instance versionnée d'un schéma publié avec une demande de mise à jour ou émettre une commande spécifique à l'application.

Par exemple, supposons que la Ressource 2 veuille changer le Trait A, qui est publié par la Ressource 1. Comme le montre la Figure 2 , pour changer le Trait A:

  1. WDM envoie une demande de mise à jour de la ressource 2 à la ressource 1, pour demander une modification du trait A.
  2. Le trait A de la ressource 1 est modifié.
  3. WDM envoie une de demande de notification de la ressource 1 à tous les abonnés du trait A, les informant du changement.
  4. Chaque abonné met à jour son instance du trait A en conséquence.
Affichage et mise à jour des abonnés WDM
Figure 2 - Demandes d'abonnés WDM

Les abonnés peuvent également envoyer une demande de vue à l' d'un trait, pour afficher les propriétés de ce trait et garder leurs propres instances des traits en synchronisation avec l'éditeur.

Types d'abonnement

Il existe deux types d'abonnements WDM. Les abonnements sont établis avec une demande d' abonnement . La figure 3 illustre le flux de messages de base pour établir un abonnement unidirectionnel.

Abonnement unidirectionnel WDM
Figure 3 - Abonnement unidirectionnel WDM

Une manière

Les abonnements unidirectionnels impliquent une demande d'un abonné à un éditeur pour une ou plusieurs instances de trait. Par exemple, un appareil mobile récupérant l'état de la maison (structure) à partir d'un service.

Mutuel

Les abonnements mutuels se produisent lorsque les ressources s'abonnent les unes aux autres, et chacune agit à la fois en tant qu'éditeur et abonné. Le Nest Guard et le Nest Detect, qui font partie du système Nest Secure, en sont un exemple. Un abonnement mutuel permet aux deux ressources de gérer le schéma publié et de maintenir l'intégrité et la vivacité de leur abonnement d'une manière plus efficace que deux abonnements unidirectionnels.

Exemple

Examinons un exemple simple de la façon dont WDM gère une modification des paramètres régionaux d'un appareil à l'aide d'une application mobile.

Il y a trois ressources et deux traits impliqués dans cet exemple, comme le montre la figure 4 :

  • Device (abonné)
  • Service (éditeur)
  • mobile (abonné)
  • Locale Capabilities trait Available Locales property
  • trait Paramètres régionaux du propriété Active Locale

Les deux caractéristiques sont publiées par la ressource de service et souscrites par les ressources de l'appareil et de l'application mobile. Chaque abonné fonctionne comme un abonnement unidirectionnel aux éditeurs de traits sur la ressource Service.

Toutes les ressources de cet exemple font partie de la même tissu Weave.

Exemple WDM
Figure 4 - Exemple WDM

Mettre à jour le flux

Supposons que l'utilisateur utilise son application mobile pour changer les paramètres régionaux de l'appareil de en_US à fr_FR , à l'aide d'une application mobile connectée. Comme le montre la figure 5 , le flux de mise à jour dans WDM est:

  1. La ressource d'application mobile (abonné) envoie une demande de mise à jour à la ressource Service (éditeur) pour modifier la propriété Active Locale du trait Locale Settings en fr_FR , l'une des valeurs valides de la propriété Available Locales du trait Locale Capabilities.
  2. La ressource Service modifie la propriété Active Locale de la caractéristique Locale Settings dans sa copie du schéma.
  3. La ressource de service envoie une demande de notification au sujet du changement à tous les abonnés du trait paramètres locaux.
  4. Les ressources de l'appareil et de l'application mobile (abonnés) reçoivent toutes deux la demande de notification de la ressource de service et mettent à jour la propriété Active Locale du trait Paramètres régionaux dans leurs copies du schéma.
Séquence de flux de mise à jour WDM
Figure 5 - Flux de mise à jour WDM

Les avantages du WDM

Cela peut sembler très compliqué lorsque tout ce que vous voulez faire est de changer les paramètres régionaux de votre appareil à partir d'une application mobile. Mais en regroupant le schéma versionné, le modèle de publication-abonnement et les demandes dans le profil WDM, Weave garantit l'intégrité des données sur toutes les ressources.

Il assure également la vivacité, donc lorsqu'un appareil est redémarré, il informe immédiatement tous les abonnés de l'état de ses traits publiés, observe l'état des traits souscrits et reflète tous ces états dans sa copie du schéma sans perte de fonctionnalité.

Au-delà des abonnements

Si une ressource se désabonne d'un trait, elle conserve une copie de la dernière version connue du trait. Il ne reçoit plus notifier les demandes de l'éditeur pour ce trait, mais peut toujours envoyer des demandes de mise à jour à cet éditeur.

Même les ressources qui n'ont jamais été abonnées à un éditeur de traits peuvent leur envoyer des demandes. Par exemple, une ressource peut ne pas avoir besoin de connaître l'état d'un trait, mais peut souhaiter envoyer des demandes de mise à jour pour changer l'état de ce trait en réponse à un événement externe.

résumer

Ce que vous avez appris:

  • Weave Data Management (WDM) est le profil Weave pour la gestion des traits en temps réel et garantit la vivacité et l'intégrité des données sur toutes les ressources
  • Les requêtes sont des requêtes standard d'action d'un trait, avec une réponse attendue
  • WDM comporte deux rôles de protocole:
    • Éditeur - La source de vérité pour un trait particulier, envoie des demandes de notification
    • Abonné - Observe le schéma publié, envoie des vue , de mise à jour ou de commandes
  • WDM propose deux modèles d'abonnement:
    • Unidirectionnel - Les demandes circulent d'un abonné à un éditeur
    • Mutuel - Les appareils s'abonnent les uns aux autres
  • Les abonnements sont établis par des demandes d' abonnement
  • Les ressources peuvent envoyer des messages WDM aux traits même si elles n'y sont pas abonnées

Pour plus d'informations, consultez: