Witamy w Google Home Developer Center – nowym miejscu, z którego dowiesz się, jak tworzyć inteligentne działania domowe. Uwaga: nadal będziesz tworzyć działania w konsoli Actions.
Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Schemat zarządzania inteligentnymi sieciami domowymi

action.devices.traits.NetworkControl – ten atrybut należy do urządzeń, które obsługują raportowanie danych sieciowych i wykonują operacje związane z siecią.

ATRYBUTY urządzenia

W ramach operacji SYNC urządzenia z tą cechą mogą zgłaszać wymienione poniżej atrybuty. Więcej informacji o obsłudze intencji SYNC znajdziesz w sekcji Realizacja intencji.

Atrybuty Typ Opis
supportsEnablingGuestNetwork Wartość logiczna

(domyślnie: false)

Ustaw wartość „true”, jeśli można włączyć sieć dla gości.

supportsDisablingGuestNetwork Wartość logiczna

(domyślnie: false)

Ustaw wartość „true”, jeśli można wyłączyć sieć dla gości.

supportsGettingGuestNetworkPassword Wartość logiczna

(domyślnie: 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 sieciowych.

[item, ...] Ciąg

Nazwa profilu sieciowego reprezentująca grupę powiązanych urządzeń.

supportsEnablingNetworkProfile Wartość logiczna

(domyślnie: "false")

Wartość to „prawda”, jeśli można włączyć profile sieciowe.

supportsDisablingNetworkProfile Wartość logiczna

(domyślnie: "false")

Wartość to „prawda”, jeśli profile sieciowe można wyłączyć.

supportsNetworkDownloadSpeedTest Wartość logiczna

(domyślnie: false)

Ustaw wartość „true”, jeśli można uruchomić test szybkości pobierania.

supportsNetworkUploadSpeedTest Wartość logiczna

(domyślnie: false)

Ustaw wartość „true”, jeśli można uruchomić test szybkości przesyłania.

Przykłady

Urządzenie sieciowe, które obsługuje sieć, profile i testy szybkości gościa.

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

Urządzenie STATES

W ramach operacji QUERY encje o tym atrybucie mogą raportować te stany. Więcej informacji o obsłudze intencji QUERY znajdziesz w sekcji 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 Ciąg

Wymagany.

Identyfikator SSID sieci.

guestNetworkEnabled Wartość logiczna

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

guestNetworkSettings Obiekt

Zawiera identyfikator SSID sieci gościa.

ssid Ciąg

Wymagany.

Identyfikator SSID sieci.

numConnectedDevices Liczba całkowita

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

networkUsageMB Number

Użycie sieci w MB (megabajtach). Wykorzystanie sieci mieści się w bieżącym okresie rozliczeniowym, co może być przydatne w przypadku monitorowania limitu wykorzystania sieci w tym okresie.

networkUsageLimitMB Number

Limit użycia sieci (w megabajtach). Limit użycia sieci mieści się w bieżącym okresie rozliczeniowym.

networkUsageUnlimited Wartość logiczna

Określa, czy wykorzystanie sieci jest nieograniczone. Jeśli zasada ma wartość Prawda, stan sieci NetworkLimitLimitMB jest ignorowany.

lastNetworkDownloadSpeedTest Obiekt

Zawiera wyniki ostatniego testu szybkości pobierania w sieci.

downloadSpeedMbps Number

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

unixTimestampSec Liczba całkowita

Sygnatura czasowa Unix (liczba sekund od czasu uniksowego) czasu przeprowadzenia ostatniego testu szybkości pobierania w sieci.

status Ciąg

Wskazuje, czy ostatni test szybkości pobierania sieci zakończył się powodzeniem lub niepowodzeniem.

Obsługiwane wartości:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest Obiekt

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

uploadSpeedMbps Number

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

unixTimestampSec Liczba całkowita

Sygnatura czasowa Unix (liczba sekund od czasu uniksowego) czasu przeprowadzenia ostatniego testu szybkości przesyłania w sieci.

status Ciąg

Wskazuje, czy ostatni test szybkości przesyłania sieci zakończył się powodzeniem lub niepowodzeniem.

Obsługiwane wartości:

SUCCESS
FAILURE
networkSpeedTestInProgress Wartość logiczna

(domyślnie: false)

Określa, czy właśnie trwa test szybkości.

networkProfilesState Obiekt

Stan profili sieciowych. Ten obiekt najwyższego poziomu powinien zawierać pary klucz-wartość, w których klucz to nazwa jednego z profili sieciowych wymienionych w atrybucie networkProfiles, a wartością powinny być odpowiednie stany tego profilu.

<string> Obiekt

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

enabled Wartość logiczna

Obecny stan włączenia/wyłączenia profilu sieci.

Przykłady

Urządzenie z aktywną siecią.

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

Urządzenie z aktywną siecią i wynikami 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 aktywną siecią i 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 profilem NetworkKids „wyłączone”

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

Polecenie urządzenia

W ramach operacji EXECUTE urządzenia z tą cechą mogą odpowiadać na podane niżej polecenia. Więcej informacji o obsłudze intencji EXECUTE znajdziesz w sekcji Realizacja intencji.

action.devices.commands.EnableDisableGuestNetwork

Włącz lub wyłącz sieć dla gości. Należy zastosować weryfikację dodatkowych użytkowników za pomocą kodu PIN. Jeśli używasz tych poleceń, inne urządzenia zabezpieczające mogą zostać uznane za niebezpieczne w domu.

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

Parametry

Parametry Typ Opis
enable Wartość logiczna

Wymagany.

Wartość prawda powoduje włączenie sieci dla gości, a fałsz powoduje wyłączenie sieci dla gości.

Przykłady

Włącz sieć dla gości.

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

action.devices.commands.EnableDisableNetworkProfile

Włącz lub wyłącz profil sieci. Należy zastosować weryfikację dodatkowych użytkowników za pomocą kodu PIN. Jeśli używasz tych poleceń, inne urządzenia zabezpieczające mogą zostać uznane za niebezpieczne w domu.

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

Parametry

Parametry Typ Opis
profile Ciąg

Wymagany.

Nazwa profilu z atrybutu networkProfiles.

enable Wartość logiczna

Wymagany.

Prawda, aby włączyć profil, lub fałsz, aby wyłączyć profil.

Przykłady

Wyłącz dziecku dostęp do internetu.

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

Podczas próby kontrolowania danego profilu sieci wystąpił błąd.

Obsługiwane wartości:

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

Uzyskaj hasło do sieci dla gości. Należy zastosować weryfikację dodatkowych użytkowników za pomocą kodu PIN. Jeśli używasz tych poleceń, inne urządzenia zabezpieczające mogą zostać uznane za niebezpieczne w domu.

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

Parametry

Parametry Typ Opis

Brak właściwości

Przykłady

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

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

Wyniki

Wyniki Typ Opis
guestNetworkPassword Ciąg

Wymagany.

Hasło do sieci dla gości.

Przykłady

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

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

Przetestuj szybkość pobierania i przesyłania 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 zostać przetestowana.

testUploadSpeed Wartość logiczna

Wymagany.

Wskazuje, czy szybkość przesyłania powinna zostać przetestowana.

followUpToken Ciąg

Wymagany.

Token Google dostarczony w ramach dalszej odpowiedzi.

Przykłady

Jaka jest szybkość Wi-Fi?

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

Podczas próby wysłania prośby o test szybkości wystąpił błąd.

Obsługiwane wartości:

networkSpeedTestInProgress

Odpowiedzi uzupełniające

Urządzenia z tym atrybutem mogą zwrócić w ramach operacji EXECUTE ten ładunek odpowiedzi uzupełniających. Więcej informacji o wdrażaniu dalszych odpowiedzi znajdziesz w artykule Powiadomienia dotyczące inteligentnych działań w domu.

Ładunek zawiera jeden z tych elementów:

Ukończono: networkDownloadSpeedMb

Pola Typ Opis
followUpToken Ciąg

Wymagany.

Token podany w pierwotnym żądaniu EXECUTE.

status Ciąg

Wymagany.

Wynik żądania.

Obsługiwane wartości:

SUCCESS
networkDownloadSpeedMbps Number

Wymagany.

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

Udało się: NetworkUploadSpeedMb.

Pola Typ Opis
followUpToken Ciąg

Wymagany.

Token podany w pierwotnym żądaniu EXECUTE.

status Ciąg

Wymagany.

Wynik żądania.

Obsługiwane wartości:

SUCCESS
networkUploadSpeedMbps Number

Wymagany.

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

Ukończono: networkDownloadSpeedMbs i NetworkUploadSpeedMb

Pola Typ Opis
followUpToken Ciąg

Wymagany.

Token podany w pierwotnym żądaniu EXECUTE.

status Ciąg

Wymagany.

Wynik żądania.

Obsługiwane wartości:

SUCCESS
networkDownloadSpeedMbps Number

Wymagany.

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

networkUploadSpeedMbps Number

Wymagany.

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

Niepowodzenie

Pola Typ Opis
followUpToken Ciąg

Wymagany.

Token podany w pierwotnym żądaniu EXECUTE.

status Ciąg

Wymagany.

Wynik żądania.

Obsługiwane wartości:

FAILURE
errorCode Ciąg

Wymagany.

Wartością może być dowolny kod błędu dla tego atrybutu, na przykład transientError.

Przykłady

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

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

Jaka jest szybkość Wi-Fi? (dalsza odpowiedź dotycząca niepowodzenia)

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

Urządzenie ERRORS

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

Podczas próby kontrolowania danego profilu sieci wystąpił błąd.

Obsługiwane wartości:

networkProfileNotRecognized

Podczas próby wysłania prośby o test szybkości wystąpił błąd.

Obsługiwane wartości:

networkSpeedTestInProgress