Schemat dopasowania do Smart Home

action.devices.traits.Fill – ta cecha dotyczy urządzeń, które można napełniać, np. wanny.

Urządzenia – ATTRIBUTES

Urządzenia z tą cechą mogą zgłaszać te problemy jako część operacji SYNC. Aby się uczyć więcej informacji o obsłudze intencji SYNC znajdziesz tutaj Realizacja intencji.

Atrybuty Typ Opis
availableFillLevels Obiekt.

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

levels Tablica

Wymagane.

Lista nazw poziomów i synonimów poszczególnych języków.

[item, ...] Obiekt.

Nazwa poziomu i jego synonimy językowe.

level_name String

Wymagane.

Wewnętrzna nazwa poziomu. Może być on nieprzyjazny dla użytkownika i będzie udostępniany 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

Wymagane.

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

Wymagane.

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

ordered Wartość logiczna

Wymagane.

Jeśli zasada ma wartość prawda, urządzenie obsługuje dodatkową gramatykę, aby zwiększyć lub zmniejszyć logikę zwiększania lub zmniejszania, reprezentowaną przez tablicę levels (na przykład połowa 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 funkcjami napełniania i opróżniania, które nie obsługują odrębnych poziomów napełnienia.

{}

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

Urządzenie STATES

Jednostki o tej cechie mogą zgłaszać: stanów w ramach operacji QUERY. Aby się uczyć więcej informacji o obsłudze intencji QUERY znajdziesz tutaj Realizacja intencji.

Stany Typ Opis
isFilled Wartość logiczna

Wymagane.

Prawda, jeśli poziom naładowania urządzenia jest napełniony. Wartość false, jeśli urządzenie jest całkowicie opróżnione.

currentFillLevel String

Wymagany, jeśli ustawiono atrybut availableFillLevels. Wskazuje aktualną wartość level_name z atrybutu availableFillLevels, która została wypełniona.

currentFillPercent Number

Wymagany, jeśli ustawiono atrybut supportsFillPercent. Wskazuje bieżący procent poziomu 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 na urządzeniu

Urządzenia z tą cechą mogą reagować na: w ramach operacji EXECUTE. Aby się uczyć więcej informacji o obsłudze intencji EXECUTE znajdziesz tutaj Realizacja intencji.

action.devices.commands.Fill

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

Parametry

Parametry Typ Opis
fill Wartość logiczna

Wymagane.

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

fillLevel String

Wskazuje wartość level_name z atrybutu availableFillLevels do ustawienia. Jeśli nie określono inaczej, wypełnij poziom domyślny.

fillPercent Number

Wskazuje wymaganą wartość procentową poziomu.

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 (atrybut ordered musi mieć wartość true).

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

Urządzenie ERRORS

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