Smart Home RunCycle-Attributschema
action.devices.traits.RunCycle
: Dieser Attributtyp steht für alle Geräte, die eine laufende Betriebsdauer haben, 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 können Nutzer Suchanfragen wie die folgenden stellen:
- In welchem Programm läuft mein Trockner?
- Wie viele Zyklen hat der Geschirrspüler noch?
- Was macht die Trocknung?
- Wann ist die Wäsche fertig?
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. Das gilt auch für die oben aufgeführten Geräte. Bei der Frage Wie lange dauert es noch, bis meine Wäsche trocken ist? 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äteattribute
Keine.
GERÄTESTATUS
Entitäten mit diesem Attribut können im Rahmen des Vorgangs QUERY
die folgenden Status 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 |
Synonymnamen für den Zyklus |
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 finden Sie unter Unterstützte Sprachen. |
currentTotalRemainingTime |
Ganzzahl |
Erforderlich. Verbleibende Zeit bis zum Ende des Vorgangs 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 }
Gerätebefehle
Keine.
Gerätebenachrichtigungen
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 Optionen: | ||
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 Ausführen des aktuellen Zyklus ist ein Fehler aufgetreten.
{ "RunCycle": { "priority": 0, "status": "FAILURE", "errorCode": "deviceStuck" } }