Schema für Smart-Home-Netzwerkkontrollelemente

action.devices.traits.NetworkControl: Diese Eigenschaft gehört zu Geräten, die die Meldung von Netzwerkdaten und die Durchführung netzwerkspezifischer Vorgänge unterstützen.

Geräte-ATTRIBUTES

Auf Geräten mit diesem Trait kann Folgendes gemeldet werden im Rahmen des SYNC-Vorgangs verwenden. Weitere Informationen Weitere Informationen zum Umgang mit SYNC-Intents finden Sie unter Absichtliche Umsetzung.

Attribute Typ Beschreibung
supportsEnablingGuestNetwork Boolesch

(Standardeinstellung: false)

Legen Sie diesen Wert auf „true“ fest, wenn das Gastnetzwerk aktiviert werden kann.

supportsDisablingGuestNetwork Boolesch

(Standardeinstellung: false)

Legen Sie diesen Wert auf „true“ fest, wenn das Gastnetzwerk deaktiviert werden kann.

supportsGettingGuestNetworkPassword Boolesch

(Standardeinstellung: false)

Setzen Sie den Wert auf „true“, wenn das Passwort für das Gastnetzwerk über den Befehl GetGuestNetworkPassword abgerufen werden kann.

networkProfiles Array

Gibt die unterstützten Namen von Netzwerkprofilen an.

[item, ...] String

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

supportsEnablingNetworkProfile Boolesch

(Standardeinstellung: "false")

Legen Sie den Wert auf „true“ fest, wenn Netzwerkprofile aktiviert werden können.

supportsDisablingNetworkProfile Boolesch

(Standardeinstellung: "false")

Legen Sie diesen Wert auf „true“ fest, wenn Netzwerkprofile deaktiviert werden können.

supportsNetworkDownloadSpeedTest Boolesch

(Standardeinstellung: false)

Setzen Sie diesen Wert auf „true“, wenn ein Test der Downloadgeschwindigkeit ausgeführt werden kann.

supportsNetworkUploadSpeedTest Boolesch

(Standardeinstellung: false)

Setzen Sie diesen Wert auf „true“, wenn ein Test der Uploadgeschwindigkeit durchgefü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ät: STATES

Entitäten mit diesem Merkmal melden möglicherweise Folgendes: QUERY-Bundesstaaten. Weitere Informationen Weitere Informationen zum Umgang mit QUERY-Intents finden Sie unter Absichtliche Umsetzung.

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 mit dem Netzwerk verbundenen Geräte.

networkUsageMB Number

Die Netzwerknutzung in MB (Megabyte). Die Netzwerknutzung liegt innerhalb des aktuellen Abrechnungszeitraums. Dies kann im Hinblick auf das Netzwerknutzungslimit für den Abrechnungszeitraum sinnvoll sein.

networkUsageLimitMB Number

Das Limit für die Netzwerknutzung 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 dieser Wert auf „true“ gesetzt ist.

lastNetworkDownloadSpeedTest Objekt

Enthält die Ergebnisse des letzten Tests der Netzwerk-Downloadgeschwindigkeit.

downloadSpeedMbps Number

Die Downloadgeschwindigkeit in MBit/s (Megabit pro Sekunde) des letzten Netzwerkgeschwindigkeitstests.

unixTimestampSec Ganzzahl

Der Unix-Zeitstempel (Anzahl der Sekunden seit der Unix-Epoche), der angibt, wann der letzte Test der Netzwerk-Downloadgeschwindigkeit ausgeführt wurde.

status String

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

Unterstützte Werte:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest Objekt

Enthält die Ergebnisse des letzten Tests der Netzwerk-Uploadgeschwindigkeit.

uploadSpeedMbps Number

Die Uploadgeschwindigkeit in MBit/s (Megabit pro Sekunde) des letzten Netzwerkgeschwindigkeitstests.

unixTimestampSec Ganzzahl

Der Unix-Zeitstempel (Anzahl der Sekunden seit der Unix-Epoche), der angibt, wann der letzte Netzwerk-Uploadgeschwindigkeitstest durchgeführt wurde.

status String

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

Unterstützte Werte:

SUCCESS
FAILURE
networkSpeedTestInProgress Boolesch

(Standardeinstellung: false)

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

networkProfilesState Objekt

Status für Netzwerkprofile. Dieses Objekt der obersten Ebene sollte Schlüssel/Wert-Paare enthalten, wobei der Schlüssel der Name eines der im Attribut networkProfiles aufgeführten Netzwerkprofile ist und der Wert dem entsprechenden Status dieses Profils entsprechen sollte.

