Schema für Heimnetzwerk-Smart-Home-Steuerung

action.devices.traits.NetworkControl: Diese Eigenschaft gehört zu Geräten, die Netzwerkberichte und netzwerkspezifische Vorgänge unterstützen.

Geräte-ATTRIBUTE

Geräte mit diesem Merkmal können im Rahmen des SYNC-Vorgangs die folgenden Attribute melden. Weitere Informationen zum Verarbeiten von SYNC-Intents finden Sie unter Intent-Auftragsausführung.

Attribute Typ Beschreibung
supportsEnablingGuestNetwork Boolesch

(Standard: false)

Wird auf „true“ gesetzt, wenn das Gastnetzwerk aktiviert werden kann.

supportsDisablingGuestNetwork Boolesch

(Standard: false)

Wird auf „true“ gesetzt, wenn das Gastnetzwerk deaktiviert werden kann.

supportsGettingGuestNetworkPassword Boolesch

(Standard: false)

Wird auf „true“ gesetzt, wenn das Passwort des Gastnetzwerks über den Befehl GetGuestNetworkPassword abgerufen werden kann.

networkProfiles Array

Gibt die Namen der unterstützten Netzwerkprofile an.

[item, ...] String

Name eines Netzwerkprofils, das eine Gruppe zusammengehöriger Geräte darstellt.

supportsEnablingNetworkProfile Boolesch

(Standard: "false")

Wird auf „true“ gesetzt, wenn Netzwerkprofile aktiviert werden können.

supportsDisablingNetworkProfile Boolesch

(Standard: "false")

Wird auf „true“ gesetzt, wenn Netzwerkprofile deaktiviert werden können.

supportsNetworkDownloadSpeedTest Boolesch

(Standard: false)

Wird auf „true“ gesetzt, wenn ein Test der Downloadgeschwindigkeit ausgeführt werden kann.

supportsNetworkUploadSpeedTest Boolesch

(Standard: false)

Wird auf „true“ gesetzt, wenn ein Test der Uploadgeschwindigkeit ausgeführt werden kann.

Beispiele

Netzwerkgerät, das Gastnetzwerke, Profile und Geschwindigkeitstests unterstützt.

{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true,
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true,
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true,
  "supportsGettingGuestNetworkPassword": true,
  "networkProfiles": [
    "Kids"
  ]
}

Gerätestatus

Entitäten mit diesem Merkmal können im Rahmen des QUERY-Vorgangs die folgenden Status melden: Weitere Informationen zum Verarbeiten von QUERY-Intents finden Sie unter Intent-Auftragsausführung.

Bundesstaaten Typ Beschreibung
networkEnabled Boolesch

Gibt an, ob das Hauptnetzwerk aktiviert ist.

networkSettings Objekt

Enthält die SSID des Hauptnetzwerks.

ssid String

Erforderlich.

Netzwerk-SSID.

guestNetworkEnabled Boolesch

Gibt an, ob das Gastnetzwerk aktiviert ist.

guestNetworkSettings Objekt

Enthält die SSID des Gastnetzwerks.

ssid String

Erforderlich.

Netzwerk-SSID.

numConnectedDevices Ganzzahl

Die Anzahl der Geräte, die mit dem Netzwerk verbunden sind.

networkUsageMB Number

Die Netzwerknutzung in MB (Megabyte). Die Netzwerknutzung liegt innerhalb des aktuellen Abrechnungszeitraums. So können Sie die Netzwerknutzungsdauer in einem Abrechnungszeitraum besser im Blick behalten.

networkUsageLimitMB Number

Das Netzwerknutzungslimit in MB (Megabyte). Das Limit für die Netzwerknutzung liegt innerhalb des aktuellen Abrechnungszeitraums.

networkUsageUnlimited Boolesch

Gibt an, ob die Netzwerknutzung unbegrenzt ist. Der Gerätestatus „networkUsageLimitMB“ wird ignoriert, wenn dies auf „true“ gesetzt ist.

lastNetworkDownloadSpeedTest Objekt

Enthält die Ergebnisse des letzten Tests für die Netzwerkdownloadgeschwindigkeit.

downloadSpeedMbps Number

Die Downloadgeschwindigkeit in Mbit/s (Megabit pro Sekunde) des letzten Tests für die Netzwerkgeschwindigkeit

unixTimestampSec Ganzzahl

Der Unix-Zeitstempel (Anzahl der Sekunden seit der Unix-Epoche) des Zeitpunkts, zu dem der letzte Netzwerkgeschwindigkeitstest durchgeführt wurde.

status String

Gibt an, ob der letzte Netzwerk-Downloadtest erfolgreich war oder fehlgeschlagen ist.

Unterstützte Werte:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest Objekt

Enthält die Ergebnisse des letzten Tests für die Netzwerkuploadgeschwindigkeit.

uploadSpeedMbps Number

Die Uploadgeschwindigkeit in Mbit/s (Megabit pro Sekunde) des letzten Tests für die Netzwerkgeschwindigkeit

unixTimestampSec Ganzzahl

