Weave-Datenverwaltung

Du kennst jetzt die Hauptbestandteile von Weave. Sehen wir uns nun an, wie ein Teil der Funktionen allgemein gehandhabt wird.

Fast alle Funktionen der Nest-Umgebung für den täglichen Betrieb werden im Rahmen des Weave-Schemas Ressourcen und Merkmalen zugeordnet. Im Profil Datenverwaltung werden alle Anfragen für Merkmale mit einem Veröffentlichungs-/Abo-Modell verwaltet. Diese Anfragen sind Nachrichten, die für das Datenverwaltungsprofil spezifisch sind.

Bei diesem Modell bewirbt ein Publisher Merkmale (Daten zum Anschauen) und ein Abonnent reagiert auf Änderungen an diesen veröffentlichten Merkmalen (Daten, die beobachtet werden). Diese Funktion wird als Merkmalsverwaltung in Echtzeit bezeichnet.

Das Profil zur Datenverwaltung ist das Werk von Weave und wird im Allgemeinen als Weave Data Management (WDM) bezeichnet.

Anfragen

Anfragen sind ein wichtiges Element der WDM-Verwaltung in Echtzeit. Anfragen sind Standardanfragen für eine Aktion mit einer erwarteten Antwort. Im Unterschied zu Merkmalsparametern sind die Befehle darin nicht definiert und können nicht im Schema definiert werden.

Es gibt drei Arten von Standardanfragen:

  • Benachrichtigen : Die Standardanfrage informiert einen Abonnent über den Status einer Eigenschaft oder eines bestimmten Ereignisses, das sich auf diese Eigenschaft bezieht.
  • Update -Standardanfrage, um den Status einer Eigenschaft zu ändern.
  • Ansicht Standardanfrage, um die Eigenschaften eines Merkmals anzusehen.

Protokollrollen

Es gibt zwei Arten von WDM-Protokollrollen: Verlag und Webpublisher. Diese Rollen werden auf Straßenebene zugewiesen.

Publisher

Die WDM-Rolle publisher produziert oder bereitstellt Versionsinstanzen von einem oder mehreren Schemas an einen oder mehrere Abonnenten und sendet Benachrichtigungen zu einer Änderung des Schemas an interessierte Abonnenten. Dies sind die Benachrichtigungs-Standardanfragen.

Beispiel: Trait A wird von Ressource 1 veröffentlicht und von Ressource 2 abonniert. Wenn Zeile A wie in Abbildung 1 gezeigt wird, gilt Folgendes:

  1. WDM sendet von der Ressource 1 aus eine Benachrichtigungsanforderung an alle Abonnenten von Trait A. Darin werden sie über die Änderung informiert.
  2. Jeder Abonnent aktualisiert die Instanz von Trait A entsprechend.
WDM-Anforderung von Publishern
Abbildung 1 – WDM-Publisher-Anfragen

Das Gleiche passiert bei anderen Merkmalen im Schema. Wenn beispielsweise Ressource 2 Trait B veröffentlicht, wird Ressource 1 zu Trait B abonniert und Trait B wird so geändert:

  1. WDM sendet von der Ressource 2 aus eine Benachrichtigungsanforderung an alle Abonnenten von Trait B, in der sie über die Änderung informiert werden.
  2. Jeder Abonnent aktualisiert seine Instanz von Trait B entsprechend.

Subscriber

Die WDM-Rolle Abonnent sieht sich Versionsinstanzen eines oder mehrerer extern veröffentlichter Schemas an und verbraucht sie. Sie kann die versionierte Instanz eines veröffentlichten Schemas mit einer update-Anfrage ändern oder einen anwendungsspezifischen Befehl ausgeben.

Beispiel: Angenommen, Ressource 2 möchte Trait A ändern, die von Ressource 1 veröffentlicht wurde. So ändern Sie Position A in Abbildung 2:

  1. WDM sendet eine Updateanfrage von Ressource 2 an Ressource 1, um eine Änderung an Trait A anzufordern.
  2. Zeile A in Ressource 1 wurde geändert.
  3. WDM sendet von der Ressource 1 aus eine Benachrichtigungsanforderung an alle Abonnenten von Trait A. Darin werden sie über die Änderung informiert.
  4. Jeder Abonnent aktualisiert die Instanz von Trait A entsprechend.
WDM-Abonnenten anzeigen und aktualisieren
Abbildung 2 – Anfragen nach WDM-Abonnenten

Abonnenten können außerdem eine AnsichtAnsicht an einen Merkmalsverlag senden, um die Eigenschaften dieses Eigenschaften zu sehen und ihre eigenen Stellen der Eigenschaften mit dem Verlag oder Webpublisher zu synchronisieren.

Abotypen

Es gibt zwei Arten von WDM-Abos. Abos werden mit einer Abonnieren--Anfrage abgeschlossen. Abbildung 3 zeigt den grundlegenden Nachrichtenfluss für ein einmaliges Abo.

WDM (einfache Fahrt)
Abbildung 3 – Einfache Monatsabo:

Einbahnstraße

Bei wegweisenden Abos wird eine Anfrage von einem Abonnenten an einen Verlag oder Webpublisher für eine oder mehrere Instanzen des Dienstes gesendet. Beispiel: ein Mobilgerät, das den Status des Zuhauses (Struktur) eines Dienstes abruft

