Rasgo

Un rasgo en la API de SDM comprende campos, comandos y eventos.

Campos

Los campos son valores con tipos de datos comunes, como un número o una cadena. Por ejemplo, un campo puede contener el modo actual o la humedad ambiental de un Nest Thermostat de Google.

Los atributos y los campos se pueden ver con una llamada GET al extremo de API deseado:

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"
    }
  ]
}

Tipos de dispositivos

No se debe usar el sdm.devices.types.device-type que muestra la API de SDM para deducir o inferir la funcionalidad del dispositivo real al que está asignado. No se garantiza que un tipo de dispositivo permanezca estable para un dispositivo específico a medida que se agregan más funciones a la API de SDM. En su lugar, usa los atributos que se muestran para el dispositivo.

parentRelations

El objeto parentRelations representa el recurso superior del recurso actual, ya sea una estructura o una habitación. El nombre visible corresponde al campo customName deInfo para dispositivos con un elemento superior de estructura o el atributoRoomInfo para dispositivos con un elemento superior de habitación.

Comandos

Los comandos son solicitudes asociadas con un atributo. Por ejemplo, cambiar el modo actual o el punto de ajuste de temperatura en un termostato Google Nest.

Una llamada a la API de executeCommand envía un comando:

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

La mayoría de las respuestas a un comando son un éxito o una falla simples. Consulta las guías de atributos individuales para ver ejemplos de uso de comandos específicos.

Eventos

Los eventos son asíncronos y los administra Google Cloud Pub/Sub en un solo tema por ID de Project .

Los eventos se envían de forma predeterminada para cualquier cambio en el valor de un campo de rasgo. También se pueden enviar en respuesta a acciones específicas del dispositivo o cambios en las asignaciones de recursos. Consulta Eventos para obtener más información.

Categorías de atributos

Estructura

Rasgos
Información
sdm.structures.traits.Info
Este atributo pertenece a cualquier estructura para la información relacionada con la estructura.
RoomInfo
sdm.structures.traits.RoomInfo
Este atributo pertenece a cualquier habitación para obtener información relacionada con ella.

Dispositivo

Rasgos
Conectividad
sdm.devices.traits.Connectivity
Este atributo pertenece a cualquier dispositivo que tenga información de conectividad.
Fan
sdm.devices.traits.Fan
Esta característica pertenece a cualquier dispositivo que tenga la capacidad del sistema para controlar el ventilador.
Humedad
sdm.devices.traits.Humidity
Este atributo pertenece a cualquier dispositivo que tenga un sensor para medir la humedad.
Información
sdm.devices.traits.Info
Este atributo pertenece a cualquier dispositivo para obtener información relacionada con él.
Configuración
sdm.devices.traits.Settings
Este atributo pertenece a cualquier dispositivo para obtener información de configuración relacionada con él.
Temperatura
sdm.devices.traits.Temperature
Este atributo pertenece a cualquier dispositivo que tenga un sensor para medir la temperatura.

Termostato

Rasgos
ThermostatEco
sdm.devices.traits.ThermostatEco
Esta característica pertenece a los tipos de dispositivos de THERMOSTAT que admiten modos ECO.
ThermostatHvac
sdm.devices.traits.ThermostatHvac
Esta característica pertenece a los tipos de dispositivos de THERMOSTAT que pueden informar detalles de HVAC.
ThermostatMode
sdm.devices.traits.ThermostatMode
Este atributo pertenece a los tipos de dispositivos de THERMOSTAT que admiten diferentes modos de termostato.
ThermostatTemperatureSetpoint
sdm.devices.traits.ThermostatTemperatureSetpoint
Esta característica pertenece a los tipos de dispositivos de THERMOSTAT que admiten la configuración de la temperatura objetivo y el rango de temperatura.

Cámara

Rasgos
CameraClipPreview
sdm.devices.traits.CameraClipPreview
Esta característica pertenece a cualquier dispositivo que admita la descarga de una vista previa de un clip.
CameraEventImage
sdm.devices.traits.CameraEventImage
Esta característica pertenece a cualquier dispositivo que admita la generación de imágenes a partir de eventos.
CameraImage
sdm.devices.traits.CameraImage
Esta característica pertenece a cualquier dispositivo que admita tomar imágenes.
CameraLiveStream
sdm.devices.traits.CameraLiveStream
Este atributo pertenece a cualquier dispositivo que admita la transmisión en vivo.
CameraMotion
sdm.devices.traits.CameraMotion
Esta característica pertenece a cualquier dispositivo que admita eventos de detección de movimiento.
CameraPerson
sdm.devices.traits.CameraPerson
Esta característica pertenece a cualquier dispositivo que admita eventos de detección de personas.
CameraSound
sdm.devices.traits.CameraSound
Esta característica pertenece a cualquier dispositivo que admita eventos de detección de sonido.

Timbre

Rasgos
DoorbellChime
sdm.devices.traits.DoorbellChime
Esta característica pertenece a cualquier dispositivo que admita un timbre y los eventos de presión relacionados.