Der Unix-Zeitstempel (Anzahl der Sekunden seit der Unix-Epoche) des Zeitpunkts, an dem der letzte Test der Netzwerkuploadgeschwindigkeit ausgeführt wurde.

status String

Gibt an, ob der letzte Netzwerkgeschwindigkeits-Upload erfolgreich war oder fehlgeschlagen ist.

Unterstützte Werte:

SUCCESS
FAILURE
networkSpeedTestInProgress Boolesch

(Standard: false)

Gibt an, ob derzeit ein Geschwindigkeitstest durchgeführt wird.

networkProfilesState Objekt

Status für Netzwerkprofile. Dieses Objekt der obersten Ebene muss Schlüssel/Wert-Paare enthalten. Der Schlüssel ist dabei der Name eines der Netzwerkprofile, die im Attribut networkProfiles aufgeführt sind, und der Wert sollte der entsprechende Status dieses Profils sein.

<string> Objekt

Ein Objekt, das den Status eines einzelnen Netzwerkprofils speichert. Der Wert des Schlüssels muss der Name eines der Netzwerkprofile im Attribut networkProfiles sein.

enabled Boolesch

Der aktuelle aktivierte/deaktivierte Status des Netzwerkprofils.

Beispiele

Gerät mit aktivem Netzwerk

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "guestNetworkSettings": {
    "ssid": "home-network-123-guest"
  },
  "numConnectedDevices": 4,
  "networkUsageMB": 100.8
}

Gerät mit einem aktiven Netzwerk und Ergebnissen des Geschwindigkeitstests.

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "guestNetworkSettings": {
    "ssid": "home-network-123-guest"
  },
  "numConnectedDevices": 4,
  "networkUsageMB": 100.8,
  "lastNetworkDownloadSpeedTest": {
    "downloadSpeedMbps": 159.8,
    "unixTimestampSec": 1563215576,
    "status": "SUCCESS"
  },
  "lastNetworkUploadSpeedTest": {
    "uploadSpeedMbps": 64.1,
    "unixTimestampSec": 1563215576,
    "status": "SUCCESS"
  }
}

Gerät mit aktivem Netzwerk und Geschwindigkeitstest läuft.

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "guestNetworkSettings": {
    "ssid": "home-network-123-guest"
  },
  "numConnectedDevices": 4,
  "networkUsageMB": 100.8,
  "networkSpeedTestInProgress": true
}

Gerät mit deaktiviertem Network-Profil „kids“.

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "networkProfilesState": {
    "parents": {
      "enabled": true
    },
    "kids": {
      "enabled": false
    }
  }
}

BEISPIELE für Geräte

Geräte mit diesem Merkmal können im Rahmen des EXECUTE-Vorgangs auf die folgenden Befehle reagieren. Weitere Informationen zum Verarbeiten von EXECUTE-Intents finden Sie unter Intent-Auftragsausführung.

action.devices.commands.EnableDisableGuestNetwork

Aktivieren oder deaktivieren Sie das Gastnetzwerk. Es muss eine sekundäre Nutzerbestätigung mit PIN verwendet werden. Die Sicherheit eines Zuhauses kann als betroffen erachtet werden, wenn andere Sicherheitsgeräte über diese Befehle deaktiviert werden.

Für diesen Befehl sind die folgenden Attribute erforderlich:
{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true
}

Parameter

Parameter Typ Beschreibung
enable Boolesch

Erforderlich.

True, um das Gastnetzwerk zu aktivieren, und False, um das Gastnetzwerk zu deaktivieren.

Beispiele

Aktivieren Sie das Gastnetzwerk.

{
  "command": "action.devices.commands.EnableDisableGuestNetwork",
  "params": {
    "enable": true
  }
}

action.devices.commands.EnableDisableNetworkProfile

Netzwerkprofil aktivieren oder deaktivieren Es muss eine sekundäre Nutzerbestätigung mit PIN verwendet werden. Die Sicherheit eines Zuhauses kann als betroffen erachtet werden, wenn andere Sicherheitsgeräte über diese Befehle deaktiviert werden.

Für diesen Befehl sind die folgenden Attribute erforderlich:
{
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true
}

Parameter

Parameter Typ Beschreibung
profile String

Erforderlich.

Der Profilname aus dem Attribut networkProfiles.

enable Boolesch

Erforderlich.

True, um das Profil zu aktivieren, false, um das Profil zu deaktivieren.

Beispiele

Internetverbindung für Kinder deaktivieren

{
  "command": "action.devices.commands.EnableDisableNetworkProfile",
  "params": {
    "profile": "Kids",
    "enable": false
  }
}

Beim Steuern des angegebenen Netzwerkprofils ist ein Fehler aufgetreten.

Unterstützte Werte:

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

Rufen Sie das Passwort für das Gastnetzwerk ab. Es muss eine sekundäre Nutzerbestätigung mit PIN verwendet werden. Die Sicherheit eines Zuhauses kann als betroffen erachtet werden, wenn andere Sicherheitsgeräte über diese Befehle deaktiviert werden.

