Схема CameraEventImage
Nest Cam (устаревшая версия) Nest Hub Max Nest Doorbell (устаревшая версия)
sdm.devices.traits.CameraEventImage
Эта черта присуща любому устройству, поддерживающему генерацию изображений из событий.
Поля
Для этого признака нет доступных полей.
Команды
ГенерироватьИзображение
Предоставляет URL-адрес для загрузки изображения с камеры.
Эта команда поддерживает следующие события:
Тип | Элемент | Описание |
---|---|---|
Событие | Событие движения свойства CameraMotion | Камера зафиксировала движение. |
Событие | Событие Person признака CameraPerson | Камера зафиксировала человека. |
Событие | Звуковое событие свойства CameraSound | Камера обнаружила звук. |
Событие | Событие Chime черты DoorbellChime | Был нажат дверной звонок. |
eventId
из поддерживаемого события в запросе команды, чтобы получить URL-адрес для загрузки изображения с камеры, связанного с этим событием.Запрос и ответ GenerateImage
Запрос
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage
",
"params" : {
"eventId" : "u-oLW1f3DV2i2oXGq_WqsJlrXx..."
}
}
Ответ
{ "results" : { "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...", "token" : "g.0.eventToken" } }
Поля запроса GenerateImage
Поле | Описание | Тип данных |
---|---|---|
eventId | Идентификатор события, для которого необходимо запросить соответствующее изображение с камеры. | string Пример: «u-oLW1f3DV2i2oXGq_WqsJlrXx...» |
Поля ответа GenerateImage
Поле | Описание | Тип данных |
---|---|---|
url | URL-адрес для загрузки изображения с камеры. | string Пример: «https:// domain /sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...» |
token | Токен для использования в заголовке HTTP-авторизации при загрузке изображения. | string Пример: "g.0.eventToken" |
Загрузить изображение с камеры
Сделайте вызов GET к url
из ГенерироватьИзображение Ответ на команду, использующий token
в заголовке HTTP Authorization с базовой авторизацией, для загрузки изображения с камеры:
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.
Смотрите КамераИзображение признак для получения информации о свойствах изображения.
Ошибки
В отношении этого признака могут быть возвращены следующие коды ошибок:
Сообщение об ошибке | РПК | Поиск неисправностей |
---|---|---|
Изображение с камеры больше не доступно для загрузки. | DEADLINE_EXCEEDED | Изображения событий истекают через 30 секунд после публикации события. Обязательно загрузите изображение до истечения срока действия. |
Идентификатор события не принадлежит камере. | FAILED_PRECONDITION | Используйте правильный eventID , возвращаемый событием камеры. |
Полный список кодов ошибок API см. в Справочнике кодов ошибок API.