Schemat trait systemu inteligentnego domu

action.devices.traits.RunCycle – ta cecha reprezentuje dowolne urządzenie, które ma określony czas działania, do którego można wysyłać zapytania.

Takie urządzenia zgłaszają łączną liczbę cykli na początku działania oraz każdy cykl, w którym obecnie działa. Dzięki temu użytkownik będzie mógł wykonywać takie zapytania:

  • Jaki jest cykl suszarki?
  • Ile cykli pracy jeszcze zostało w zmywarce?
  • Jak działa suszarka?
  • Kiedy zostanie zakończone pranie?

Niektóre urządzenia podają czas w niecyklicznym formacie. Każde urządzenie uruchomione przez określony czas może zgłaszać pozostały czas bez cykli. Dotyczy to również przypadków, gdy cykle mogą być niespójne (np. zmywarka nie zawsze używa wszystkich cykli). Użytkownik może na przykład zapytać, Jak długo będzie działać odkurzacz?, co zwróci ilość czasu w jednostkach proporcjonalną do pozostałego czasu. Dotyczy to też urządzeń wymienionych powyżej. Jak długo będzie suszyć się moje ubrania? wyświetli czas w minutach.

Urządzenia mogą zwrócić to, co wiedzą, a odpowiedź TTS Asystenta będzie najlepszą odpowiedzią na podstawie dostępnych danych (np. Zmywarka działa i zakończy działanie za około 20 minut).

RunCycle jest obecnie cechą tylko do odczytu – nie ma żadnych poleceń, a jedynie stany, z których można wykonać zapytanie. W przyszłości mogą istnieć mechanizmy ponownego włączania cykli lub pomijania cykli (dobre w przypadku zraszaczów, ale niekorzystne w przypadku pralek).

Urządzenie ATTRIBUTES

Brak.

Urządzenie STATES

Encje z tą cechą mogą zgłaszać poniższe stany w ramach operacji QUERY. Więcej informacji o obsłudze intencji QUERY znajdziesz w artykule o realizacji intencji.

Stany Typ Opis
currentRunCycle Tablica

Wymagane.

Zawiera synonimy bieżącego cyklu w każdym obsługiwanym języku.

[item, ...] Obiekt

Cykliczne nazwy synonimów.

currentCycle String

Wymagane.

Bieżący cykl wykonywany.

nextCycle String

Opcjonalnie. Następny cykl do wykonania.

lang String

Wymagane.

Kod języka dla określonych nazw cykli. Zobacz Obsługiwane języki.

currentTotalRemainingTime Liczba całkowita

Wymagane.

Pozostały czas działania (w sekundach).

currentCycleRemainingTime Liczba całkowita

Wymagane.

Czas pozostały w bieżącym cyklu (w sekundach).

Przykłady

Urządzenie jest w płukiwaniu jeszcze przez 5 minut i skończy się za 20 minut.

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 1200,
  "currentCycleRemainingTime": 300
}

Urządzenie jest płukane przez kolejne 5 minut, zanim zacznie się obracać.

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "nextCycle": "spin",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 600,
  "currentCycleRemainingTime": 300
}

CommandS na urządzeniu

Brak.

POWIADOMIENIA Z urządzenia

W ramach zmiany stanu urządzenia z tą cechą mogą zwracać poniższy ładunek powiadomienia. Więcej informacji o implementowaniu powiadomień znajdziesz w artykule Powiadomienia o działaniach związanych z inteligentnym domem.

Pola Typ Opis
RunCycle

Wymagane.

Ładunek powiadomienia.

Obsługuje jeden z tych typów:
0 Obiekt

Gotowe

priority Liczba całkowita

Wymagane.

Reprezentuje poziom powiadomień. Obecnie obsługiwana wartość to 0, co oznacza, że powiadomienie powinno być wymawiane na głos.

status String

Wymagane.

Wynik operacji.

Obsługiwane wartości:

SUCCESS
currentCycleRemainingTime Liczba całkowita

Wymagane.

Czas pozostały w bieżącym cyklu (w sekundach).

1 Obiekt

Niepowodzenie

priority Liczba całkowita

Wymagane.

Reprezentuje poziom powiadomień. Obecnie obsługiwana wartość to 0, co oznacza, że powiadomienie powinno być wymawiane na głos.

status String

Wymagane.

Wynik operacji.

Obsługiwane wartości:

FAILURE
errorCode String

Wymagane.

Wartością może być dowolny kod błędu dla tej cechy, np. deviceStuck.

Przykłady

Urządzenie przestało działać.

{
  "RunCycle": {
    "priority": 0,
    "status": "SUCCESS",
    "currentCycleRemainingTime": 0
  }
}

Podczas zakończenia bieżącego cyklu wystąpił błąd.

{
  "RunCycle": {
    "priority": 0,
    "status": "FAILURE",
    "errorCode": "deviceStuck"
  }
}

Urządzenie ERRORS

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