Схема CameraEventImage
Nest Cam (устаревшая модель)
sdm.devices.traits.CameraEventImage
Эта черта принадлежит любому устройству, которое поддерживает создание изображений на основе событий.
Поля
Для этого признака нет доступных полей.
Команды
GenerateImage
Предоставляет URL для скачивания изображения с камеры.
Эта команда поддерживает следующие события:
| Тип | Элемент | Описание |
|---|---|---|
| Событие | Событие Motion типа CameraMotion. | Камера обнаружила движение. |
| Событие | Событие Человек типа CameraPerson. | Камера обнаружила человека. |
| Событие | Событие Sound признака CameraSound | Камера обнаружила звук. |
| Событие | Событие Chime типа DoorbellChime. | Нажата кнопка дверного звонка. |
eventId из поддерживаемого события в запросе команды, чтобы получить URL для скачивания изображения с камеры, связанного с этим событием.
Запрос и ответ GenerateImage
Запрос
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage",
"params" : {
"eventId" : "Lmm7MHV2FJ0Tjo9xQ4MateCg6e..."
}
}
Ответ
{
"results" : {
"url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
"token" : "g.0.eventToken"
}
}
Поля запроса GenerateImage
| Поле | Описание | Тип данных |
|---|---|---|
eventId |
Идентификатор события, для которого нужно запросить связанное изображение с камеры. | stringПример: "Lmm7MHV2FJ0Tjo9xQ4MateCg6e..." |
Поля ответа GenerateImage
| Поле | Описание | Тип данных |
|---|---|---|
url |
URL, по которому можно скачать изображение с камеры. | stringПример: https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1... |
token |
Токен, который будет использоваться в заголовке HTTP Authorization при скачивании изображения. | stringПример: "g.0.eventToken". |
Как скачать изображение с камеры
Чтобы скачать изображение с камеры, выполните GET-запрос к url из ответа на команду GenerateImage
, используя token в HTTP-заголовке авторизации с базовой авторизацией:
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...Чтобы настроить разрешение скачиваемого изображения, используйте параметры запроса width или height. Достаточно указать только один из этих параметров. Другой параметр масштабируется автоматически в соответствии с соотношением сторон камеры.
Например, если соотношение сторон камеры составляет 4:3, то для скачивания изображения с разрешением 480 x 360 укажите ширину или высоту:
Ширина
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 .
Ошибки
В связи с этим свойством могут возвращаться следующие коды ошибок:
| Сообщение об ошибке | Доход от клика | Устранение неполадок |
|---|---|---|
| Изображение с камеры больше недоступно для скачивания. | DEADLINE_EXCEEDED |
Изображения событий становятся недействительными через 30 секунд после публикации события. Не забудьте скачать изображение до истечения срока действия. |
| Идентификатор события не относится к камере. | FAILED_PRECONDITION |
Используйте правильный eventID, возвращенный событием камеры. |
Полный список кодов ошибок API приведен в Справочнике по кодам ошибок API.