PlayerApi. Запросы
API для использования внутри плеера.
Получение live потока
Получение live потока выбранного качества с камеры.
Если запрос был успешным, вы получите URL для воспроизведения.
@GET(STREAMS)
suspend fun getStreams(
@Path(ID) id: String,
@Query(TYPE) type: String, // 'low' or 'high'
@Query(SOURCE) source: String?
): VMSStreamsResponse
Получение архивного потока
Получение архивного потока с камеры.
Если запрос был успешным, вы получите URL для воспроизведения.
Если вам нужно отменить этот запрос, используйте метод cancelArchiveRequest() с указанным идентификатором камеры.
@GET(ARCHIVE)
suspend fun getArchive(
@Path(ID) id: String,
@Query(START) start: String,
@Query(DURATION) duration: String = "36000",
@Query(SOURCE) source: String?
): VMSStreamsResponse
start
— дата, с которой этот архив должен воспроизводиться
Получение URL для скачивания архива
Получение URL для скачивания определенной части архива камеры.
После этого вы получите push-уведомление с объектом VMSArchiveLinkSocket
и сгенерированным URL для загрузки.
Если запрос был успешным, ответ вернет VMSStatusResponse
.
@GET(CAMERAS_ARCHIVE_LINK)
suspend fun getArchiveLink(
@Path(ID) id: String,
@Query(FROM) from: String,
@Query(TO) to: String
): VMSStatusResponse
Перемещение камеры
Перемещение камеры в определенном направлении.
Если запрос был успешным, ответ вернет nil
.
@POST(CAMERAS_MOVE)
suspend fun moveCamera(@Path(ID) id: String, @Body ptz: Any): VMSStatusResponse
To use '@Body ptz: Any' see file PTZ.kt
Перемещение камеры в положение по умолчанию
Перемещение камеры в исходное положение.
Если запрос был успешным, ответ вернет VMSStatusResponse
.
@POST(CAMERAS_MOVE_HOME)
suspend fun moveCameraHome(@Path(ID) id: String): VMSStatusResponse