Schemat atrybutu NetworkControl w inteligentnym domu

action.devices.traits.NetworkControl – ta cecha należy do urządzeń, które obsługują raportowanie danych sieciowych i wykonywanie operacji związanych z siecią.

ATRYBUTY URZĄDZENIA

Urządzenia z tą cechą mogą zgłaszać te atrybuty w ramach operacji SYNC. Więcej informacji o obsługiwaniu intencji SYNC znajdziesz w artykule Realizacja intencji.

Atrybuty Typ Opis
supportsEnablingGuestNetwork Wartość logiczna

(wartość domyślna: false)

Ustaw na Prawda, jeśli sieć dla gości może być włączona.

supportsDisablingGuestNetwork Wartość logiczna

(wartość domyślna: false)

Ustaw na Prawda, jeśli sieć dla gości może być wyłączona.

supportsGettingGuestNetworkPassword Wartość logiczna

(wartość domyślna: false)

Ustaw jako Prawda, jeśli hasło do sieci dla gości można uzyskać za pomocą polecenia GetGuestNetworkPassword.

networkProfiles Tablica

Wskazuje obsługiwane nazwy profili sieci.

[item, ...] String

Nazwa profilu sieci reprezentującego grupę powiązanych urządzeń.

supportsEnablingNetworkProfile Wartość logiczna

(wartość domyślna: "false")

Ustaw na Prawda, jeśli można włączyć profile sieci.

supportsDisablingNetworkProfile Wartość logiczna

(wartość domyślna: "false")

Ustaw na Prawda, jeśli profile sieciowe mogą być wyłączone.

supportsNetworkDownloadSpeedTest Wartość logiczna

(wartość domyślna: false)

Ustaw na Prawda, jeśli można uruchomić test szybkości pobierania.

supportsNetworkUploadSpeedTest Wartość logiczna

(wartość domyślna: false)

Ustaw na wartość true (prawda), jeśli można uruchomić test szybkości przesyłania.

Przykłady

Urządzenie sieciowe obsługujące sieć dla gości, profile i test szybkości.

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

STANOWISKO URZĄDZENIA

Elementy z tą cechą mogą raportować te stany w ramach operacji QUERY. Więcej informacji o obsługiwaniu intencji QUERY znajdziesz w artykule Realizacja intencji.

Stany Typ Opis
networkEnabled Wartość logiczna

Określa, czy sieć główna jest włączona.

networkSettings Obiekt

Zawiera identyfikator SSID głównej sieci.

ssid String

Wymagany.

Identyfikator SSID sieci.

guestNetworkEnabled Wartość logiczna

czy sieć dla gości jest włączona.

guestNetworkSettings Obiekt

Zawiera identyfikator SSID sieci dla gości.

ssid String

Wymagany.

Identyfikator SSID sieci.

numConnectedDevices Liczba całkowita

Liczba urządzeń połączonych z siecią.

networkUsageMB Number

Wykorzystanie sieci w MB (megabajtach). Użycie sieci jest w ramach bieżącego okresu rozliczeniowego, co może być przydatne do monitorowania limitu użycia sieci w okresie rozliczeniowym.

networkUsageLimitMB Number

Limit użycia sieci w MB (megabajtach). Limit użycia sieci jest zgodny z bieżącym okresem rozliczeniowym.

networkUsageUnlimited Wartość logiczna

Czy sieć jest nielimitowana. Jeśli ta wartość ma wartość Prawda, stan urządzenia networkUsageLimitMB jest ignorowany.

lastNetworkDownloadSpeedTest Obiekt

Zawiera wyniki ostatniego testu szybkości pobierania w sieci.

downloadSpeedMbps Number

Szybkość pobierania w Mb/s (megabitów na sekundę) z ostatniego testu szybkości sieci.

unixTimestampSec Liczba całkowita

Sygnatura czasowa Unixa (liczba sekund od początku ery Unixa) z datą ostatniego uruchomienia testu szybkości pobierania w sieci.

status String

Wskazuje, czy ostatni test szybkości pobierania w sieci był udany czy nie.

Obsługiwane wartości:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest Obiekt

Zawiera wyniki ostatniego testu szybkości przesyłania w sieci.

uploadSpeedMbps Number

Szybkość wysyłania w Mb/s (megabity na sekundę) z ostatniego testu szybkości sieci.

unixTimestampSec Liczba całkowita

Sygnatura czasowa systemu Unix (liczba sekund od epoki Unixa) ostatniego testu szybkości przesyłania w sieci.

status String

Wskazuje, czy ostatni test szybkości przesyłania w sieci był udany czy nie.

Obsługiwane wartości:

SUCCESS
FAILURE
networkSpeedTestInProgress Wartość logiczna

(wartość domyślna: false)

Określa, czy test szybkości jest obecnie wykonywany.

networkProfilesState Obiekt

Stan profili sieci. Ten obiekt najwyższego poziomu powinien zawierać pary klucz-wartość, gdzie kluczem jest nazwa jednego z profili sieci wymienionych w atrybucie networkProfiles, a wartością – odpowiadający stan tego profilu.

<string> Obiekt

Obiekt przechowujący stan pojedynczego profilu sieci. Wartością klucza powinna być nazwa jednego z profili sieci w atrybucie networkProfiles.

enabled Wartość logiczna

Bieżący stan włączenia/wyłączenia profilu sieci.

Przykłady

Urządzenie z aktywnym połączeniem z siecią.

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

Urządzenie z aktywnym połączeniem i wynikiem testu szybkości.

{
  "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"
  }
}

Urządzenie z aktywnym połączeniem z internetem i prowadzonym testem szybkości

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

Urządzenie z wyłączonym profilem sieci „Dzieci”

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

Polecenia urządzenia