Für diesen Befehl sind die folgenden Attribute erforderlich:
{
  "supportsGettingGuestNetworkPassword": true
}

Parameter

Parameter Typ Beschreibung

Keine Attribute

Beispiele

Zeig mein Passwort für das Gast-WLAN.

{
  "command": "action.devices.commands.GetGuestNetworkPassword",
  "params": {}
}

Ergebnisse

Ergebnisse Typ Beschreibung
guestNetworkPassword String

Erforderlich.

Das Passwort für das Gastnetzwerk.

Beispiele

Zeig mein Passwort für das Gast-WLAN.

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

Testen Sie die Download- und Uploadgeschwindigkeit des Netzwerks.

Für diesen Befehl sind die folgenden Attribute erforderlich:
{
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true
}

Parameter

Parameter Typ Beschreibung
testDownloadSpeed Boolesch

Erforderlich.

Gibt an, ob die Downloadgeschwindigkeit getestet werden soll.

testUploadSpeed Boolesch

Erforderlich.

Gibt an, ob die Uploadgeschwindigkeit getestet werden soll.

followUpToken String

Erforderlich.

Von Google bereitgestelltes Token für die Folgeantwort.

Beispiele

Wie hoch ist die WLAN-Geschwindigkeit?

{
  "command": "action.devices.commands.TestNetworkSpeed",
  "params": {
    "testDownloadSpeed": true,
    "testUploadSpeed": true,
    "followUpToken": "123"
  }
}

Beim Anfordern eines Geschwindigkeitstests ist ein Fehler aufgetreten.

Unterstützte Werte:

networkSpeedTestInProgress

Weitere Antworten

Geräte mit diesem Merkmal können im Rahmen des Vorgangs EXECUTE die folgende Nutzlast einer Folgeantwort zurückgeben. Weitere Informationen zum Implementieren von Folgeantworten finden Sie unter Benachrichtigungen für Smart-Home-Aktionen.

Die Nutzlast enthält eine der folgenden Optionen:

Erfolgreich: networkDownloadSpeedMbps

Felder Typ Beschreibung
followUpToken String

Erforderlich.

Token aus der ursprünglichen EXECUTE-Anfrage.

status String

Erforderlich.

Ergebnis der Anfrage.

Unterstützte Werte:

SUCCESS
networkDownloadSpeedMbps Number

Erforderlich.

Die Netzwerk-Downloadgeschwindigkeit gemessen in Megabit pro Sekunde.

Erfolgreich: networkUploadSpeedMbps

Felder Typ Beschreibung
followUpToken String

Erforderlich.

Token aus der ursprünglichen EXECUTE-Anfrage.

status String

Erforderlich.

Ergebnis der Anfrage.

Unterstützte Werte:

SUCCESS
networkUploadSpeedMbps Number

Erforderlich.

Die Netzwerk-Uploadgeschwindigkeit, gemessen in Megabit pro Sekunde.

Erfolgreich: networkDownloadSpeedMbps und networkUploadSpeedMbps

Felder Typ Beschreibung
followUpToken String

Erforderlich.

Token aus der ursprünglichen EXECUTE-Anfrage.

status String

Erforderlich.

Ergebnis der Anfrage.

Unterstützte Werte:

SUCCESS
networkDownloadSpeedMbps Number

Erforderlich.

Die Netzwerk-Downloadgeschwindigkeit gemessen in Megabit pro Sekunde.

networkUploadSpeedMbps Number

Erforderlich.

Die Netzwerk-Uploadgeschwindigkeit, gemessen in Megabit pro Sekunde.

Fehler

Felder Typ Beschreibung
followUpToken String

Erforderlich.

Token aus der ursprünglichen EXECUTE-Anfrage.

status String

Erforderlich.

Ergebnis der Anfrage.

Unterstützte Werte:

FAILURE
errorCode String

Erforderlich.

Bei dem Wert kann es sich um einen beliebigen Fehlercode für diese Eigenschaft handeln, z. B. transientError.

Beispiele

Wie hoch ist die WLAN-Geschwindigkeit? (Anschlussantwort)

{
  "NetworkControl": {
    "priority": 0,
    "followUpResponse": {
      "status": "SUCCESS",
      "networkDownloadSpeedMbps": 23.3,
      "networkUploadSpeedMbps": 10.2,
      "followUpToken": "1234"
    }
  }
}

Wie hoch ist die WLAN-Geschwindigkeit? (Nachantwort mit Fehler)

{
  "NetworkControl": {
    "priority": 0,
    "followUpResponse": {
      "status": "FAILURE",
      "errorCode": "transientError",
      "followUpToken": "1234"
    }
  }
}

Gerät ERRORS

Hier finden Sie die vollständige Liste der Fehler und Ausnahmen.

Beim Steuern des angegebenen Netzwerkprofils ist ein Fehler aufgetreten.

Unterstützte Werte:

networkProfileNotRecognized

Beim Anfordern eines Geschwindigkeitstests ist ein Fehler aufgetreten.

Unterstützte Werte:

networkSpeedTestInProgress