Przewodnik po roletach do inteligentnego domu
action.devices.types.BLINDS – rolety można otwierać i zamykać. Obsługiwane są różne rodzaje rolet, np. żaluzje (otwierane w jednym kierunku), rolety panelowe lub pionowe (otwierane w lewo lub w prawo) oraz rolety od góry do dołu i od dołu do góry (otwierane w górę lub w dół). Niektóre żaluzje mają listwy, które można obracać.
Ten typ oznacza, że urządzenie otrzymuje ikonę rolet oraz powiązane synonimy i aliasy.
Funkcje urządzenia
Szczegóły implementacji, takie jak atrybuty i stany, które powinna obsługiwać Twoja usługa, oraz sposób tworzenia odpowiedzi EXECUTE i QUERY, znajdziesz w dokumentacji odpowiedniego cechy.
Wymagane cechy
Te cechy i polecenia są wymagane, jeśli mają zastosowanie do Twojego urządzenia. Jeśli urządzenie nie obsługuje tych cech, w odpowiedzi QUERY lub EXECUTE wpisz kod błędu functionNotSupported. Więcej informacji znajdziesz w sekcji Błędy i wyjątki.
Zalecane cechy
Te cechy są zalecane, jeśli mają zastosowanie do Twojego urządzenia. Możesz jednak dowolnie łączyć wszystkie dostępne atrybuty, aby jak najlepiej dopasować je do istniejących funkcji produktu.
Przykładowe urządzenie: proste rolety
Ta sekcja zawiera przykładowe ładunki intencji reprezentujące typowe „Rolety” na podstawie typu urządzenia i cech wymienionych powyżej. Jeśli dodasz lub usuniesz cechy w swojej implementacji, odpowiednio zmodyfikuj odpowiedzi, aby odzwierciedlały te zmiany.
W przypadku rolety otwieranej od góry i od dołu przesunięcie w kierunku UP podnosi dolną część rolety, a przesunięcie w kierunku DOWN opuszcza górną część rolety. Ilustracja 1 przedstawia przykład rolety zwijanej od góry i od dołu, w której ruch w kierunku UP podnosi dolną część rolety o 50%, a ruch w kierunku DOWN obniża górną część rolety o 30%.
Przykładowa odpowiedź SYNC
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.BLINDS", "traits": [ "action.devices.traits.OpenClose" ], "name": { "name": "Simple blinds" }, "willReportState": true, "attributes": { "openDirection": [ "UP", "DOWN" ] }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Przykładowa odpowiedź na zapytanie
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "openState": [ { "openPercent": 30, "openDirection": "DOWN" }, { "openPercent": 50, "openDirection": "UP" } ] } } } }
Przykładowe polecenia EXECUTE
OpenClose
Więcej informacji o parametrach polecenia znajdziesz w
action.devices.traits.OpenClose.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OpenClose", "params": { "openPercent": 10, "openDirection": "DOWN" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "openState": [ { "openPercent": 10, "openDirection": "DOWN" }, { "openPercent": 50, "openDirection": "UP" } ] } } ] } }