Smart Home RunCycle-Attributschema
action.devices.traits.RunCycle
: Dieses Trait steht für ein Gerät mit einer Dauer für den Betrieb, die abgefragt werden kann.
Bei solchen Geräten wird zu Beginn der Nutzung die Gesamtzahl der Zyklen und der aktuelle Zyklus des Geräts erfasst. So kann der Nutzer folgende Abfragen stellen:
- In welchem Waschgang läuft mein Trockner?
- Wie viele Zyklen hat der Geschirrspüler noch?
- Was macht der Trockner?
- Wann wird die Wäsche gewaschen?
Bestimmte Geräte geben die Dauer in einem nicht zyklischen Format an. Jedes Gerät, das eine bestimmte Zeit lang läuft, kann die verbleibende Zeit ohne Zyklen melden. Dies gilt auch für Fälle, in denen die Zyklen möglicherweise nicht einheitlich sind (z. B. werden bei Geschirrspülern möglicherweise nicht immer alle Zyklen verwendet). Ein Nutzer könnte beispielsweise fragen: Wie lange läuft mein Staubsauger noch? Daraufhin wird die verbleibende Zeit in Einheiten zurückgegeben, die proportional zur verbleibenden Zeit sind. Dies gilt auch für die oben aufgeführten Geräte. Unter Wie lange trocknet meine Kleidung noch? wird eine Dauer in Minuten zurückgegeben.
Geräte können das zurückgeben, was sie wissen, und die TTS-Antwort von Assistant bildet die beste Antwort aus den verfügbaren Daten (z. B. Der Geschirrspüler läuft und ist in etwa 20 Minuten fertig.).
„RunCycle“ ist derzeit ein schreibgeschütztes Attribut. Es gibt keine Befehle, sondern nur Status, die abgefragt werden können. In Zukunft wird es möglicherweise Mechanismen geben, mit denen Zyklen wiederholt oder übersprungen werden können (gut für Sprinkler, schlecht für Waschmaschinen).
Geräte-ATTRIBUTES
Keine.
GERÄTESTATUS
Entitäten mit diesem Merkmal können im Rahmen der QUERY
-Operation die folgenden Bundesstaaten melden. Weitere Informationen zum Umgang mit QUERY
-Intents finden Sie unter Intent-Ausführung.
Bundesstaaten | Typ | Beschreibung |
---|---|---|
currentRunCycle |
Array |
Erforderlich. Enthält die Synonyme für den aktuellen Zyklus in jeder unterstützten Sprache. |
[item, ...] |
Objekt |
Zyklussynonymnamen. |
currentCycle |
String |
Erforderlich. Aktueller Zyklus, der ausgeführt wird. |
nextCycle |
String |
Optional. Der nächste Zyklus, der ausgeführt werden soll. |
lang |
String |
Erforderlich. Sprachcode für die angegebenen Zyklusnamen. Weitere Informationen zu unterstützten Sprachen |
currentTotalRemainingTime |
Ganzzahl |
Erforderlich. Verbleibende Zeit für den Vorgang in Sekunden. |
currentCycleRemainingTime |
Ganzzahl |
Erforderlich. Verbleibende Zeit des aktuellen Zyklus in Sekunden. |
Beispiele
Das Gerät befindet sich noch 5 Minuten im Spülvorgang und ist in 20 Minuten fertig.
{ "currentRunCycle": [ { "currentCycle": "rinse", "lang": "en" } ], "currentTotalRemainingTime": 1200, "currentCycleRemainingTime": 300 }
Das Gerät wird noch 5 Minuten lang gespült, bevor es zum Schleudern übergeht.
{ "currentRunCycle": [ { "currentCycle": "rinse", "nextCycle": "spin", "lang": "en" } ], "currentTotalRemainingTime": 600, "currentCycleRemainingTime": 300 }
BEFEHLE für Geräte
Keine.
BENACHRICHTIGUNGEN ZUM GERÄT
Geräte mit dieser Eigenschaft können im Rahmen einer Gerätestatusänderung die folgende Benachrichtigungsnutzlast zurückgeben. Weitere Informationen zur Implementierung von Benachrichtigungen finden Sie unter Benachrichtigungen für Smart-Home-Aktionen.
Felder | Typ | Beschreibung |
---|---|---|
RunCycle |
Erforderlich. Benachrichtigungsnutzlast. |
|
Unterstützt eine der folgenden Funktionen: | ||
0
|
Objekt |
Erfolg |
priority |
Ganzzahl |
Erforderlich. Stellt die Benachrichtigungsstufe dar. Der derzeit unterstützte Wert ist „0“, was bedeutet, dass die Benachrichtigung laut vorgelesen werden soll. |
status |
String |
Erforderlich. Ergebnis des Vorgangs. Unterstützte Werte:
|
currentCycleRemainingTime |
Ganzzahl |
Erforderlich. Verbleibende Zeit des aktuellen Zyklus in Sekunden. |
1
|
Objekt |
Fehler |
priority |
Ganzzahl |
Erforderlich. Stellt die Benachrichtigungsstufe dar. Der derzeit unterstützte Wert ist „0“, was bedeutet, dass die Benachrichtigung laut vorgelesen werden soll. |
status |
String |
Erforderlich. Ergebnis des Vorgangs. Unterstützte Werte:
|
errorCode |
String |
Erforderlich. Der Wert kann ein beliebiger Fehlercode für dieses Merkmal sein, z. B. |
Beispiele
Die Ausführung auf dem Gerät ist abgeschlossen.
{ "RunCycle": { "priority": 0, "status": "SUCCESS", "currentCycleRemainingTime": 0 } }
Beim Abschließen des aktuellen Zyklus ist ein Fehler aufgetreten.
{ "RunCycle": { "priority": 0, "status": "FAILURE", "errorCode": "deviceStuck" } }