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 Google Nest Thermostat.

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 devuelve la API de SDM para deducir o inferir la funcionalidad del dispositivo real al que está asignado. No hay garantía de que un tipo de dispositivo permanezca estable para un dispositivo específico, ya 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 una característica. Por ejemplo, cambiar el modo actual o el punto de ajuste de la temperatura en un Google Nest Thermostat.

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 características 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 rasgos

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
Esta característica pertenece a cualquier sala de información relacionada con la sala.

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
Esta característica pertenece a cualquier dispositivo para obtener información de configuración relacionada.
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
Esta característica 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
Esta característica pertenece a cualquier dispositivo que admita transmisiones 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
Este rasgo 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.