Guide sur l'éclairage connecté

action.devices.types.LIGHT : les appareils d'éclairage peuvent être allumés et éteints. Ils peuvent disposer de fonctionnalités supplémentaires, comme la possibilité de régler la luminosité et de changer la couleur.

Ce type indique que l'appareil reçoit l'icône Lumière, ainsi que certains synonymes et alias associés.

Fonctionnalités de l'appareil

Consultez la documentation de la caractéristique correspondante pour obtenir des informations sur l'implémentation, comme les attributs et les états que votre service doit prendre en charge, et sur la façon de créer des réponses EXECUTE et QUERY.

Traits requis

Ces traits et commandes sont obligatoires, le cas échéant, pour votre appareil. Si votre appareil n'est pas compatible avec ces caractéristiques, saisissez le code d'erreur functionNotSupported dans une réponse QUERY ou EXECUTE. Pour en savoir plus, consultez Erreurs et exceptions.

Ces caractéristiques sont recommandées, si elles s'appliquent à votre appareil. Toutefois, vous êtes libre de combiner les traits disponibles pour qu'ils correspondent au mieux aux fonctionnalités de votre produit.

Exemple d'appareil : une simple lampe

Cette section contient des exemples de charges utiles d'intent représentant une "Lumière" courante, en fonction du type d'appareil et des caractéristiques ci-dessus. Si vous ajoutez ou supprimez des caractéristiques dans votre implémentation, modifiez vos réponses en conséquence pour refléter ces changements.

Exemple de réponse SYNC

Demande
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Réponse
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.LIGHT",
        "traits": [
          "action.devices.traits.ColorSetting",
          "action.devices.traits.Brightness",
          "action.devices.traits.OnOff"
        ],
        "name": {
          "name": "Simple light"
        },
        "willReportState": true,
        "attributes": {
          "colorTemperatureRange": {
            "temperatureMinK": 2000,
            "temperatureMaxK": 6500
          }
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Exemple de réponse QUERY

Demande
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Réponse
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "on": true,
        "brightness": 65,
        "color": {
          "temperatureK": 4000
        }
      }
    }
  }
}

Exemples de commandes EXECUTE

ColorAbsolute

Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur action.devices.traits.ColorSetting.

Demande
{
  "requestId": "6894439706274654520",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.ColorAbsolute",
                "params": {
                  "color": {
                    "name": "Warm White",
                    "temperature": 3000
                  }
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Réponse
{
  "requestId": "6894439706274654520",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "color": {
            "temperatureK": 3000
          }
        }
      }
    ]
  }
}

BrightnessAbsolute

Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur action.devices.traits.Brightness.

Demande
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.BrightnessAbsolute",
                "params": {
                  "brightness": 65
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Réponse
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "brightness": 65
        }
      }
    ]
  }
}

OnOff

Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur action.devices.traits.OnOff.

Demande
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OnOff",
                "params": {
                  "on": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Réponse
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "on": true
        }
      }
    ]
  }
}

ERREURS liées à l'appareil

Consultez la liste complète des erreurs et exceptions.