Leitfaden für Smart Home-Mikrowellen

action.devices.types.MICROWAVE – Interaktionen mit Mikrowellen können das Starten und Stoppen, das Einstellen eines Timers, das Anpassen von Kochmodi und Voreinstellungen für Lebensmittel sowie das Anpassen von Nicht-Kochmodi umfassen.

Dieser Typ gibt an, dass das Gerät das Mikrowellensymbol und 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 Attribute und Befehle sind erforderlich, sofern sie für dein Gerät gelten. 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.

Diese Attribute werden empfohlen, sofern sie für Ihr Gerät zutreffen. Sie können jedoch alle verfügbaren Eigenschaften kombinieren, um die vorhandene Produktfunktionalität optimal abzubilden.

Beispielgerät: Einfache Mikrowelle

Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten für eine gängige „Mikrowelle“ basierend auf dem Gerätetyp und den oben genannten Attributen. Wenn Sie Ihrer Implementierung Attribute hinzufügen oder daraus entfernen, müssen Sie Ihre Antworten entsprechend anpassen.

Beispiel für eine SYNC-Antwort

Anfrage
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.MICROWAVE",
        "traits": [
          "action.devices.traits.Cook",
          "action.devices.traits.Timer",
          "action.devices.traits.StartStop"
        ],
        "name": {
          "name": "Simple microwave"
        },
        "willReportState": true,
        "attributes": {
          "supportedCookingModes": [
            "DEFROST",
            "MICROWAVE",
            "WARM"
          ],
          "maxTimerLimitSec": 6039,
          "pausable": true
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Beispiel für eine QUERY-Antwort

Anfrage
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "isRunning": true,
        "isPaused": false,
        "timerRemainingSec": 60,
        "currentCookingMode": "WARM"
      }
    }
  }
}

Beispielbefehle für EXECUTE

Kochen

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.Cook.

Anfrage
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.Cook",
                "params": {
                  "start": true,
                  "cookingMode": "MICROWAVE"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "PENDING",
        "states": {
          "online": true,
          "currentCookingMode": "MICROWAVE"
        }
      }
    ]
  }
}

TimerStart

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.Timer.

Anfrage
{
  "requestId": "6894439706274654522",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.TimerStart",
                "params": {
                  "timerTimeSec": 60
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654522",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "timerRemainingSec": 60
        }
      }
    ]
  }
}

TimerAdjust

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.Timer.

Anfrage
{
  "requestId": "6894439706274654524",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.TimerAdjust",
                "params": {
                  "timerTimeSec": -10
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654524",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "timerRemainingSec": 50
        }
      }
    ]
  }
}

TimerPause

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.Timer.

Anfrage
{
  "requestId": "6894439706274654526",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.TimerPause"
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654526",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "timerRemainingSec": 60,
          "timerPaused": true
        }
      }
    ]
  }
}

TimerResume

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.Timer.

Anfrage
{
  "requestId": "6894439706274654528",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.TimerResume"
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654528",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "timerRemainingSec": 60,
          "timerPaused": false
        }
      }
    ]
  }
}

TimerCancel

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.Timer.

Anfrage
{
  "requestId": "6894439706274654530",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.TimerCancel"
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654530",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "timerRemainingSec": -1
        }
      }
    ]
  }
}

StartStop

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.StartStop.

Anfrage
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.StartStop",
                "params": {
                  "start": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "PENDING",
        "states": {
          "online": true,
          "isRunning": true,
          "isPaused": false
        }
      }
    ]
  }
}

PauseUnpause

Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu action.devices.traits.StartStop.

Anfrage
{
  "requestId": "6894439706274654520",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.PauseUnpause",
                "params": {
                  "pause": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654520",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "PENDING",
        "states": {
          "online": true,
          "isRunning": false,
          "isPaused": true
        }
      }
    ]
  }
}

GERÄTEFEHLER

Vollständige Liste der Fehler und Ausnahmen