Schemat atrybutu wypełniania inteligentnego domu

action.devices.traits.Fill – ta cecha dotyczy urządzeń, które można wypełniać, takich jak wanna.

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
availableFillLevels Obiekt

Opisuje różne poziomy napełnienia urządzenia.

levels Tablica

Wymagany.

Lista nazw poziomów i skojarzeń w różnych językach.

[item, ...] Obiekt

Nazwa poziomu i jego synonimy językowe.

level_name String

Wymagane.

Wewnętrzna nazwa poziomu. Może to być niewygodne dla użytkowników, a ta funkcja będzie dostępna we wszystkich językach.

level_values Tablica

Wymagane.

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 na liście jest używany jako kanoniczna nazwa poziomu w danym języku.

[item, ...] String

Nazwa synonimu.

lang String

Wymagany.

Kod języka (ISO 639-1). Sprawdź obsługiwane języki.

ordered Wartość logiczna

Wymagany.

Jeśli wartość to Prawda, urządzenie obsługuje dodatkową gramatykę dla zwiększania lub zmniejszania, reprezentowaną przez tablicę levels (np. pół poziomu).

supportsFillPercent Wartość logiczna

(Domyślnie: false)

Jeśli wartość to prawda, przyjmuj polecenia służące do zmiany poziomu na wartość procentową.

Przykłady

Urządzenie z podstawowymi możliwościami napełniania lub opróżniania, które nie obsługuje oddzielnych poziomów napełniania.

{}

Urządzenie, które obsługuje oddzielne 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
  }
}

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
isFilled Wartość logiczna

Wymagane.

Prawda, jeśli poziom naładowania urządzenia jest napełniony. Wartość false, jeśli bateria jest całkowicie rozładowana.

currentFillLevel String

Wymagane, jeśli atrybut availableFillLevels jest ustawiony. Wskazuje bieżącą wartość atrybutu level_name (availableFillLevels), która jest przypisana do urządzenia.

currentFillPercent Number

Wymagane, jeśli atrybut supportsFillPercent jest ustawiony. Wskazuje bieżący procentowy poziom wypełnienia.

Przykłady

Czy wanna jest napełniona?

{
  "isFilled": true
}

Czy wanna jest napełniona? (wraz z poziomami).

{
  "isFilled": true,
  "currentFillLevel": "half_level"
}

Polecenia urządzenia

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

action.devices.commands.Fill

Napełnij lub opróżnij urządzenie.

Parametry

Parametry Typ Opis
fill Wartość logiczna

Wymagany.

Prawda, by wypełnić, fałsz – opróżnianie.

fillLevel String

Wskazuje wartość level_name atrybutu availableFillLevels, którą należy ustawić. Jeśli nie podasz poziomu, zostanie użyty poziom domyślny.

fillPercent Number

Wskazuje procentowy poziom żądany.

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 napełnienia wanny o jeden (wymagaj atrybutu ordered o wartości true).

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "full_level"
  }
}

BŁĘDY urządzenia

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