Ti diamo il benvenuto nel Centro sviluppatori Google Home, la nuova destinazione per imparare a sviluppare azioni per la smart home. Nota:continuerai a creare azioni nella Console Actions.
Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Guida per bollitore smart home

action.devices.types.KETTLE: i bollitori sono dispositivi che fanno bollire l'acqua. Le interazioni con i bollitori potrebbero includere l'accensione e lo spegnimento degli impianti, la regolazione della temperatura ottimale e magari la regolazione di varie impostazioni della modalità.

Questo tipo indica che sul dispositivo viene visualizzata l'icona Bollitore e alcuni sinonimi e alias correlati.

I bollitori hanno regole grammaticali di tipo action.devices.traits.OnOff. Se il dispositivo supporta OnOff, Fai bollire l'acqua invia un comando action.devices.commands.OnOff.

Funzionalità dispositivo

Fai riferimento alla documentazione delle caratteristiche corrispondente per ulteriori dettagli sull'implementazione, ad esempio attributi e stati che il servizio deve supportare e come creare risposte EXECUTE e QUERY.

Caratteristiche obbligatorie

Questi tratti e comandi sono obbligatori, se pertinenti al tuo dispositivo.

Queste caratteristiche sono consigliate, se applicabili al tuo dispositivo. Tuttavia, puoi modificare e abbinare tutte le caratteristiche disponibili per trovare una corrispondenza ottimale con le tue funzionalità di prodotto esistenti.

Requisiti di qualità

  • Latenza: deve essere inferiore o uguale a 800 ms.
  • Affidabilità: deve essere superiore o uguale al 97%.

Dispositivo di esempio: bollitore semplice

Questa sezione contiene alcuni payload di esempio che rappresentano un "bollitore" comune in base al tipo di dispositivo e alle caratteristiche citate sopra. Se aggiungi o rimuovi caratteristiche nell'implementazione, modifica le risposte di conseguenza per riflettere tali modifiche.

Esempio di risposta SYNC

Richiedi
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Risposta
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.KETTLE",
        "traits": [
          "action.devices.traits.TemperatureControl",
          "action.devices.traits.OnOff"
        ],
        "name": {
          "name": "Simple kettle"
        },
        "willReportState": true,
        "attributes": {
          "temperatureRange": {
            "minThresholdCelsius": 0,
            "maxThresholdCelsius": 100
          },
          "temperatureUnitForUX": "F"
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Esempio di risposta QUERY

Richiedi
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Risposta
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "on": true,
        "temperatureSetpointCelsius": 100
      }
    }
  }
}

Esempi di comandi EXECUTE

Imposta la temperatura

Per ulteriori dettagli sui parametri dei comandi, consulta il riferimento action.devices.traits.TemperatureControl.

Richiedi
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.SetTemperature",
                "params": {
                  "temperature": 85
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Risposta
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "temperatureSetpointCelsius": 85
        }
      }
    ]
  }
}

Spento

Per ulteriori dettagli sui parametri dei comandi, consulta il riferimento action.devices.traits.OnOff.

Richiedi
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OnOff",
                "params": {
                  "on": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Risposta
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "on": true
        }
      }
    ]
  }
}

ERRORI del dispositivo

Consulta l'elenco completo degli errori e delle eccezioni.