SDM API의 트레잇 은 필드 , 명령어 , 이벤트 로 구성됩니다.
SDM API의 모든 호출은 다음 엔드포인트를 사용해야 합니다.https://smartdevicemanagement.googleapis.com/v1
필드
필드는 숫자나 문자열과 같은 일반적인 데이터 유형의 값입니다. 예를 들어 필드에는 Google Nest Thermostat의 현재 모드 또는 대기 중 습도가 포함될 수 있습니다.
원하는 API 엔드포인트에 대한 GET
호출을 사용하여 트레잇과 필드를 볼 수 있습니다.
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"
}
]
}
기기 유형
SDM API에서 반환된 sdm.devices.types.device-type
는 할당된 실제 기기의 기능을 추론하는 데 사용해서는 안 됩니다. SDM API에 더 많은 기능이 추가될수록 특정 기기에서 기기 유형이 안정적으로 유지된다고 보장할 수 없습니다. 대신 기기에 반환된 트레잇을 사용하세요.
parentRelations
parentRelations
객체는 현재 리소스의 상위 리소스(구조 또는 방)를 나타냅니다. 표시 이름은 구조 상위 요소가 있는 기기의 경우
Info 트레잇 , 객실 상위 요소가 있는 기기의 경우
RoomInfo 트레잇 에 해당합니다.
명령어
명령어는 트레잇과 연결된 요청입니다. 예를 들어 Google Nest Thermostat에서 현재 모드 또는 온도 설정값을 변경하는 경우
executeCommand
API 호출을 통해 명령어가 전송됩니다.
POST /enterprises/project-id /devices/device-id :executeCommand
{
"command" : "command-name ",
"params" : {
"field " : "value "
}
}
명령어에 대한 응답은 대부분 단순한 성공 또는 실패입니다. 특정 명령어 사용 예시는 개별 트레잇 가이드를 참고하세요.
이벤트
이벤트는 비동기식이며 Google Cloud Pub/Sub에서 Project ID별로 단일 주제에서 관리합니다.
트레잇 필드의 값이 변경되면 기본적으로 이벤트가 전송됩니다. 특정 기기 작업이나 리소스 할당 변경에 대한 응답으로 전송될 수도 있습니다. 자세한 내용은 이벤트 를 참고하세요.
트레잇 카테고리
구조
트레잇
정보
sdm.structures.traits.Info
이 트레잇은 구조 관련 정보의 모든 구조에 속합니다.
RoomInfo
sdm.structures.traits.RoomInfo
이 트레잇은 공간 관련 정보의 모든 공간에 속합니다.
기기
트레잇
연결
sdm.devices.traits.Connectivity
이 트레잇은 연결 정보가 있는 모든 기기에 속합니다.
팬
sdm.devices.traits.Fan
이 특성은 팬을 제어할 수 있는 시스템 기능이 있는 모든 기기에 속합니다.
습도
sdm.devices.traits.Humidity
이 트레잇은 습도를 측정하는 센서가 있는 모든 기기에 속합니다.
정보
sdm.devices.traits.Info
이 트레잇은 기기 관련 정보의 모든 기기에 속합니다.
설정
sdm.devices.traits.Settings
이 트레잇은 기기 관련 설정 정보의 모든 기기에 속합니다.
온도
sdm.devices.traits.Temperature
이 트레잇은 온도를 측정하는 센서가 있는 모든 기기에 속합니다.
온도 조절기
트레잇
ThermostatEco
sdm.devices.traits.ThermostatEco
이 트레잇은 ECO 모드를 지원하는 THERMOSTAT 기기 유형에 속합니다.
ThermostatHvac
sdm.devices.traits.ThermostatHvac
이 트레잇은 HVAC 세부정보를 보고할 수 있는 THERMOSTAT 기기 유형에 속합니다.
ThermostatMode
sdm.devices.traits.ThermostatMode
이 트레잇은 다양한 온도 조절기 모드를 지원하는 THERMOSTAT 기기 유형에 속합니다.
ThermostatTemperatureSetpoint
sdm.devices.traits.ThermostatTemperatureSetpoint
이 트레잇은 희망 온도와 온도 범위 설정을 지원하는 THERMOSTAT 기기 유형에 속합니다.
카메라
트레잇
CameraClipPreview
sdm.devices.traits.CameraClipPreview
이 트레잇은 클립 미리보기 다운로드를 지원하는 모든 기기에 속합니다.
CameraEventImage
sdm.devices.traits.CameraEventImage
이 트레잇은 이벤트에서 이미지 생성을 지원하는 모든 기기에 속합니다.
CameraImage
sdm.devices.traits.CameraImage
이 트레잇은 이미지 촬영을 지원하는 모든 기기에 속합니다.
CameraLiveStream
sdm.devices.traits.CameraLiveStream
이 트레잇은 라이브 스트리밍을 지원하는 모든 기기에 속합니다.
CameraMotion
sdm.devices.traits.CameraMotion
이 트레잇은 움직임 감지 이벤트를 지원하는 모든 기기에 속합니다.
CameraPerson
sdm.devices.traits.CameraPerson
이 트레잇은 사람 감지 이벤트를 지원하는 모든 기기에 속합니다.
CameraSound
sdm.devices.traits.CameraSound
이 트레잇은 소리 감지 이벤트를 지원하는 모든 기기에 속합니다.
초인종
트레잇
DoorbellChime
sdm.devices.traits.DoorbellChime
이 트레잇은 초인종 차임벨 및 관련 누르기 이벤트를 지원하는 모든 기기에 속합니다.