Skip to main content
Skip table of contents

GroupApi. Камеры

API для управления группами камер.

Получение списка групп

Получить список групп камер. Укажите страницу для запроса. Для первого запроса установите page = 0.

Если запрос прошел успешно, вы получите пагинированный ответ из групп.

CODE
@GET(GROUPS)
suspend fun getGroups(@Query(PAGE) page: String): VMSApiResponseGroups

Создание группы

Создать новую группу камер с указанным именем. Изначально группа пуста.

Если запрос был успешным, ответом будет VMSCreateGroupResponse.

CODE
@POST(GROUPS)
suspend fun createGroup(@Body name: VMSSimpleName): VMSCreateGroupResponse

Переименование группы

Переименовать конкретную группу по ее идентификатору с новым именем.

Если запрос был успешным, ответом будет VMSChildGroup.

CODE
@PUT(GROUP_CRUD)
suspend fun renameGroup(@Path(ID) id: String, @Body name: VMSSimpleName): VMSChildGroup

Удаление группы

Удалить определенную группу по ее идентификатору.

Если запрос был успешным, ответом будет VMSStatusResponse.

CODE
@DELETE(GROUP_CRUD)
suspend fun deleteGroup(@Path(ID) id: Int): VMSStatusResponse

Обновление группы

Обновить группу с указанной информацией.

Если запрос был успешным, ответом будет VMSChildGroup.

CODE
@PUT(GROUP_CRUD)
suspend fun updateGroup(@Path(ID) id: String, @Body group: VMSUpdateGroupRequest): VMSChildGroup

@Path(ID) id — идентификатор группы, для указания необходимой группы.

VMSUpdateGroupRequest

Объект с необходимой информацией для обновления группы.

name — новое имя группы. Если вы не хотите менять имя группы, установите в этом параметре старое имя.

items — список идентификаторов камер, которые вы хотите добавить в эту группу.

Синхронизация групп

Этот запрос синхронизирует указанную камеру со всеми группами пользователей. В запросе требуется список групп, к которым будет принадлежать данная камера. Камера будет удалена из других групп.

Если запрос был успешным, ответом будет объект VMSGroupSync.

CODE
@POST(GROUPS_SYNC)
suspend fun syncGroups(@Path(ID) id: String, @Body groups: VMSGroupSyncRequest): VMSGroupSync

@Path(ID) id — укажите камеру по ее идентификатору.

groups — укажите список идентификаторов групп, в которых будет представлена камера (камера будет добавлена в группу, если ее там не было раньше).

VMSGroupSync

Информация о способе синхронизации на стороне сервера.

CODE
@Parcelize
data class VMSGroupSync(
	@SerializedName("type") val type: String = ""
): Parcelable

sync — вы получите этот тип, если синхронизация была выполнена.

async — вы получите этот тип, если у пользователя более 50 групп, серверный запрос будет выполняться асинхронно.

После завершения процесса вы получите сообщение сокета, которое сможете обработать. Дополнительную информацию см. в VMSPusherApi.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.