<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 Aktivierungs-/Deaktivierungsstatus 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 aktivem 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 den „Kindern“ networkProfile deaktiviert.

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

Gerät "COMMANDS"

Geräte mit diesem Merkmal können auf Folgendes reagieren im Rahmen des EXECUTE-Vorgangs ausgeführt. Weitere Informationen Weitere Informationen zum Umgang mit EXECUTE-Intents finden Sie unter Absichtliche Umsetzung.

action.devices.commands.EnableDisableGuestNetwork

Aktivieren oder deaktivieren Sie das Gastnetzwerk. Es muss eine sekundäre Nutzerbestätigung mit PIN verwendet werden. Wenn andere Sicherheitsgeräte über diese Befehle deaktiviert werden, kann das für die Sicherheit zu Hause eines Nutzers beeinträchtigt werden.

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

Parameter

Parameter Typ Beschreibung
enable Boolesch

Erforderlich.

„True“, um das Gastnetzwerk zu aktivieren, „false“, um das Gastnetzwerk zu deaktivieren.

Beispiele

Aktiviere das Gastnetzwerk.

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

action.devices.commands.EnableDisableNetworkProfile

Aktivieren oder deaktivieren Sie ein Netzwerkprofil. Es muss eine sekundäre Nutzerbestätigung mit PIN verwendet werden. Wenn andere Sicherheitsgeräte über diese Befehle deaktiviert werden, kann das für die Sicherheit zu Hause eines Nutzers beeinträchtigt werden.

Für diesen Befehl sind folgende 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

Das Internet für die Kinder deaktivieren.

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

Beim Versuch, das angegebene Netzwerkprofil zu verwalten, 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. Wenn andere Sicherheitsgeräte über diese Befehle deaktiviert werden, kann das für die Sicherheit zu Hause eines Nutzers beeinträchtigt werden.

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

Parameter

Parameter Typ Beschreibung

Keine Attribute

Beispiele

Mein Gast-WLAN-Passwort anzeigen.

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

Ergebnisse

Ergebnisse Typ Beschreibung
guestNetworkPassword String

Erforderlich.

Das Passwort für das Gastnetzwerk.

Beispiele

Mein Gast-WLAN-Passwort anzeigen.

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

Testen Sie die Download- und Uploadgeschwindigkeit des Netzwerks.

Für diesen Befehl sind folgende 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 weiterführende Antwort.

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

Anschlussantworten

Geräte mit diesem Merkmal können Folgendes zurückgeben: Nutzlast der Folgeantwort als Teil des Vorgangs EXECUTE. Weitere Informationen Weitere Informationen zur Implementierung von Folgeantworten finden Sie unter Benachrichtigungen für Smart-Home-Aktionen

Die Nutzlast enthält eines der folgenden Elemente:

Erfolg: networkDownloadSpeed Mbit/s

Felder Typ Beschreibung
followUpToken String

Erforderlich.

Token in 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.

Erfolg: networkUploadSpeed Mbit/s

Felder Typ Beschreibung
followUpToken String

Erforderlich.

Token in der ursprünglichen EXECUTE-Anfrage.

status String

Erforderlich.

Ergebnis der Anfrage

Unterstützte Werte:

SUCCESS
networkUploadSpeedMbps Number

Erforderlich.

Die Uploadgeschwindigkeit des Netzwerks, gemessen in Megabit pro Sekunde.

Erfolg: networkDownloadSpeedbit/s und networkUploadSpeedMbit/s

Felder Typ Beschreibung
followUpToken String

Erforderlich.

Token in 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 Uploadgeschwindigkeit des Netzwerks, gemessen in Megabit pro Sekunde.

Fehler

Felder Typ Beschreibung
followUpToken String

Erforderlich.

Token in der ursprünglichen EXECUTE-Anfrage.

status String

Erforderlich.

Ergebnis der Anfrage

Unterstützte Werte:

FAILURE
errorCode String

Erforderlich.

Der Wert kann ein beliebiger Fehlercode für dieses Merkmal sein, z. B. transientError.

Beispiele

Wie hoch ist die WLAN-Geschwindigkeit? (Folgeantwort)

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

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

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

Gerätefehler

Vollständige Liste der Fehler und Ausnahmen.

Beim Versuch, das angegebene Netzwerkprofil zu verwalten, ist ein Fehler aufgetreten.

Unterstützte Werte:

networkProfileNotRecognized

Beim Anfordern eines Geschwindigkeitstests ist ein Fehler aufgetreten.

Unterstützte Werte:

networkSpeedTestInProgress