Gegenseitiges

Gemeinsame Abos sind gegenseitige Abos und werden jeweils als Verlag oder Webpublisher und Abonnent agieren. Ein Beispiel sind Nest Guard und Nest Detect, die zum Nest Secure-System gehören. Ein gegenseitiges Abo ermöglicht beiden Ressourcen die Verwaltung des veröffentlichten Schemas und die Integrität und Lebensdauer ihres Abos effizienter als zwei einseitige Abos.

Beispiel

Sehen wir uns anhand eines einfachen Beispiels an, wie WDM mit einer Änderung an einem Gebietsschema über eine mobile App umgeht.

In diesem Beispiel gibt es drei Ressourcen und zwei Merkmale, wie in Abbildung 4 gezeigt:

  • Gerät (Abonnent)
  • -Dienst (Publisher)
  • App (Abonnent)
  • Sprache-Merkmale-Merkmal Verfügbare Gebietsschema-Property
  • Typ der Sprache für die Sprache Property für aktive Sprache

Beide Merkmale werden von der Dienstressource veröffentlicht und von den Geräte- und App-Ressourcen abonniert. Jeder Abonnent fungiert bei den Dienstanbietern für die Dienstressource als ein einseitiges Abo.

Alle Ressourcen in diesem Beispiel sind Teil desselben Weave-Stoffs .

WDM-Beispiel
Abbildung 4 – Beispiel für eine Mobilgeräteverwaltung

Ablauf aktualisieren

Angenommen, der Nutzer verwendet seine mobile App, um die Sprache für das Gerät mithilfe einer verbundenen mobilen App von en_US in fr_FR zu ändern. Wie in Abbildung 5 gezeigt, wird der Aktualisierungsvorgang in WDM so ausgeführt:

  1. Die Ressource „App“ (Abonnent) sendet eine Update-Anfrage an die Dienstressource (Publisher), um die Eigenschaft „Active Locale“ der Sprache „Locale“ zu ändern. Dies ist einer der gültigen Werte der Eigenschaft „Locale Capabilitys“ (Verfügbare Sprachen).
  2. Die Dienstressource ändert die Property „Active Locale“ der Sprache „Locale Settings“ in ihrer Kopie des Schemas.
  3. Die Service-Ressource sendet eine BenachrichtigungBenachrichtigung über die Änderung an alle Abonnenten des Gebietsschemas.
  4. Die Geräte- und mobilen App-Ressourcen (Abonnenten) erhalten beide die Dienstressource benachrichtigen und aktualisieren die Eigenschaft "Active Locale" der Sprache "Locale Settings" in ihren Kopien des Schemas.
Ablauf der Aktualisierung des WDM-Updates
Abbildung 5 – WDM-Aktualisierungsvorgang

Die Vorteile von WDM

Das mag kompliziert erscheinen, wenn man nur die Sprache auf seinem Gerät in einer mobilen App ändern möchte. Aber wenn das Versionsschema verpackt, das Muster für Veröffentlichungen veröffentlicht und Anfragen an das WDM-Profil gesendet werden, wird die Datenintegrität für alle Ressourcen sichergestellt.

Außerdem wird die Aktualität sichergestellt. Wenn ein Gerät neu gestartet wird, werden sofort alle Abonnenten über den Status ihrer veröffentlichten Eigenschaften benachrichtigt, der Status der abonnierten Merkmale wird beobachtet und alle diese Status werden in der Kopie des Schemas berücksichtigt, ohne dass Funktionen verloren gehen.

Mehr als Abos

Wenn eine Ressource ein Merkmal abmeldet, wird eine Kopie der letzten bekannten Version beibehalten. Der Verlag oder Webpublisher erhält von diesem Publisher keine Benachrichtigungsbenachrichtigungen mehr über das Merkmal "", kann aber trotzdem Aktualisierungsanfragen an diesen Publisher senden.

Auch Ressourcen, die nie einen Trat-Publisher abonniert hatten, können Anfragen an sie senden. Eine Ressource muss möglicherweise nicht den Status einer Eigenschaft kennen, muss aber Updateanfragen senden, um den Status der Eigenschaft bei einem externen Ereignis zu ändern.

Zusammenfassung

Das haben Sie gelernt:

  • Weave Data Management (WDM) ist das Weave-Profil für die Echtzeit-Verwaltung von Eigenschaften von Fahrzeugen. Es gewährleistet die Lebewesenheit und die Datenintegrität in allen Ressourcen.
  • Anfragen sind Standardanfragen für eine Aktion mit einer erwarteten Antwort
  • WDM bietet zwei Protokollrollen:
    • Publisher: Die Quelle der Wahrheit für eine bestimmte Eigenschaft sendet Benachrichtigungen für .
    • Abonnent: Beobachtt das veröffentlichte Schema, sendet view-, update- oder Befehle
  • WDM bietet zwei Abomodelle:
    • Nur eine Richtung: Anfragen werden vom Abonnenten zum Verlag gesendet.
    • Gegenseitig – Geräte abonnieren sich gegenseitig
  • Abos werden durch Aboanfragen abgeschlossen
  • Ressourcen können WDM-Nachrichten an Merkmale senden, auch wenn sie sie nicht abonniert haben

Ausführlichere Informationen finden Sie unter: