Guida al termostato per la smart home
action.devices.types.HEATER - I riscaldatori sono simili ai termostati, ma non supportano il raffreddamento e potrebbero non supportare l'impostazione delle temperature target.
Questo tipo indica che il dispositivo riceve l'icona del riscaldamento e alcuni sinonimi e alias correlati.
Funzionalità del dispositivo
Consulta la documentazione del tratto corrispondente per i dettagli di implementazione, come gli attributi e gli stati che il tuo servizio deve supportare e come creare risposte EXECUTE e QUERY.
Tratti richiesti
Questi tratti e comandi sono obbligatori, se applicabili al tuo
dispositivo. Se il tuo dispositivo non supporta queste caratteristiche, inserisci il codice di errore
functionNotSupported in una risposta QUERY o EXECUTE. Per saperne di più, consulta la sezione Errori ed eccezioni.
Tratti consigliati
Queste caratteristiche sono consigliate, se applicabili al tuo dispositivo. Tuttavia, puoi combinare tutte le caratteristiche disponibili per trovare la corrispondenza migliore con le funzionalità del prodotto esistenti.
Dispositivo di esempio: semplice riscaldamento
Questa sezione contiene payload di intent di esempio che rappresentano un "riscaldatore" comune in base al tipo di dispositivo e alle caratteristiche sopra indicati. Se aggiungi o rimuovi caratteristiche 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.HEATER", "traits": [ "action.devices.traits.FanSpeed", "action.devices.traits.TemperatureSetting" ], "name": { "name": "Simple heater" }, "willReportState": true, "attributes": { "availableFanSpeeds": { "speeds": [ { "speed_name": "low_key", "speed_values": [ { "speed_synonym": [ "Low", "Slow" ], "lang": "en" } ] }, { "speed_name": "high_key", "speed_values": [ { "speed_synonym": [ "High" ], "lang": "en" } ] } ], "ordered": true }, "availableThermostatModes": [ "off", "heat", "fan-only", "on" ], "thermostatTemperatureUnit": "C" }, "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, "currentFanSpeedSetting": "low_key", "thermostatMode": "heat", "thermostatTemperatureSetpoint": 30, "thermostatTemperatureAmbient": 25 } } } }
Comandi EXECUTE di esempio
SetFanSpeed
Per ulteriori dettagli sui parametri del comando,
consulta il
action.devices.traits.FanSpeed
di riferimento.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetFanSpeed", "params": { "fanSpeed": "high_key" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentFanSpeedSetting": "high_key" } } ] } }
ThermostatTemperatureSetpoint
Per ulteriori dettagli sui parametri del comando,
consulta il
action.devices.traits.TemperatureSetting
di riferimento.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatTemperatureSetpoint", "params": { "thermostatTemperatureSetpoint": 28 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "heat", "thermostatTemperatureSetpoint": 28, "thermostatTemperatureAmbient": 25 } } ] } }
ThermostatSetMode
Per ulteriori dettagli sui parametri del comando,
consulta il
action.devices.traits.TemperatureSetting
di riferimento.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatSetMode", "params": { "thermostatMode": "heat" } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "heat", "thermostatTemperatureSetpoint": 30, "thermostatTemperatureAmbient": 25 } } ] } }