CameraEventImage 스키마
Nest Cam(기존)
sdm.devices.traits.CameraEventImage
이 트레잇은 이벤트에서 이미지 생성을 지원하는 모든 기기에 속합니다.
필드
이 트레잇에 사용할 수 있는 필드가 없습니다.
명령어
GenerateImage
카메라 이미지를 다운로드할 URL을 제공합니다.
이 명령어는 다음 이벤트를 지원합니다.
유형 | 요소 | 설명 |
---|---|---|
이벤트 | CameraMotion 트레잇의 Motion 이벤트 | 카메라가 움직임을 감지했습니다. |
이벤트 | CameraPerson 트레잇의 사람 이벤트 | 카메라에 사람이 감지되었습니다. |
이벤트 | CameraSound 트레잇의 Sound 이벤트 | 카메라에서 소리가 감지되었습니다. |
이벤트 | DoorbellChime 트레잇의 Chime 이벤트 | 초인종이 눌렸습니다. |
eventId
를 사용하여 해당 이벤트와 관련된 카메라 이미지의 다운로드 URL을 수신합니다.
GenerateImage 요청 및 응답
요청
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage
",
"params" : {
"eventId" : "TXopGchMUWwJ6OaSd3o394RfK9..."
}
}
응답
{ "results" : { "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...", "token" : "g.0.eventToken" } }
GenerateImage 요청 필드
필드 | 설명 | 데이터 유형 |
---|---|---|
eventId |
관련 카메라 이미지를 요청할 이벤트의 ID입니다. | string 예: 'TXopGchMUWwJ6OaSd3o394RfK9...' |
GenerateImage 응답 필드
필드 | 설명 | 데이터 유형 |
---|---|---|
url |
카메라 이미지를 다운로드할 URL입니다. | string 예: 'https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...' |
token |
이미지를 다운로드할 때 HTTP Authorization 헤더에 사용할 토큰입니다. | string 예: 'g.0.eventToken' |
카메라 이미지 다운로드
GenerateImage
명령어 응답에서 url
에 GET을 호출하고 HTTP 승인 헤더의 token
를 기본 승인과 함께 사용하여 카메라 이미지를 다운로드합니다.
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...
width
또는 height
쿼리 매개변수를 사용하여 다운로드한 이미지의 해상도를 맞춤설정합니다. 이 매개변수 중 하나만 지정하면 됩니다. 다른 매개변수는 카메라의 가로세로 비율에 따라 자동으로 조정됩니다.
예를 들어 카메라의 가로세로 비율이 4:3인 경우 해상도가 480x360인 카메라 이미지를 다운로드하려면 너비 또는 높이를 지정합니다.
너비
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?width=480
높이
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360
다운로드 URL에는 다음과 같은 다른 제한사항이 적용됩니다.
- URL에 두 매개변수가 모두 제공되면
width
가 사용되고height
는 무시됩니다. - URL에 두 매개변수 모두 제공되지 않으면
width
에 기본값 480이 선택됩니다.
이미지 속성에 관한 자세한 내용은 CameraImage 트레잇을 참고하세요.
오류
이 트레잇과 관련하여 다음과 같은 오류 코드가 반환될 수 있습니다.
오류 메시지 | RPC | 문제 해결 |
---|---|---|
카메라 이미지를 더 이상 다운로드할 수 없습니다. | DEADLINE_EXCEEDED |
이벤트 이미지는 이벤트가 게시된 후 30초 후에 만료됩니다. 만료되기 전에 이미지를 다운로드하세요. |
이벤트 ID가 카메라에 속하지 않습니다. | FAILED_PRECONDITION |
카메라 이벤트에서 반환된 올바른 eventID 를 사용합니다. |
API 오류 코드의 전체 목록은 API 오류 코드 참조를 확인하세요.