Leitfaden für smarte Kohlenmonoxidmelder
action.devices.types.CARBON_MONOXIDE_DETECTOR – Kohlenmonoxidmelder können melden, ob Kohlenmonoxid erkannt wurde, ob der Kohlenmonoxidwert hoch ist und wie hoch der aktuelle Kohlenmonoxidwert in parts per million ist.
Dieser Typ gibt an, dass das Gerät das Symbol für den Kohlenmonoxidmelder sowie einige zugehörige Synonyme und Aliase erhält.
Gerätefunktionen
In der entsprechenden Trait-Dokumentation finden Sie Implementierungsdetails wie Attribute und Status, die Ihr Dienst unterstützen sollte, und Informationen zum Erstellen von EXECUTE- und QUERY-Antworten.
Erforderliche Merkmale
Diese Merkmale und Befehle sind erforderlich, sofern sie für Ihr Gerät zutreffen. Wenn dein Gerät diese Merkmale nicht unterstützt, gib den Fehlercode functionNotSupported in einer QUERY- oder EXECUTE-Antwort ein. Weitere Informationen finden Sie unter Fehler und Ausnahmen.
Beispielgerät: Einfacher Kohlenmonoxidmelder
Dieser Abschnitt enthält Beispielnutzlasten für Intents, die einen gängigen „Kohlenmonoxidmelder“ basierend auf dem Gerätetyp und den oben genannten Eigenschaften darstellen. Wenn Sie Ihrer Implementierung Attribute hinzufügen oder daraus entfernen, müssen Sie Ihre Antworten entsprechend anpassen.
Beispiel für eine SYNC-Antwort
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.CARBON_MONOXIDE_DETECTOR", "traits": [ "action.devices.traits.SensorState" ], "name": { "name": "Simple carbon monoxide detector" }, "willReportState": true, "attributes": { "sensorStatesSupported": [ { "name": "CarbonMonoxideLevel", "descriptiveCapabilities": { "availableStates": [ "carbon monoxide detected", "high", "no carbon monoxide detected" ] }, "numericCapabilities": { "rawValueUnit": "PARTS_PER_MILLION" } } ] }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Beispiel für eine QUERY-Antwort
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "currentSensorStateData": [ { "name": "CarbonMonoxideLevel", "currentSensorState": "high", "rawValue": 200 } ] } } } }