Schemat inteligentnego obrotu domu
action.devices.traits.Rotation
– ten atrybut należy do urządzeń, które obsługują rotację.
Obrót można określić w procentach lub w stopniach. Jeśli urządzenie obsługuje obrót w stopniach, domyślnie jest on zgodny z ruchem wskazówek zegara.
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 |
---|---|---|
supportsDegrees |
Wartość logiczna |
Wymagany. Ustaw jako „prawda”, jeśli urządzenie umożliwia obracanie o stopień. |
supportsPercent |
Wartość logiczna |
Wymagany. Ustaw jako „prawda”, jeśli urządzenie umożliwia obrót o procent |
rotationDegreesRange |
Obiekt |
Podaj zakres obrotów urządzenia. |
rotationDegreesMin |
Number |
Wymagany. Minimalna rotacja w stopniach. |
rotationDegreesMax |
Number |
Wymagany. Maksymalny obrót w stopniach. |
supportsContinuousRotation |
Wartość logiczna |
(domyślnie: Ustaw wartość „true”, jeśli urządzenie umożliwia ciągłe obracanie. Po wpisaniu zapytania względnego polecenie |
commandOnlyRotation |
Wartość logiczna |
(domyślnie: Wskazuje, czy urządzenie obsługuje komunikację jednokierunkową (prawda) czy dwukierunkową (fałsz). Ustaw ten atrybut na wartość „true”, jeśli urządzenie nie może odpowiedzieć na intencję QUERY lub stan raportu w przypadku tego atrybutu. |
Przykłady
Urządzenie, które obsługuje obracanie w procentach i stopniach.
{ "supportsDegrees": true, "supportsPercent": true, "rotationDegreesRange": { "rotationDegreesMin": 0, "rotationDegreesMax": 180 } }
Urządzenie, które obsługuje tylko obracanie w stopniach.
{ "supportsDegrees": true, "supportsPercent": false, "rotationDegreesRange": { "rotationDegreesMin": 0, "rotationDegreesMax": 90 } }
Urządzenie, które obsługuje tylko polecenia ciągłej rotacji.
{ "supportsDegrees": true, "supportsPercent": true, "rotationDegreesRange": { "rotationDegreesMin": 0, "rotationDegreesMax": 360 }, "supportsContinuousRotation": true, "commandOnlyRotation": 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 |
---|---|---|
rotationDegrees |
Number |
Bieżący poziom w: |
rotationPercent |
Number |
Bieżący poziom, który pokazuje procent obrotu urządzenia. 0,0 oznacza, że ścieżka została zamknięta, a 100,0 – otwarcie. |
Przykłady
Ile razy urządzenie jest obrócone? (procent i stopnie).
{ "rotationDegrees": 45, "rotationPercent": 25 }
Ile razy urządzenie jest obrócone? (tylko stopnie).
{ "rotationDegrees": 45 }
Ile razy urządzenie jest obrócone? (ciągły).
{ "rotationDegrees": 270, "rotationPercent": 75 }
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.RotateAbsolute
Ustaw bezwzględną rotację urządzenia.
Parametry
Ładunek zawiera jeden z tych elementów:
Ustaw rotację bezwzględną w stopniach.
Parametry | Typ | Opis |
---|---|---|
rotationDegrees |
Number |
Wymagany. Wartość bezwzględna (w stopniach), która określa końcową rotację urządzenia w prawo. Wartość musi mieścić się w atrybucie |
Ustaw rotację bezwzględną procentową.
Parametry | Typ | Opis |
---|---|---|
rotationPercent |
Number |
Wymagany. Wartość bezwzględna (w procentach), która określa końcową rotację urządzenia. |
Przykłady
Przechyl urządzenie na 50 procent.
{ "command": "action.devices.commands.RotateAbsolute", "params": { "rotationPercent": 50 } }
Obróć urządzenie o 15 stopni w lewo (rotationDegrees: 45
).
{ "command": "action.devices.commands.RotateAbsolute", "params": { "rotationDegrees": 30 } }
Obróć urządzenie o 100 stopni w prawo (supportsContinuousRotation: true
, rotationDegrees: 270
).
{ "command": "action.devices.commands.RotateAbsolute", "params": { "rotationDegrees": 10 } }
Powiązane błędy
Podczas ustawiania rotacji urządzenia wystąpił błąd.
Obsługiwane wartości:
deviceJammingDetected