Smart-Home-Ladegerät – Anleitung

action.devices.types.CHARGER – Interaktionen mit Ladegeräten können das Starten und Beenden des Ladevorgangs sowie das Überprüfen des aktuellen Ladestands, der verbleibenden Kapazität und der Kapazität bis zum vollständigen Laden umfassen.

Dieser Typ gibt an, dass das Gerät das Ladesymbol und einige zugehörige Synonyme und Aliasse erhält.

Gerätefunktionen

In der entsprechenden Dokumentation zu Merkmalen finden Sie Implementierungsdetails wie Attribute und Status, die Ihr Dienst unterstützen sollte, sowie Informationen zum Erstellen von EXECUTE- und QUERY-Antworten.

Erforderliche Merkmale

Diese Merkmale und Befehle sind erforderlich, sofern sie für Ihr Gerät gelten. Wenn Ihr Gerät diese Eigenschaften nicht unterstützt, geben Sie den Fehlercode functionNotSupported in einer QUERY- oder EXECUTE-Antwort ein. Weitere Informationen finden Sie unter Fehler und Ausnahmen.

Qualitätsanforderungen

  • Latenz:muss kleiner oder gleich 800 ms sein.
  • Zuverlässigkeit:muss mindestens 97% betragen.

Beispielgerät: Einfaches Ladegerät

Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten für ein gängiges „Ladegerät“ basierend auf dem Gerätetyp und den oben genannten Merkmalen. Wenn Sie in Ihrer Implementierung Merkmale hinzufügen oder entfernen, ändern Sie Ihre Antworten entsprechend, um diese Änderungen widerzuspiegeln.

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.CHARGER",
        "traits": [
          "action.devices.traits.EnergyStorage"
        ],
        "name": {
          "name": "Simple charger"
        },
        "willReportState": true,
        "attributes": {
          "isRechargeable": true,
          "queryOnlyEnergyStorage": false
        },
        "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,
        "descriptiveCapacityRemaining": "MEDIUM",
        "capacityRemaining": [
          {
            "unit": "PERCENTAGE",
            "rawValue": 50
          }
        ],
        "capacityUntilFull": [
          {
            "unit": "SECONDS",
            "rawValue": 3600
          }
        ],
        "isCharging": true
      }
    }
  }
}

Beispielbefehle für EXECUTE

Gebühr

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

Anfrage
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.Charge",
                "params": {
                  "charge": false
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Antwort
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "capacityRemaining": [
            {
              "unit": "PERCENTAGE",
              "rawValue": 50
            }
          ],
          "isCharging": false
        }
      }
    ]
  }
}

GERÄTEFEHLER

Eine vollständige Liste der Fehler und Ausnahmen