Schemat inteligentnego uzupełniania domu
action.devices.traits.Fill
– ten atrybut ma zastosowanie do urządzeń obsługujących napełnianie, np. wanny.
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 |
---|---|---|
availableFillLevels |
Obiekt |
Opisuje różne poziomy wypełnienia urządzenia. |
levels |
Tablica |
Wymagany. Lista nazw poziomów i synonimów specyficznych dla języka. |
[item, ...] |
Obiekt |
Nazwa poziomu i jej synonimy. |
level_name |
Ciąg |
Wymagany. Wewnętrzna nazwa poziomu. Może nie być odpowiedni dla użytkowników i będzie dostępny we wszystkich językach. |
level_values |
Tablica |
Wymagany. Synonimy poziomu w każdym obsługiwanym języku. |
[item, ...] |
Obiekt |
Synonimy poziomu w danym języku. |
level_synonym |
Tablica |
Wymagany. Synonim poziomu. Pierwszy ciąg znaków z tej listy jest używany jako kanoniczna nazwa poziomu w danym języku. |
[item, ...] |
Ciąg |
Nazwa synonimu. |
lang |
Ciąg |
Wymagany. Kod języka (ISO 639-1). Zobacz obsługiwane języki. |
ordered |
Wartość logiczna |
Wymagany. Jeśli ustawisz wartość prawda, urządzenie będzie obsługiwać dodatkowe funkcje gramatyczne (zwiększanie i zmniejszania) reprezentowane przez tablicę |
supportsFillPercent |
Wartość logiczna |
(domyślnie: Jeśli prawda, zaakceptuj polecenia dotyczące zmiany poziomu na procent. |
Przykłady
Urządzenie z podstawowymi możliwościami wypełnienia lub opróżniania, które nie obsługują dyskretnych poziomów wypełnienia.
{}
Urządzenie obsługujące dyskretne poziomy wypełnienia.
{ "availableFillLevels": { "levels": [ { "level_name": "half_level", "level_values": [ { "level_synonym": [ "Half", "Half way", "One half" ], "lang": "en" } ] }, { "level_name": "full_level", "level_values": [ { "level_synonym": [ "Full", "All the way", "Complete" ], "lang": "en" } ] } ], "ordered": true } }
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 |
---|---|---|
isFilled |
Wartość logiczna |
Wymagany. Wartość to „prawda”, jeśli urządzenie jest wypełnione na dowolnym poziomie. Wartość „false”, jeśli urządzenie jest całkowicie rozładowane. |
currentFillLevel |
Ciąg |
Wymagane, jeśli ustawiony jest atrybut |
currentFillPercent |
Number |
Wymagane, jeśli ustawiony jest atrybut |
Przykłady
Czy wanna jest napełniona?
{ "isFilled": true }
Czy wanna jest napełniona? (z poziomami).
{ "isFilled": true, "currentFillLevel": "half_level" }
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.Fill
Napełnij lub opróżnij urządzenie.
Parametry
Parametry | Typ | Opis |
---|---|---|
fill |
Wartość logiczna |
Wymagany. Prawda – napełnianie, fałsz – opróżnianie |
fillLevel |
Ciąg |
Wskazuje |
fillPercent |
Number |
Wskazuje żądany poziom procentowy. |
Przykłady
Napełnij wannę.
{ "command": "action.devices.commands.Fill", "params": { "fill": true } }
Opróżnij wannę.
{ "command": "action.devices.commands.Fill", "params": { "fill": false } }
Napełnij wannę do połowy.
{ "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "half_level" } }
Zwiększ poziom wypełnienia wanny o 1 (wymagany jest atrybut ordered
: true
).
{ "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "full_level" } }