Architektur der Nest API

Über den Nest-Dienst

Mit Nest-Anwendungen können Nutzer von überall aus eine Verbindung mit ihrem Zuhause herstellen. Alle Nest-Geräte (Thermostate, Nest Protect-Geräte und Kameras) und Anwendungen (iOS-, Android- und Web-Apps) sind mit dem Nest-Dienst verbunden.

Beispiel für eine Cloud-zu-Cloud

Der Nest-Dienst bietet ein Datenmodell des Zuhauses. Geräte und Anwendungen, die aus diesem Datenmodell lesen, können angemessene Maßnahmen ergreifen. Sie aktualisieren das Datenmodell, um Änderungen im System widerzuspiegeln.

Ein Thermostat liest beispielsweise seine Zieltemperatur aus dem Datenmodell. Er stellt die Umgebungstemperatur auf die aktuelle Messung ein und sendet Sensordaten an die Zuhause/Abwesend-Funktion, die den Gebäudemodus entsprechend anpassen.

Nest-Geräte funktionieren in eingeschränkten Umgebungen. Die Stromversorgung ist eingeschränkt und die Netzwerkverbindung kann zu unzuverlässig sein. Unsere Produkte und Dienste können mithilfe unserer Gerätealgorithmen ein einfaches, intuitives Erlebnis für dein Zuhause schaffen.

Das Datenmodell

Die Nest API wird als JSON-Dokument mit den Attributen metadata, devices und structures der obersten Ebene dargestellt. In Ihren Works with Nest-Produkten wird dieses JSON-Dokument verwendet, um mit Nest-Geräten und entsprechenden Statusänderungen zu interagieren und darauf zu reagieren.

Nest structures stellt physische Strukturen in der realen Welt dar. Sie dienen als Organisationspunkt für devices und speichern Daten für das gesamte Gebäude. In der Regel ist ein structure das Zuhause eines Nutzers.

Nest devices stellt physische Geräte (Thermostate, Protecte und Kameras) innerhalb einer Struktur dar.

Jedes Datenelement im JSON-Dokument kann über die URL aufgerufen werden. Dies wird auch als Datenspeicherorte bezeichnet. Works with Nest-Produkte können Abschnitte dieses Dokuments lesen und bearbeiten sowie Änderungen abonnieren. Mit dieser Abofunktion können Works with Nest-Produkte in Echtzeit auf Änderungen am System reagieren, etwa um das Licht auszuschalten, wenn ein Nutzer die Struktur auf „Abwesend“ setzt.

Für Objekte gelten ebenfalls reale Einschränkungen. Das Datenmodell schützt Geräte und das Zuhause des Nutzers, indem es überraschende und gefährliche Aktionen verhindert. Beispielsweise schaltet der Thermostat die Klimaanlage nicht aus, wenn die Notheizung aktiviert ist.

Untersuchen Sie das Datenmodell mit dieser interaktiven API-Referenz.

Gewünschter Zustand

Der Nest-Dienst speichert den autoritativen Zustand des Systems und Works with Nest-Produkte abonnieren Änderungen. Wenn du diesen Status änderst, z. B. um die Zieltemperatur des Thermostats zu ändern, sendet der Dienst eine Änderungsbenachrichtigung an alle Abonnenten.

Da diese Weitergabe eine gewisse Verzögerung hat und Netzwerke unzuverlässig sein können, ist der von einem Produkt beobachtete Status möglicherweise nicht der Status, der derzeit von anderen Produkten oder dem Dienst beobachtet wird. Der Status wird letztendlich synchronisiert, wenn Nachrichten zwischen verschiedenen Produkten übertragen werden.

Dieses dokumentenorientierte Veröffentlichungs-/Abomodell ermöglicht responsive Anwendungsinteraktionen.

Nutzung des Nest-Dienstes

Für den Zugriff auf die REST-Endpunkte im Nest-Dienst verwenden Sie in Ihrem Produkt HTTPS. Es gibt viele Clientbibliotheken von Drittanbietern, die für diesen Zweck verwendet werden können.

Berechtigungen und Autorisierung

Wir möchten Entwicklern die Entwicklung von Produkten und Diensten ermöglichen, die ein optimales Zuhause schaffen, ohne den Datenschutz und die Sicherheit der Nutzer zu gefährden. Unsere gesamte Kommunikation ist sicher und der Nutzer hat immer explizit Zugriff auf die Daten. Weitere Informationen finden Sie unter Berechtigungen.

Die Autorisierung wird vom OAuth 2.0-Protokoll ausgeführt. Wenn ein Nutzer damit einverstanden ist, Zugriff auf die angeforderte Berechtigungsstufe zu gewähren, authentifiziert Authentifizierung die Anfrage und das Zugriffstoken wird dem Anforderer gewährt. Über dieses Zugriffstoken kannst du auf die Nest API zugreifen und mit den Strukturen und Geräten des Nutzers interagieren.

Durch das Gewähren eines Zugriffstokens wird eine Vertrauensstellung zwischen einem Nutzer, einem Works with Nest-Produkt und Nest hergestellt. Nutzer können den Zugriff jederzeit widerrufen.

Informationen zum Autorisieren einer Verbindung zur Nest API finden Sie unter Autorisierung – Übersicht.