Guida al rilevatore di fumo per la smart home
action.devices.types.SMOKE_DETECTOR
: i rilevatori di fumo possono segnalare se è attualmente presente fumo, se il livello di fumo è elevato e il livello di fumo attuale in parti per milione.
Questo tipo indica che il dispositivo riceve l'icona del rilevatore di fumo e alcuni sinonimi e alias correlati.
Funzionalità del dispositivo
Consulta la documentazione del tratto corrispondente per dettagli sull'implementazione, ad esempio gli attributi e gli stati che il tuo servizio deve supportare e come creare risposte EXECUTE e QUERY.
Tratti obbligatori
Questi tratti e comandi sono obbligatori, se applicabili al tuo
dispositivo. Se il tuo dispositivo non supporta queste caratteristiche, inserisci il codice di errore difunctionNotSupported
in una risposta QUERY o EXECUTE. Per ulteriori informazioni, consulta la sezione Errori ed eccezioni.
Requisiti di qualità
- Latenza: deve essere inferiore o uguale a 1000 ms.
- Attendibilità: deve essere superiore o uguale al 97%.
Dispositivo di esempio: rilevatore di fumo semplice
Questa sezione contiene payload dell'intent di esempio che rappresentano un comune "Rilevatore di fumo" based on the device type and traits above. Se aggiungi o rimuovi tratti nell'implementazione, modifica le risposte di conseguenza per riflettere queste modifiche.
Esempio di risposta SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.SMOKE_DETECTOR", "traits": [ "action.devices.traits.SensorState" ], "name": { "name": "Simple smoke detector" }, "willReportState": true, "attributes": { "sensorStatesSupported": [ { "name": "SmokeLevel", "descriptiveCapabilities": { "availableStates": [ "smoke detected", "high", "no smoke detected" ] }, "numericCapabilities": { "rawValueUnit": "PARTS_PER_MILLION" } } ] }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Esempio di risposta QUERY
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "currentSensorStateData": [ { "name": "SmokeLevel", "currentSensorState": "high", "rawValue": 200 } ] } } } }