Características

Uma característica na API SDM é composta por campos, comandos e eventos.

Campos

Os campos são valores com tipos de dados comuns, como um número ou uma string. Por exemplo, um campo pode mostrar o modo atual ou a umidade do ambiente de um Google Nest Thermostat.

Os traços e campos podem ser visualizados com uma chamada GET para o endpoint de API desejado:

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

O sdm.devices.types.device-type retornado pela API SDM não pode ser usado para deduzir ou inferir a funcionalidade do dispositivo ao qual foi atribuído. Não há garantia que um tipo de dispositivo permanecerá estável para um dispositivo específico à medida que mais recursos forem adicionados ao SDM. API. Em vez disso, use as características retornadas para o dispositivo.

parentRelations

O objeto parentRelations representa o recurso pai do recurso atual. uma estrutura ou uma sala. O nome de exibição corresponde ao campo customName do Características das informações para dispositivos com um pai de estrutura ou o Característica do RoomInfo para dispositivos com o pai do quarto.

Comandos

Comandos são solicitações associadas a uma característica. Por exemplo, mudar o modo atual ou temperatura programada em um Google Nest Thermostat.

Um comando é enviado por uma chamada de API executeCommand:

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

A maioria das respostas a um comando é um simples sucesso ou falha. Consulte os guias de características individuais de exemplos de uso de comandos específicos.

Eventos

Os eventos são assíncronos e gerenciados pelo Google Cloud Pub/Sub em um único tópico por Project ID.

Os eventos são enviados por padrão para qualquer alteração no valor de um campo de característica. Eles também podem ser enviados em resposta a ações específicas do dispositivo ou alterações nas atribuições de recursos. Consulte Eventos para mais informações.

Categorias de traços

Estrutura

Características
Informações
sdm.structures.traits.Info
Essa característica pertence a qualquer estrutura de informações relacionadas a estruturas.
RoomInfo
sdm.structures.traits.RoomInfo
Essa característica pertence a qualquer sala para informações relacionadas à sala.

Dispositivo

Características
Conectividade
sdm.devices.traits.Connectivity
Essa característica pertence a qualquer dispositivo que tenha informações de conectividade.
sdm.devices.traits.Fan
Essa característica pertence a qualquer dispositivo que tenha a capacidade do sistema de controlar o ventilador.
Umidade
sdm.devices.traits.Humidity
Essa característica pertence a qualquer dispositivo que tenha um sensor para medir a umidade.
Informações
sdm.devices.traits.Info
Essa característica pertence a qualquer dispositivo para informações relacionadas ao dispositivo.
Configurações
sdm.devices.traits.Settings
Essa característica pertence a qualquer dispositivo para informações de configurações relacionadas ao dispositivo.
Temperatura
sdm.devices.traits.Temperature
Essa característica pertence a qualquer dispositivo que tenha um sensor para medir a temperatura.

Termostato

Características
ThermostatEco
sdm.devices.traits.ThermostatEco
Essa característica pertence a tipos de dispositivos de TERMOSTATO que oferecem suporte aos modos ECO.
ThermostatHvac
sdm.devices.traits.ThermostatHvac
Essa característica pertence aos tipos de dispositivos de TERMOSTATO que podem informar detalhes de AVAC (aquecimento, ventilação e ar-condicionado).
ThermostatMode
sdm.devices.traits.ThermostatMode
Essa característica pertence a tipos de dispositivos de THERMOSTAT que oferecem suporte a diferentes modos de termostato.
ThermostatTemperatureSetpoint
sdm.devices.traits.ThermostatTemperatureSetpoint
Essa característica pertence a tipos de dispositivos de TERMOSTATO que oferecem suporte à definição de temperatura-alvo e faixa de temperatura.

Câmera

Características
CameraClipPreview
sdm.devices.traits.CameraClipPreview
Essa característica pertence a qualquer dispositivo compatível com o download de uma prévia de clipe.
CameraEventImage
sdm.devices.traits.CameraEventImage
Essa característica pertence a qualquer dispositivo que oferece suporte à geração de imagens a partir de eventos.
CameraImage
sdm.devices.traits.CameraImage
Essa característica pertence a qualquer dispositivo compatível com a captura de imagens.
CameraLiveStream
sdm.devices.traits.CameraLiveStream
Essa característica pertence a qualquer dispositivo compatível com a transmissão ao vivo.
CameraMotion
sdm.devices.traits.CameraMotion
Essa característica pertence a qualquer dispositivo que oferece suporte a eventos de detecção de movimento.
CameraPerson
sdm.devices.traits.CameraPerson
Essa característica pertence a qualquer dispositivo compatível com eventos de detecção de pessoas.
CameraSound
sdm.devices.traits.CameraSound
Essa característica pertence a qualquer dispositivo que oferece suporte a eventos de detecção de som.

Campainha

Características
DoorbellChime
sdm.devices.traits.DoorbellChime
Essa característica pertence a qualquer dispositivo que oferece suporte a uma campainha e eventos de pressionamento relacionados.