Rasgo

En la API de SDM, una característica consta de 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 del ambiente de un Google Nest Thermostat.

Las características y los campos se pueden ver con una llamada de GET al extremo de la 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 se asignó. No hay garantía que un tipo de dispositivo permanezca estable para un dispositivo específico a medida que se agreguen más funciones al SDM en la API de Cloud. En su lugar, usa las características 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 de la Característica de información para dispositivos con estructura superior o Característica de RoomInfo para dispositivos con una superior de la sala.

Comandos

Los comandos son solicitudes asociadas con una característica. Por ejemplo, cambiar el modo actual o punto de ajuste de 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 simples casos de éxito o fracaso. Consulta las guías de características individuales para ejemplos de uso de comandos específicos.

Eventos

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

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

Categorías de rasgos

Estructura

Rasgos
Información
sdm.structures.traits.Info
Este rasgo pertenece a cualquier estructura de 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
Esta característica pertenece a cualquier dispositivo que tenga información de conectividad.
Con ventilador
sdm.devices.traits.Fan
Este rasgo pertenece a cualquier dispositivo que tenga la capacidad del sistema para controlar el ventilador.
Humedad
sdm.devices.traits.Humidity
Esta característica pertenece a cualquier dispositivo que tenga un sensor para medir la humedad.
Información
sdm.devices.traits.Info
Esta característica 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
Esta característica 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 del TERMOSTATO que admiten modos ECO.
ThermostatHvac
sdm.devices.traits.ThermostatHvac
Esta característica pertenece a los tipos de dispositivos de TERMOSTAT que pueden informar detalles de HVAC.
ThermostatMode
sdm.devices.traits.ThermostatMode
Esta característica pertenece a los tipos de dispositivos de TERMOSTAT que admiten diferentes modos.
ThermostatTemperatureSetpoint
sdm.devices.traits.ThermostatTemperatureSetpoint
Esta característica pertenece a los tipos de dispositivos de TERMOSTATO que admiten la configuración de la temperatura final 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 la toma de imágenes.
CameraLiveStream
sdm.devices.traits.CameraLiveStream
Esta característica pertenece a cualquier dispositivo que admita transmisiones en vivo.
CameraMotion
sdm.devices.traits.CameraMotion
Este rasgo 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 una campanilla de timbre y eventos de prensa relacionados.