Schema del tratto Timer smart home

action.devices.traits.Timer: la caratteristica Timer rappresenta un timer su un dispositivo.

Ad esempio, un controller per irrigatori smart o un interruttore della luce smart potrebbe avere un timer integrato. Questo tratto può essere utilizzato per controllare un timer integrato sui dispositivi, ad esempio per avviare un nuovo timer, mettere in pausa e annullare un timer in esecuzione e chiedere quanto tempo rimane.

ATTRIBUTI dispositivo

I dispositivi con questa caratteristica potrebbero segnalare i seguenti attributi nell'ambito dell'operazione SYNC. Per saperne di più sulla gestione degli intent SYNC, consulta Completamento degli intent.

Attributi Tipo Descrizione
maxTimerLimitSec Intero

Obbligatorio.

Indica l'impostazione del timer più lunga disponibile sul dispositivo, misurata in secondi.

Valore minimo: 1.

commandOnlyTimer Valore booleano

(Valore predefinito: false)

Indica se il dispositivo supporta la comunicazione unidirezionale (true) o bidirezionale (false). Imposta questo attributo su true se il dispositivo non può rispondere a un intent QUERY o a Report State per questo tratto.

Esempi

Dispositivo con limite di due ore per il timer.

{
  "maxTimerLimitSec": 7200
}

Stati del dispositivo

Le entità con questo tratto possono segnalare i seguenti stati nell'ambito dell'operazione QUERY. Per saperne di più sulla gestione degli intent QUERY, consulta Completamento degli intent.

Stati Tipo Descrizione
timerRemainingSec Intero

Obbligatorio.

Tempo corrente rimanente in secondi, -1 o [0, maxTimerLimitSec]. Imposta il valore su -1 per indicare che non è in esecuzione alcun timer.

timerPaused Valore booleano

True se esiste un timer attivo ma attualmente in pausa.

Esempi

Quanto tempo manca allo scadere del timer del dispositivo? (non in esecuzione).

{
  "timerRemainingSec": -1
}

Quanto tempo manca allo scadere del timer del dispositivo? (in esecuzione).

{
  "timerRemainingSec": 60
}

Quanto tempo manca allo scadere del timer del dispositivo? (in pausa).

{
  "timerRemainingSec": 30,
  "timerPaused": true
}

COMANDI del dispositivo

I dispositivi con questa caratteristica potrebbero rispondere ai seguenti comandi nell'ambito dell'operazione EXECUTE. Per saperne di più sulla gestione degli intent EXECUTE, consulta Completamento degli intent.

action.devices.commands.TimerStart

Avvia un nuovo timer.

Parametri

Parametri Tipo Descrizione
timerTimeSec Intero

Obbligatorio.

Durata del timer in secondi; deve essere compresa tra 1 e maxTimerLimitSec.

Valore minimo: 1.

Esempi

Esegui il timer del dispositivo per cinque minuti.

{
  "command": "action.devices.commands.TimerStart",
  "params": {
    "timerTimeSec": 300
  }
}

Si è verificato un errore durante l'avvio del timer.

Valori supportati:

noTimerExists
timerValueOutOfRange
aboveMaximumTimerDuration
belowMinimumTimerDuration

action.devices.commands.TimerAdjust

Regola la durata del timer.

Parametri

Parametri Tipo Descrizione
timerTimeSec Intero

Obbligatorio.

Aggiustamento positivo o negativo del timer in secondi; deve essere compreso tra [-maxTimerLimitSec, maxTimerLimitSec].

Esempi

Aggiungi un minuto al timer del dispositivo.

{
  "command": "action.devices.commands.TimerAdjust",
  "params": {
    "timerTimeSec": 60
  }
}

Sottrae 30 secondi dal timer del dispositivo.

{
  "command": "action.devices.commands.TimerAdjust",
  "params": {
    "timerTimeSec": -30
  }
}

Si è verificato un errore durante la regolazione del timer.

Valori supportati:

noTimerExists
timerValueOutOfRange
aboveMaximumTimerDuration
belowMinimumTimerDuration

action.devices.commands.TimerPause

Metti in pausa il timer.

Parametri

Parametri Tipo Descrizione

Nessuna proprietà

Esempi

Metti in pausa il timer del dispositivo.

{
  "command": "action.devices.commands.TimerPause",
  "params": {}
}

Si è verificato un errore durante la sospensione del timer.

Valori supportati:

noTimerExists

action.devices.commands.TimerResume

Riprendi il timer.

Parametri

Parametri Tipo Descrizione

Nessuna proprietà

Esempi

Riprendi il timer del dispositivo.

{
  "command": "action.devices.commands.TimerResume",
  "params": {}
}

Si è verificato un errore durante la ripresa del timer.

Valori supportati:

noTimerExists

action.devices.commands.TimerCancel

Annulla il timer.

Parametri

Parametri Tipo Descrizione

Nessuna proprietà

Esempi

Interrompi il timer del dispositivo.

{
  "command": "action.devices.commands.TimerCancel",
  "params": {}
}

Si è verificato un errore durante l'arresto del timer.

Valori supportati:

noTimerExists

ERRORI del dispositivo

Consulta l'elenco completo di errori ed eccezioni.