Schemat zadania inteligentnego rotacji

action.devices.traits.Rotation – ta cecha należy do urządzeń obsługujących rotację.

Rotacja może być określona procentowo lub w stopniach. Jeśli urządzenie obsługuje obrót w stopniach, domyślnie obrót będzie odbywał się w prawo.

ATTRIBUTES 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

Wymagane.

Ustaw wartość „true”, jeśli urządzenie umożliwia obracanie według stopni.

supportsPercent Wartość logiczna

Wymagane.

Ustaw wartość „true”, jeśli urządzenie umożliwia obracanie w procentach

rotationDegreesRange Obiekt

Podaj zakres obrotów urządzenia.

rotationDegreesMin Number

Wymagane.

Minimalna rotacja w stopniach.

rotationDegreesMax Number

Wymagane.

Maksymalna obrót w stopniach.

supportsContinuousRotation Wartość logiczna

(Domyślnie: false)

Ustaw wartość „true”, jeśli urządzenie umożliwia ciągłe obracanie. W przypadku zapytania względnego polecenie RotateAbsolute otacza obsługiwany zakres rotacji.

commandOnlyRotation Wartość logiczna

(Domyślnie: false)

Wskazuje, czy urządzenie obsługuje komunikację jednokierunkową (prawda) czy dwukierunkową (fałsz). Ustaw ten atrybut na wartość true (prawda), 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 zarówno w procentach, jak i w stopniach.

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

Urządzenie obsługujące tylko obrót w stopniach

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

Urządzenie obsługujące tylko polecenia rotacji ciągłej.

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

Urządzenie STATES

W ramach operacji QUERY encje z tą cechą mogą zgłaszać wymienione poniżej stany. Więcej informacji o obsłudze intencji QUERY znajdziesz w sekcji Realizacja intencji.

Stany Typ Opis
rotationDegrees Number

Bieżący poziom w rotationDegreesRange oznaczający stopień obrotu urządzenia. Ta wartość powinna zawsze być zgodna z rotacją w prawo.

rotationPercent Number

Bieżący poziom, który wskazuje procent obracania urządzenia. 0,0 oznacza zamknięcie, a 100,0 – otwarcie.

Przykłady

Jak często urządzenie jest obracane? (procent i stopnie).

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

Jak często urządzenie jest obracane? (tylko stopnie).

{
  "rotationDegrees": 45
}

Jak często urządzenie jest obracane? (ciągłe).

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

Urządzenie CommandS

W ramach operacji EXECUTE urządzenia z tą cechą mogą reagować 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 jedną z tych wartości:

Ustaw rotację bezwzględną w stopniach.

Parametry Typ Opis
rotationDegrees Number

Wymagane.

Wartość bezwzględna (w stopniach) określająca ostateczną obrót urządzenia w prawo. Wartość musi mieścić się w atrybucie rotationDegreesRange.

Ustaw rotację bezwzględną w procentach.

Parametry Typ Opis
rotationPercent Number

Wymagane.

Wartość bezwzględna (w procentach) określająca ostateczną rotację urządzenia.

Przykłady

Obróć urządzenie do 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
  }
}

Podczas ustawiania rotacji 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.