Traits

Dans l'API SDM, un trait comprend des champs, des commandes et des événements.

Champs

Les champs sont des valeurs avec des types de données courants, comme un nombre ou une chaîne. Par exemple, un champ peut contenir le mode actuel ou l'humidité ambiante d'un thermostat Google Nest.

Les traits et les champs peuvent être consultés avec un appel GET au point de terminaison de l'API souhaité :

GET /enterprises/project-id/devices/device-id
{
  "name" : "enterprises/project-id/devices/device-id",
  "type" : "sdm.devices.types.device-type",
  "traits" : { ... },
  "parentRelations" : [
    {
      "parent" : "enterprises/project-id/structures/structure-id/rooms/room-id",
      "displayName" : "Lobby"
    }
  ]
}

Types d'appareil

Le sdm.devices.types.device-type renvoyé par l'API SDM ne doit pas être utilisé pour déduire ou inférer les fonctionnalités de l'appareil auquel il est attribué. Il n'est pas garanti qu'un type d'appareil reste stable pour un appareil spécifique à mesure que des fonctionnalités sont ajoutées à l'API SDM. Utilisez plutôt les traits renvoyés pour l'appareil.

parentRelations

L'objet parentRelations représente la ressource parente de la ressource actuelle, qu'il s'agisse d'une structure ou d'une pièce. Le nom à afficher correspond au champ customName deInfo trait pour les appareils avec une structure parente ou àRoomInfo trait pour les appareils avec une pièce parente.

Commandes

Les commandes sont des requêtes associées à un trait. Par exemple, en modifiant le mode actuel ou la température de consigne sur un thermostat Google Nest.

Une commande est envoyée par un appel d'API executeCommand :

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "command-name",
  "params" : {
    "field" : "value"
  }
}

La plupart des réponses à une commande sont une simple réussite ou un échec. Consultez les guides de caractéristiques individuels pour obtenir des exemples d'utilisation de commandes spécifiques.

Événements

Les événements sont asynchrones et gérés par Google Cloud Pub/Sub dans un seul sujet par ID Project .

Les événements sont envoyés par défaut pour toute modification de la valeur d'un champ de trait. Elles peuvent également être envoyées en réponse à des actions spécifiques de l'appareil ou à des modifications dans les attributions de ressources. Pour en savoir plus, consultez Événements.

Catégories de caractéristiques

Structure

Traits
Info
sdm.structures.traits.Info
Ce trait appartient à toute structure pour les informations qui y sont liées.
RoomInfo
sdm.structures.traits.RoomInfo
Ce trait appartient à n'importe quelle pièce pour les informations qui y sont liées.

Appareil

Traits
Connectivité
sdm.devices.traits.Connectivity
Ce trait appartient à tout appareil disposant d'informations de connectivité.
Ventilateur
sdm.devices.traits.Fan
Ce trait appartient à tout appareil doté de la capacité système de contrôler le ventilateur.
Humidité
sdm.devices.traits.Humidity
Ce trait appartient à tout appareil équipé d'un capteur permettant de mesurer l'humidité.
Info
sdm.devices.traits.Info
Ce trait appartient à tout appareil pour les informations le concernant.
Paramètres
sdm.devices.traits.Settings
Ce trait appartient à tout appareil pour les informations sur les paramètres liés à l'appareil.
Température
sdm.devices.traits.Temperature
Ce trait appartient à tout appareil doté d'un capteur permettant de mesurer la température.

Thermostat

Traits
ThermostatEco
sdm.devices.traits.ThermostatEco
Ce trait appartient aux types d'appareils THERMOSTAT compatibles avec les modes ECO.
ThermostatHvac
sdm.devices.traits.ThermostatHvac
Ce trait appartient aux types d'appareils THERMOSTAT qui peuvent signaler des informations sur le système CVC.
ThermostatMode
sdm.devices.traits.ThermostatMode
Ce trait appartient aux types d'appareils THERMOSTAT qui sont compatibles avec différents modes de thermostat.
ThermostatTemperatureSetpoint
sdm.devices.traits.ThermostatTemperatureSetpoint
Ce trait appartient aux types d'appareils THERMOSTAT qui permettent de définir une température cible et une plage de températures.

Appareil photo

Traits
CameraClipPreview
sdm.devices.traits.CameraClipPreview
Ce trait appartient à tout appareil compatible avec le téléchargement d'un aperçu d'extrait.
CameraEventImage
sdm.devices.traits.CameraEventImage
Ce trait appartient à tout appareil compatible avec la génération d'images à partir d'événements.
CameraImage
sdm.devices.traits.CameraImage
Ce trait appartient à tout appareil compatible avec la prise de photos.
CameraLiveStream
sdm.devices.traits.CameraLiveStream
Ce trait appartient à n'importe quel appareil compatible avec le streaming en direct.
CameraMotion
sdm.devices.traits.CameraMotion
Cette caractéristique appartient à tout appareil compatible avec les événements de détection de mouvement.
CameraPerson
sdm.devices.traits.CameraPerson
Cette caractéristique appartient à tout appareil compatible avec les événements de détection de personnes.
CameraSound
sdm.devices.traits.CameraSound
Cette caractéristique appartient à tout appareil compatible avec les événements de détection de sons.

Sonnette

Traits
DoorbellChime
sdm.devices.traits.DoorbellChime
Ce trait appartient à tout appareil compatible avec un carillon de sonnette et les événements de pression associés.