Schemat cechy Smart Home NetworkControl
action.devices.traits.NetworkControl – ta cecha należy do urządzeń, które obsługują raportowanie danych sieciowych i wykonywanie operacji specyficznych dla sieci.
ATRYBUTY urządzenia
Urządzenia z tą cechą mogą zgłaszać te atrybuty w ramach operacji SYNC. Więcej informacji o obsłudze intencji SYNC znajdziesz w artykule Realizacja intencji.
| Atrybuty | Typ | Opis |
|---|---|---|
supportsEnablingGuestNetwork |
Wartość logiczna |
(Domyślnie: Wartość true, jeśli sieć dla gości może być włączona. |
supportsDisablingGuestNetwork |
Wartość logiczna |
(Domyślnie: Ustaw wartość „true”, jeśli sieć dla gości można wyłączyć. |
supportsGettingGuestNetworkPassword |
Wartość logiczna |
(Domyślnie: Ustaw wartość „true”, jeśli hasło do sieci dla gości można uzyskać za pomocą polecenia |
networkProfiles |
Tablica |
Wskazuje nazwy obsługiwanych profili sieciowych. |
[item, ...] |
String |
Nazwa profilu sieciowego reprezentującego grupę powiązanych urządzeń. |
supportsEnablingNetworkProfile |
Wartość logiczna |
(Domyślnie: Wartość true, jeśli można włączyć profile sieciowe. |
supportsDisablingNetworkProfile |
Wartość logiczna |
(Domyślnie: Jeśli profile sieciowe można wyłączyć, ustaw wartość „true”. |
supportsNetworkDownloadSpeedTest |
Wartość logiczna |
(Domyślnie: Jeśli można uruchomić test szybkości pobierania, ustaw wartość „true”. |
supportsNetworkUploadSpeedTest |
Wartość logiczna |
(Domyślnie: Ustaw wartość „true”, 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" ] }
Stany urządzenia
Podmioty z tą cechą mogą zgłaszać te stany w ramach operacji QUERY. Więcej informacji o obsłudze 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 |
Wymagane. 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 |
Wymagane. 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 podane w bieżącym okresie rozliczeniowym, co może być przydatne do monitorowania w odniesieniu do limitu wykorzystania sieci w okresie rozliczeniowym. |
networkUsageLimitMB |
Number |
Limit wykorzystania sieci w MB (megabajtach). Limit użycia sieci obowiązuje w bieżącym okresie rozliczeniowym. |
networkUsageUnlimited |
Wartość logiczna |
Określa, czy użycie sieci jest nieograniczone. Jeśli ta wartość jest ustawiona na „true”, stan urządzenia networkUsageLimitMB jest ignorowany. |
lastNetworkDownloadSpeedTest |
Obiekt |
Zawiera wyniki ostatniego testu szybkości pobierania w sieci. |
downloadSpeedMbps |
Number |
Szybkość pobierania w Mb/s (megabitach na sekundę) z ostatniego testu szybkości sieci. |
unixTimestampSec |
Liczba całkowita |
Sygnatura czasowa w formacie Unix (liczba sekund od początku epoki systemu Unix) ostatniego testu szybkości pobierania w sieci. |
status |
String |
Wskazuje, czy ostatni test szybkości pobierania w sieci zakończył się powodzeniem. Obsługiwane wartości:
|
lastNetworkUploadSpeedTest |
Obiekt |
Zawiera wyniki ostatniego testu szybkości wysyłania w sieci. |
uploadSpeedMbps |
Number |
Szybkość wysyłania w Mb/s (megabitach na sekundę) ostatniego testu szybkości sieci. |
unixTimestampSec |
Liczba całkowita |
Sygnatura czasowa systemu Unix (liczba sekund od epoki systemu Unix) ostatniego testu szybkości wysyłania w sieci. |
status |
String |
Wskazuje, czy ostatni test szybkości wysyłania w sieci zakończył się powodzeniem. Obsługiwane wartości:
|
networkSpeedTestInProgress |
Wartość logiczna |
(Domyślnie: Określa, czy test szybkości jest obecnie uruchomiony. |
networkProfilesState |
Obiekt |
Stan profili sieciowych. Ten obiekt najwyższego poziomu powinien zawierać pary klucz-wartość, gdzie kluczem jest nazwa jednego z profili sieciowych wymienionych w atrybucie |
<string> |
Obiekt |
Obiekt przechowujący stan poszczególnych profili sieciowych. Wartością klucza |
enabled |
Wartość logiczna |
Bieżący stan włączenia lub 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 trwającym 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 sieciowym „dzieci”.
{
"networkEnabled": true,
"networkSettings": {
"ssid": "home-network-123"
},
"networkProfilesState": {
"parents": {
"enabled": true
},
"kids": {
"enabled": false
}
}
}Polecenia dotyczące urządzenia
Urządzenia z tą cechą mogą odpowiadać na te polecenia w ramach operacji EXECUTE. Więcej informacji o obsłudze intencji EXECUTE znajdziesz w artykule Realizacja intencji.
action.devices.commands.EnableDisableGuestNetwork
Włączanie i wyłączanie sieci dla gości. Musi być używana dodatkowa weryfikacja użytkownika za pomocą kodu PIN. Bezpieczeństwo domu użytkownika może być zagrożone, jeśli inne urządzenia zabezpieczające zostaną wyłączone za pomocą tych poleceń.
To polecenie wymaga tych atrybutów:
{
"supportsEnablingGuestNetwork": true,
"supportsDisablingGuestNetwork": true
}
Parametry
| Parametry | Typ | Opis |
|---|---|---|
enable |
Wartość logiczna |
Wymagane. 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 sieciowego. Musi być używana dodatkowa weryfikacja użytkownika za pomocą kodu PIN. Bezpieczeństwo domu użytkownika może być zagrożone, jeśli inne urządzenia zabezpieczające zostaną wyłączone za pomocą tych poleceń.
To polecenie wymaga tych atrybutów:
{
"supportsEnablingNetworkProfile": true,
"supportsDisablingNetworkProfile": true
}
Parametry
| Parametry | Typ | Opis |
|---|---|---|
profile |
String |
Wymagane. Nazwa profilu z atrybutu |
enable |
Wartość logiczna |
Wymagane. Wartość „true” (prawda) włącza profil, a wartość „false” (fałsz) go wyłącza. |
Przykłady
Wyłącz internet dla dzieci.
{
"command": "action.devices.commands.EnableDisableNetworkProfile",
"params": {
"profile": "Kids",
"enable": false
}
}Powiązane błędy
Podczas próby sterowania danym profilem sieci wystąpił błąd.
Obsługiwane wartości:
networkProfileNotRecognized
action.devices.commands.GetGuestNetworkPassword
Uzyskiwanie hasła do sieci dla gości. Musi być użyta dodatkowa weryfikacja użytkownika za pomocą kodu PIN. Bezpieczeństwo domu użytkownika może być zagrożone, jeśli inne urządzenia zabezpieczające zostaną wyłączone za pomocą tych poleceń.
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 |
String |
Wymagane. Hasło do sieci dla gości. |
Przykłady
Pokaż hasło do 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 |
Wymagane. Wskazuje, czy należy przetestować szybkość pobierania. |
testUploadSpeed |
Wartość logiczna |
Wymagane. Wskazuje, czy należy przetestować szybkość przesyłania. |
followUpToken |
String |
Wymagane. Token dostarczony przez Google na potrzeby odpowiedzi uzupełniającej. |
Przykłady
Jaka jest prędkość Wi-Fi?
{ "command": "action.devices.commands.TestNetworkSpeed", "params": { "testDownloadSpeed": true, "testUploadSpeed": true, "followUpToken": "123" } }
Powiązane błędy
Podczas próby przesłania prośby o przeprowadzenie testu szybkości wystąpił błąd.
Obsługiwane wartości:
networkSpeedTestInProgress
Odpowiedzi uzupełniające
Urządzenia z tą cechą mogą zwracać ten ładunek odpowiedzi uzupełniającej w ramach operacji EXECUTE. Więcej informacji o wdrażaniu odpowiedzi uzupełniających znajdziesz w artykule Powiadomienia dotyczące działań związanych z inteligentnym domem.
Ładunek zawiera jeden z tych elementów:
Success: networkDownloadSpeedMbps
| Pola | Typ | Opis |
|---|---|---|
followUpToken |
String |
Wymagane. Token podany w pierwotnym żądaniu EXECUTE. |
status |
String |
Wymagane. Wynik żądania. Obsługiwane wartości:
|
networkDownloadSpeedMbps |
Number |
Wymagane. Szybkość pobierania danych z sieci mierzona w megabitach na sekundę. |
Success: networkUploadSpeedMbps
| Pola | Typ | Opis |
|---|---|---|
followUpToken |
String |
Wymagane. Token podany w pierwotnym żądaniu EXECUTE. |
status |
String |
Wymagane. Wynik żądania. Obsługiwane wartości:
|
networkUploadSpeedMbps |
Number |
Wymagane. Szybkość wysyłania w sieci mierzona w megabitach na sekundę. |
Sukces: networkDownloadSpeedMbps i networkUploadSpeedMbps
| Pola | Typ | Opis |
|---|---|---|
followUpToken |
String |
Wymagane. Token podany w pierwotnym żądaniu EXECUTE. |
status |
String |
Wymagane. Wynik żądania. Obsługiwane wartości:
|
networkDownloadSpeedMbps |
Number |
Wymagane. Szybkość pobierania danych z sieci mierzona w megabitach na sekundę. |
networkUploadSpeedMbps |
Number |
Wymagane. Szybkość wysyłania w sieci mierzona w megabitach na sekundę. |
Niepowodzenie
| Pola | Typ | Opis |
|---|---|---|
followUpToken |
String |
Wymagane. Token podany w pierwotnym żądaniu EXECUTE. |
status |
String |
Wymagane. Wynik żądania. Obsługiwane wartości:
|
errorCode |
String |
Wymagane. Wartość może być dowolnym kodem błędu dla tej cechy, np. |
Przykłady
Jaka jest prędkość Wi-Fi? (odpowiedź uzupełniająca)
{ "NetworkControl": { "priority": 0, "followUpResponse": { "status": "SUCCESS", "networkDownloadSpeedMbps": 23.3, "networkUploadSpeedMbps": 10.2, "followUpToken": "1234" } } }
Jaka jest prędkość Wi-Fi? (odpowiedź uzupełniająca z informacją o niepowodzeniu)
{
"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 przesłania prośby o przeprowadzenie testu szybkości wystąpił błąd.
Obsługiwane wartości:
networkSpeedTestInProgress