Urządzenia z tą cechą mogą odpowiadać na te polecenia w ramach operacji EXECUTE. Więcej informacji o obsługiwaniu intencji EXECUTE znajdziesz w artykule Realizacja intencji.

action.devices.commands.EnableDisableGuestNetwork

Włącz lub wyłącz sieć dla gości. Musisz użyć weryfikacji dodatkowej za pomocą kodu PIN. Zabezpieczenia domowe użytkownika mogą zostać naruszone, jeśli za pomocą tych poleceń zostaną wyłączone inne urządzenia zabezpieczające.

To polecenie wymaga tych atrybutów:
{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true
}

Parametry

Parametry Typ Opis
enable Wartość logiczna

Wymagany.

Wartość „true” włącza sieć dla gości, a wartość „false” ją wyłącza.

Przykłady

Włącz sieć dla gości.

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

action.devices.commands.EnableDisableNetworkProfile

Włączanie i wyłączanie profilu sieci. Musisz użyć weryfikacji dodatkowej za pomocą kodu PIN. Zabezpieczenia domowe użytkownika mogą zostać naruszone, jeśli za pomocą tych poleceń zostaną wyłączone inne urządzenia zabezpieczające.

To polecenie wymaga tych atrybutów:
{
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true
}

Parametry

Parametry Typ Opis
profile String

Wymagany.

Nazwa profilu z atrybutu networkProfiles.

enable Wartość logiczna

Wymagany.

Prawda – włącz profil, fałsz – wyłącz profil.

Przykłady

Wyłącz internet dla dzieci.

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

Podczas próby sterowania danym profilem sieci wystąpił błąd.

Obsługiwane wartości:

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

Uzyskaj hasło do sieci dla gości. Musisz użyć weryfikacji dodatkowej za pomocą kodu PIN. Zabezpieczenia domowe użytkownika mogą zostać naruszone, jeśli za pomocą tych poleceń zostaną wyłączone inne urządzenia zabezpieczające.

To polecenie wymaga tych atrybutów:
{
  "supportsGettingGuestNetworkPassword": true
}

Parametry

Parametry Typ Opis

Brak właściwości

Przykłady

Pokaż hasło do sieci Wi-Fi dla gości.

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

Wyniki

Wyniki Typ Opis
guestNetworkPassword String

Wymagany.

Hasło do sieci dla gości.

Przykłady

Pokaż hasło do sieci Wi-Fi dla gości.

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

Sprawdź szybkość pobierania i wysyłania danych w sieci.

To polecenie wymaga tych atrybutów:
{
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true
}

Parametry

Parametry Typ Opis
testDownloadSpeed Wartość logiczna

Wymagany.

Wskazuje, czy szybkość pobierania powinna być testowana.

testUploadSpeed Wartość logiczna

Wymagany.

Wskazuje, czy należy przetestować szybkość przesyłania.

followUpToken String

Wymagany.

Token dostarczony przez Google do odpowiedzi na zapytanie.

Przykłady

Jaka jest prędkość Wi-Fi?

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

Podczas próby wysłania żądania testu szybkości wystąpił błąd.

Obsługiwane wartości:

networkSpeedTestInProgress

Odpowiedzi na dalsze pytania

Urządzenia z tą cechą mogą zwracać następujący zestaw danych odpowiedzi w ramach operacji EXECUTE: Więcej informacji o wdrażaniu odpowiedzi dodatkowych znajdziesz w artykule Powiadomienia o działaniach w inteligentnym domu.

Ładunek zawiera jedną z tych opcji:

Sukces: networkDownloadSpeedMbps

Pola Typ Opis
followUpToken String

Wymagany.

Token podany w pierwotnym żądaniu EXECUTE.

status String

Wymagany.

Wynik żądania.

Obsługiwane wartości:

SUCCESS
networkDownloadSpeedMbps Number

Wymagany.

Szybkość pobierania w sieci mierzona w megabitach na sekundę.

Sukces: networkUploadSpeedMbps

Pola Typ Opis
followUpToken String

Wymagany.

Token podany w pierwotnym żądaniu EXECUTE.

status String

Wymagany.

Wynik żądania.

Obsługiwane wartości:

SUCCESS
networkUploadSpeedMbps Number

Wymagany.

Szybkość przesyłania danych w sieci mierzona w megabitach na sekundę.

Sukces: networkDownloadSpeedMbps i networkUploadSpeedMbps

Pola Typ Opis
followUpToken String

Wymagany.

Token podany w pierwotnym żądaniu EXECUTE.

status String

Wymagany.

Wynik żądania.

Obsługiwane wartości:

SUCCESS
networkDownloadSpeedMbps Number

Wymagany.

Szybkość pobierania w sieci mierzona w megabitach na sekundę.

networkUploadSpeedMbps Number

Wymagany.

Szybkość przesyłania danych w sieci mierzona w megabitach na sekundę.

Niepowodzenie

Pola Typ Opis
followUpToken String

Wymagany.

Token podany w pierwotnym żądaniu EXECUTE.

status String

Wymagany.

Wynik żądania.

Obsługiwane wartości:

FAILURE
errorCode String

Wymagany.

Wartość może być dowolnym kodem błędu dla tej cechy, na przykład transientError.

Przykłady

Jaka jest szybkość Wi-Fi? (odpowiedź na zapytanie)

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

Jaka jest szybkość Wi-Fi? (follow-up response with failure)

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

BŁĘDY urządzenia

Zobacz pełną listę błędów i wyjątków.

Podczas próby sterowania danym profilem sieci wystąpił błąd.

Obsługiwane wartości:

networkProfileNotRecognized

Podczas próby wysłania żądania testu szybkości wystąpił błąd.

Obsługiwane wartości:

networkSpeedTestInProgress