Схема CameraEventImage
Nest Cam (устаревшая модель)
sdm.devices.traits.CameraEventImage
Эта черта относится к любому устройству, которое поддерживает создание изображений на основе событий.
Поля
Для этого признака нет доступных полей.
Команды
GenerateImage
URL для скачивания изображения с камеры.
Эта команда поддерживает следующие события:
| Тип | Элемент | Описание |
|---|---|---|
| Событие | Событие Motion типа CameraMotion. | Камера обнаружила движение. |
| Событие | Событие Человек типа CameraPerson. | Камера обнаружила человека. |
| Событие | Событие Звук типа CameraSound. | Камера обнаружила звук. |
| Событие | Событие Chime типа DoorbellChime. | Нажата кнопка дверного звонка. |
eventId из поддерживаемого события в запросе команды, чтобы получить URL для скачивания изображения с камеры, связанного с этим событием.
Запрос и ответ GenerateImage
Запрос
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage",
"params" : {
"eventId" : "0MnccQe29Zoa3yPSl2eXx6SsNX..."
}
}
Ответ
{
"results" : {
"url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
"token" : "g.0.eventToken"
}
}
Поля запроса GenerateImage
| Поле | Описание | Тип данных |
|---|---|---|
eventId |
Идентификатор события, для которого нужно запросить связанное изображение с камеры. | stringПример: "0MnccQe29Zoa3yPSl2eXx6SsNX..." |
Поля ответа 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 приведен в справочнике.