Schemat cechy rotacji inteligentnego domu

action.devices.traits.Rotation – ta cecha dotyczy urządzeń, które obsługują obracanie.

Obrót można podawać procentowo lub w stopniach, a jeśli urządzenie obsługuje obrót o stopnie, domyślny kierunek obrotu to zgodnie z ruchem wskazówek zegara.

ATRYBUTY URZĄDZENIA

Urządzenia z tą cechą mogą zgłaszać te atrybuty w ramach operacji SYNC. Więcej informacji o obsługiwaniu intencji SYNC znajdziesz w artykule Realizacja intencji.

Atrybuty Typ Opis
supportsDegrees Wartość logiczna

Wymagany.

Ustaw wartość „true” (prawda), jeśli urządzenie pozwala na obrót o stopień.

supportsPercent Wartość logiczna

Wymagany.

Ustaw wartość Prawda, jeśli urządzenie zezwala na obracanie według procentów

rotationDegreesRange Obiekt

Zakres w stopniach, w którym urządzenie może się obracać.

rotationDegreesMin Number

Wymagane.

Minimalny obrót w stopniach.

rotationDegreesMax Number

Wymagany.

Maksymalny obrót w stopniach.

supportsContinuousRotation Wartość logiczna

(wartość domyślna: false)

Ustaw wartość „true” (prawda), jeśli urządzenie zezwala na ciągły obrót. W przypadku zapytania względnego polecenie RotateAbsolute powoduje owinięcie obsługiwanego zakresu rotacji.

commandOnlyRotation Wartość logiczna

(wartość domyślna: false)

Określa, czy urządzenie obsługuje komunikację w jednym kierunku (prawda) czy w obu kierunkach (fałsz). Ustaw ten atrybut na „PRAWDA”, jeśli urządzenie nie może odpowiadać na intencję QUERY ani nie może zgłaszać stanu dla tej cechy.

Przykłady

Urządzenie, które obsługuje zarówno obracanie w procentach, jak i w stopniach.

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 180
  }
}

Urządzenie obsługujące tylko obracanie w stopniach.

{
  "supportsDegrees": true,
  "supportsPercent": false,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 90
  }
}

Urządzenie obsługujące tylko polecenia obrotu ciągłego.

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 360
  },
  "supportsContinuousRotation": true,
  "commandOnlyRotation": true
}

STANOWISKO URZĄDZENIA

Elementy z tą cechą mogą raportować te stany w ramach operacji QUERY. Więcej informacji o obsługiwaniu intencji QUERY znajdziesz w artykule Realizacja intencji.

Stany Typ Opis
rotationDegrees Number

Aktualny poziom w rotationDegreesRange, który wskazuje, o ile stopni urządzenie jest obrócony. Ta wartość powinna zawsze być względna do obrotu zgodnie z ruchem wskazówek zegara.

rotationPercent Number

Bieżący poziom, który wskazuje, o ile procent urządzenie jest obecnie obracone. 0,0 oznacza zamknięcie, a 100,0 – otwarcie.

targetRotationPercent Number

Poziom wskazujący odsetek obrotu, do którego urządzenie się przemieści lub do którego się przemieszcza w ramach trwającej zmiany obrotu.

Przykłady

Jak bardzo jest obrócone urządzenie? (procenty i stopnie).

{
  "rotationDegrees": 45,
  "rotationPercent": 25
}

O ile obrócisz urządzenie? (tylko stopnie).

{
  "rotationDegrees": 45
}

O ile obrócisz urządzenie? (ciągły).

{
  "rotationDegrees": 270,
  "rotationPercent": 75
}

Urządzenie aktualnie obracające się do nowej pozycji (procentowo).

{
  "rotationPercent": 75,
  "targetRotationPercent": 100
}

Polecenia urządzenia

Urządzenia z tą cechą mogą odpowiadać na te polecenia w ramach operacji EXECUTE. Więcej informacji o obsługiwaniu intencji EXECUTE znajdziesz w artykule Realizacja intencji.

action.devices.commands.RotateAbsolute

Ustaw bezwzględne położenie urządzenia.

Parametry

Ładunek zawiera jedną z tych opcji:

Ustaw obrót bezwzględną w stopniach.

Parametry Typ Opis
rotationDegrees Number

Wymagany.

Wartość bezwzględna w stopniach, która określa ostateczne obracanie urządzenia zgodnie z ruchem wskazówek zegara. Wartość musi mieścić się w zakresie atrybutu rotationDegreesRange.

Ustaw bezwzględną rotację w procentach.

Parametry Typ Opis
rotationPercent Number

Wymagany.

Wartość bezwzględna wyrażona w procentach, która określa ostateczne obrócenie urządzenia.

Przykłady

Przechyl urządzenie do 50 procent.

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationPercent": 50
  }
}

Obróć urządzenie o 15 stopni w lewym kierunku (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
  }
}

Podczas ustawiania obracania urządzenia wystąpił błąd.

Obsługiwane wartości:

deviceJammingDetected

Urządzenie ERRORS

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