Documentation for Axxon One 2.0. Documentation for other versions of Axxon One is [available too].

Previous page Next page

아카이브 내용 가져오기

녹화된 아카이브 목록을 가져오기:

GET http://IPaddress:port/prefix/archive/list/{VIDEOSOURCEID}

{VIDEOSOURCEID} − 세 부분으로 구성된 소스 엔드포인트 ID (비디오 카메라 목록 및 정보 가져오기 참조). 예를 들어, "SERVER1/DeviceIpint.3/SourceEndpoint.video:0:0".

요청 예시:

GET http://127.0.0.1:80/archive/list/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0

응답 예시:

{
   "archives" : [
      {
         "default" : true,
         "name" : "hosts/SERVER1/MultimediaStorage.AliceBlue/MultimediaStorage"
      },
      {
         "default" : false,
         "name" : "hosts/SERVER1/MultimediaStorage.AntiqueWhite/MultimediaStorage"
      }
   ]
}
파라미터설명
default

true − 기본 아카이브입니다.

false – 기본 아카이브가 아닙니다.

name아카이브 이름

아카이브 내용 가져오기:

GET http://IPaddress:port/prefix/archive/contents/intervals/{VIDEOSOURCEID}/{ENDTIME}/{BEGINTIME} – BEGINTIME에서 시작하여 ENDTIME에서 끝나는 아카이브 내용 가져오기

{VIDEOSOURCEID} – 세 부분으로 구성된 소스 엔드포인트 ID (비디오 카메라 목록 및 정보 가져오기 참조). 예를 들어, "SERVER1/DeviceIpint.3/SourceEndpoint.video:0:0".

BEGINTIME이 지정되지 않으면 무한 미래로 간주됩니다. ENDTIME이 지정되지 않으면 무한 과거로 간주됩니다. "past"와 "future"라는 단어를 사용하여 무한 과거와 무한 미래를 설정할 수도 있습니다.

간격 시퀀스는 지정된 BEGINTIME과 ENDTIME 사이의 비율에 해당합니다 (BEGINTIME<ENDTIME이면 오름차순, ENDTIME<BEGINTIME이면 내림차순). 간격의 시작과 끝 지점은 일반적인 순서로 반환됩니다. 즉, 간격 시작 시간이 간격 끝 시간보다 작거나 같아야 합니다.

시간은 YYYYMMDDTHHMMSS 형식으로 설정되며 UTC+0 시간대에 맞추어야 합니다.

파라미터필수설명
limitNo

응답에 포함될 간격의 수. 기본값은 100입니다.

scaleNo

두 간격이 서로 다른 간격으로 처리되기 위한 최소 시간 간격(병합되지 않음), 기본값은 0입니다.

archiveNo간격을 가져올 아카이브의 이름입니다. 지정하지 않으면 기본 아카이브에서 간격이 가져옵니다.

요청 예시:

GET http://127.0.0.1:80/archive/contents/intervals/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0/past/future

응답 예시:

{
   "intervals": [
      {
         "begin": "20200512T105111.089000",
         "end": "20200521T121106.032000"
      },
      {
         "begin": "20200430T052909.842000",
         "end": "20200430T063733.242000"
      }
   ],
   "more": true
}
파라미터설명
intervals

간격을 포함하는 배열

Note

시간은 UTC 형식으로 반환됩니다.

more

true – 서버가 제한(limit 매개변수)을 초과하여 모든 간격을 반환하지 않았습니다.

false – 서버가 지정된 시간 간격에서 모든 간격을 반환했습니다.

아카이브 정보 가져오기

아카이브 깊이

GET http://IP address:port/prefix/archive/statistics/depth/{VIDEOSOURCEID}—아카이브 깊이에 대한 정보를 가져옵니다.

{VIDEOSOURCEID}—세 가지 구성 요소로 된 소스 엔드포인트 ID (비디오 카메라 목록 및 정보 가져오기 참조). 예를 들어, "SERVER1/DeviceIpint.3/SourceEndpoint.video:0:0".

파라미터필수설명
archiveNo

요청에서 아카이브 목록을 가져오는 데 사용된 아카이브의 이름 (아카이브 내용 가져오기 참조). 지정되지 않으면 기본 아카이브가 사용됩니다.

thresholdNo

아카이브에 기록된 레코드 간의 최대 간격 기간. 레코드 간의 간격이 임계값(threshold) 파라미터 값을 초과하면 레코드는 분리된 것으로 간주되며 새 간격이 형성됩니다. 임계값(threshold) 파라미터는 일(day) 단위로 설정되며, 기본값은 1일입니다.

샘플 요청 1:

GET http://127.0.0.1:80/archive/statistics/depth/SERVER1/DeviceIpint.23/SourceEndpoint.video:0:0

샘플 응답:

{
  "start": "20160823T141333.778000"
  ,"end": "20160824T065142"
}

샘플 요청 2:

GET http://127.0.0.1:80/archive/statistics/depth/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0?archive=hosts/SERVER1/MultimediaStorage.AliceBlue/MultimediaStorage

샘플 응답:

{
  "start": "20210910T070448.179000"
  ,"end": "20210910T072838"
}
파라미터설명
start간격 의 시작 시간
end간격의 끝 시간

샘플 요청 3:

GET http://127.0.0.1:80/archive/statistics/depth/SERVER1/DeviceIpint.11/SourceEndpoint.video:0:1?threshold=2&archive=hosts%2FSERVER1%2FMultimediaStorage.AliceBlue%2FMultimediaStorage&bundle=com.inaxsys.arkiv

{
  "start": "20230506T125443.056000"
  ,"end": "20230804T065741.643000"
}

특정 카메라 아카이브의 녹화 용량

GET http://IP address:port/prefix/archive/statistics/capacity/{VIDEOSOURCEID}/{ENDTIME}/{BEGINTIME}—BEGINTIME에서 ENDTIME까지 특정 카메라 아카이브의 녹화 용량에 대한 정보를 가져옵니다.

Note

ENDTIME과 BEGINTIME 구문은 아카이브 내용 가져오기에서 설명된 대로입니다.

파라미터필수설명
archiveNo

GET 요청을 통해 아카이브 목록을 가져올 때 사용된 아카이브 이름 (아카이브 내용 가져오기 참조). 지정하지 않으면 기본 아카이브가 사용됩니다.

샘플 요청:

GET http://127.0.0.1:80/archive/statistics/capacity/SERVER1/DeviceIpint.23/SourceEndpoint.video:0:0/past/future?archive=hosts/SERVER1/MultimediaStorage.AntiqueWhite/MultimediaStorage

샘플 응답:

{
  "size": 520093696
  ,"duration": 32345
}
파라미터설명

size

지정된 기간 내 아카이브 크기 (바이트 단위)

duration

지정된 기간 내 아카이브 지속 시간 (초 단위)

Attention!

정확한 값을 계산하는 것이 고성능 프로세스이므로 값은 대략적으로 계산되며 오차 범위는 몇 퍼센트일 수 있습니다.

아카이브 손상에 대한 정보 가져오기

GET http://IPaddress:port/prefix/archive/health/{HOSTNAME}/{ENDTIME}/{BEGINTIME}

{HOSTNAME} − 서버 이름

Note

NDTIME과 BEGINTIME 구문은 Get MM archive contents 섹션에 설명되어 있습니다.

파라미터필수설명
archiveNo

아카이브 목록을 가져오기 위한 요청에서 아카이브 이름 (아카이브 내용 가져오기 참조).

healthNo

0 − 아카이브 손상 있음, 1 − 아카이브 손상 없음


Important!

요청에 아카이브 또는 상태 파라미터가 포함되지 않은 경우, 응답에는 이들 파라미터의 모든 값이 포함됩니다.

샘플 요청:

GET http://127.0.0.1:80/archive/health/SERVER/past/future?archive=hosts/SERVER/MultimediaStorage.AliceBlue/MultimediaStorage&health=0

샘플 응답:

{
"events" : [
{
"data" : {
"archive" : "D:/archiveAliceBlue.afs",
"health" : 0
},
"timestamp" : "20180907T101637.361014"
},
{
"data" : {
"archive" : "D:/archiveAliceBlue.afs",
"health" : 0
},
"timestamp" : "20180907T102726.750134"
}
]
}

여기서,

timestamp − 아카이브 손상 탐지 시간 (UTC +0)

아카이브 스트림 가져오기


On page:

Important!

오직 x64 서버에서만 오디오를 가져올 수 있습니다.

MJPEG 형식으로 오디오를 가져올 수 없습니다.

기본 아카이브에서 아카이브 스트림 가져오기

GET http://IPaddress:port/prefix/archive/media/{VIDEOSOURCEID}/{STARTTIME}

{VIDEOSOURCEID} − 3부 구성 소스 엔드포인트 ID  (비디오 카메라 목록 및 정보 가져오기 참조). 예, "SERVER1/DeviceIpint.3/SourceEndpoint.video:0:0".

ISO 형식의 시간. 시간대는 UTC+0으로 설정합니다.

파라미터필수설명
speed No재생 속도, 값은 음수일 수 있습니다.
formatNo파라미터 값은 'mjpeg', 'rtsp', 'mp4', 'hls'입니다. 형식이 지정되지 않거나 인식되지 않으면 기본적으로 'rtsp'가 선택되며, 추가 인코딩을 방지하기 위해 서버에서 네이티브 형식을 선택합니다. 클라이언트가 네이티브 형식을 지원하지 않으면 서버에서 WebM 형식을 선택합니다.
idNo아카이브 스트림의 고유 식별자 (선택 사항). 스트림 정보를 가져오거나 스트림을 제어하는 데 사용됩니다.

w

h

No

w – 프레임 너비, h – 프레임 높이

frNo

fps.

Important!

이 파라미터는 MJPEG 비디오에만 해당됩니다.

enable_token_auth No

비디오 스트림에 대한 서명된 링크를 가져옵니다

enable_token_auth − 토큰을 통한 인증 활성화 = 1.

valid_token_hours − 서명 유효 시간 (시간 단위). 최대 값은 1주일이며, 기본 값은 12시간입니다.

valid_token_hoursNo

샘플 요청:

GET http://127.0.0.1:80/archive/media/Server1/DeviceIpint.1/SourceEndpoint.video:0:0/20110608T060141.375?format=rtsp&speed=1&w=640&h=480&enable_token_auth=1&valid_token_hours=1

Important!

HLS 아카이브 비디오는 응답을 받은 후 30초 이내에 사용 가능합니다.

샘플 응답:

{
    "http": {
        "description": "RTP/RTSP/HTTP/TCP",
        "path": "archive/hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0/20110608T060141.375000?speed=1&id=a865fcea-cfe6-44a1-bf7b-9e6a94c44a53&exp=20200525T171234&nonce=1&hmac=wVlyHvZkB2TnqftTfYugtwmZ7g8=",
        "port": "8554"
    },
    "httpproxy": {
        "description": "RTP/RTSP/HTTP/TCP Current Http Port",
        "path": "rtspproxy/archive/hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0/20110608T060141.375000?speed=1&id=a865fcea-cfe6-44a1-bf7b-9e6a94c44a53&exp=20200525T171234&nonce=2&hmac=BVICx8NVV4yijwqc0Q6Xzji41Rg="
    },
    "rtsp": {
        "description": "RTP/UDP or RTP/RTSP/TCP",
        "path": "archive/hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0/20110608T060141.375000?speed=1&id=a865fcea-cfe6-44a1-bf7b-9e6a94c44a53&exp=20200525T171234&nonce=1&hmac=wVlyHvZkB2TnqftTfYugtwmZ7g8=",
        "port": "554"
    }
}

스트림에 ID 할당

스트림에 ID를 할당하여 해당 스트림에 대한 정보를 받을 수 있습니다.

http://IPaddress:port/prefix/archive/media/VIDEOSOURCEID/STARTTIME/20140723T120000.000?format=rtsp&speed=1&w=640&h=480&id=f03c6ccf-b181-4844-b09c-9a19e6920fd3

기타 값들도 사용할 수 있으며, 라틴 문자와 숫자로 구성됩니다. UUID 함수를 사용하는 것이 권장됩니다 (고유 식별자 가져오기 참고).

RTSP 아카이브 비디오

GET rtsp://login:password@IPaddress:554/archive/hosts/SERVER1/DeviceIpint.0/SourceEndpoint.video:0:0/20160907T050548.723000Z?speed=1

Speed 파라미터는 필수입니다: 재생 속도.

예:

  • speed = 1 − 정상 속도, 전방 재생
  • speed = -1 − 정상 속도, 후방 재생
  • speed = 4 − 빠른 재생, 4배속
  • speed = -8 − 빠른 되감기, 8배속

HTTP 아카이브 비디오

ffplay.exe -v debug "http://login:password@IP-Address:80/archive/media/SERVER1/DeviceIpint.4/SourceEndpoint.video:0:0/20170112T113526?w=1600&h=0&speed=1".

RTSP를 HTTP로 터널링


ffplay -rtsp_transport http "rtsp://login:password@IPaddress:8554/rtspproxy/archive/hosts/SERVER1/DeviceIpint.4/SourceEndpoint.video:0:0/20170115T113526".

For VLC: GET rtsp://login:password@Iaddress:8554/rtspproxy/archive/hosts/SERVER1/DeviceIpint.4/SourceEndpoint.video:0:0/20170115T113526

H.264 아카이브 비디오

H.264 아카이브 비디오를 가져오려면 RTSP 프로토콜을 사용합니다.

GET rtsp://login:password@IP-Address:554/archive/hosts/SERVER1/DeviceIpint.4/SourceEndpoint.video:0:0/20170112T113526

또는 RTSP를 HTTP로 터널링하여 사용할 수 있습니다.

GET rtsp://login:password@IP-Address:80/rtspproxy/archive/hosts/SERVER1/DeviceIpint.4/SourceEndpoint.video:0:0/20170115T113526



아카이브 스트림 정보 가져오기

아카이브 스트림 제어

프레임 단위로 비디오 영상을 검토하기

북마크 작업

아카이브에서 북마크 가져오기

GET http://IPaddress:port/prefix/archive/contents/bookmarks/{HOSTNAME}/{ENDTIME}/{BEGINTIME}

{HOSTNAME} − 서버 이름

Note

ENDTIME과 BEGINTIME 구문은 Get MM archive contents 섹션에 설명되어 있습니다.


파라미터필수설명

threshold

No

지정된 수만큼 결과가 오프셋됩니다. 예를 들어, offset=0인 쿼리가 100개의 결과를 반환했다면, 다음 결과를 얻으려면 offset=100으로 쿼리를 실행해야 합니다. 두 번째 쿼리가 250개의 결과를 반환했다면, 다음 결과를 얻으려면 offset=350으로 쿼리를 실행해야 합니다.

limitNo받은 북마크 한도. 기본값은 100입니다.

샘플 요청:

GET http://127.0.0.1:80/archive/contents/bookmarks/Server1/future/past

응답 요청: 

{
    "archives": [
        {
            "friendly_name": "AliceBlue",
            "storage": "hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage"
        }
    ],
    "cameras": [
        {
            "endpoint": "hosts/Server1/DeviceIpint.7/SourceEndpoint.video:0:0",
            "friendly_name": "Camera"
        }
    ],
    "events": [
        {
            "archBegin": "2019-03-19T10:06:54.295Z",
            "archEnd": "2019-03-19T13:02:41.243Z",
            "begins_at": "20190319T114843.000",
            "boundary": "((0.4989775;0.4169492);(75.49898;13.41695))",
            "comment": "comment",
            "endpoint": "hosts/Server1/DeviceIpint.7/SourceEndpoint.video:0:0",
            "ends_at": "20190319T115638.000",
            "geometry": "f49fa526-c320-404a-9da2-7a090759a717;None;147",
            "group_id": "b686e57c-a4e8-44dd-b17e-8c1b805a1b6e",
            "id": "7843d488-67e2-4140-ab17-0016e4ba22bc",
            "is_protected": false,
            "storage_id": "hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage",
            "timestamp": "20190319T130332.110491",
            "user_id": "root"
        },
        {
            "begins_at": "20190319T121747.999",
            "boundary": "((0.4989775;0.4169492);(75.49898;13.41695))",
            "comment": "protected",
            "endpoint": "hosts/Server1/DeviceIpint.7/SourceEndpoint.video:0:0",
            "ends_at": "20190319T123101.145",
            "geometry": "4cbf8979-4234-4a9a-9838-3026bd4ec496;None;147",
            "group_id": "2e184409-ed77-41bb-85d1-92d78d35c882",
            "id": "a792a895-00fd-48f9-9bd4-99e572f1579d",
            "is_protected": true,
            "storage_id": "hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage",
            "timestamp": "20190319T130339.722000",
            "user_id": "root"
        }
]
파라미터설명
archives북마크를 포함하는 아카이브 배열
cameras북마크된 카메라 배열
begins_at북마크 시작 및 끝에 해당하는 항목
ends_at
comment코멘트
endpoint출처
is_protected

값이 true이면 해당 기록은 덮어쓰기로부터 보호됩니다 (FIFO 덮어쓰기로부터 영상 보호 참조).

storage_id아카이브 
timestamp북마크 추가 날짜
user id

북마크를 추가한 사용자

북마크 편집

POST http://IPaddress:port/prefix/archive/contents/bookmarks/

요청 본문에는 GET 요청의 데이터(아카이브에서 북마크 가져오기 참조)와 hostname 매개변수가 포함되어야 합니다.

[
        {
            "archBegin": "2019-03-19T10:06:54.295Z",
            "archEnd": "2019-03-19T13:02:41.243Z",
            "begins_at": "20190319T114843.000",
            "boundary": "((0.4989775;0.4169492);(75.49898;13.41695))",
            "comment": "comment_new",
            "endpoint": "hosts/Server1/DeviceIpint.7/SourceEndpoint.video:0:0",
            "ends_at": "20190319T115638.000",
            "geometry": "f49fa526-c320-404a-9da2-7a090759a717;None;147",
            "group_id": "b686e57c-a4e8-44dd-b17e-8c1b805a1b6e",
            "id": "7843d488-67e2-4140-ab17-0016e4ba22bc",
            "is_protected": false,
            "storage_id": "hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage",
            "timestamp": "20190319T130332.110491",
            "user_id": "root",
			"hostname": "Server1"
        }
]

다음 매개변수를 편집할 수 있습니다.

  • begins_at,
  • ends_at,

  • comment,

  • is_protected,

  • endpoint,

  • storage_id.

댓글이나 북마크를 삭제하려면 endpointstorage_id 매개변수 값을 지워야 합니다.

[
        {
            "archBegin": "2019-03-19T10:06:54.295Z",
            "archEnd": "2019-03-19T13:02:41.243Z",
            "begins_at": "20190319T114843.000",
            "boundary": "((0.4989775;0.4169492);(75.49898;13.41695))",
            "comment": "comment_new",
            "endpoint": "",
            "ends_at": "20190319T115638.000",
            "geometry": "f49fa526-c320-404a-9da2-7a090759a717;None;147",
            "group_id": "b686e57c-a4e8-44dd-b17e-8c1b805a1b6e",
            "id": "7843d488-67e2-4140-ab17-0016e4ba22bc",
            "is_protected": false,
            "storage_id": "",
            "timestamp": "20190319T130332.110491",
            "user_id": "root",
			"hostname": "Server1"
        }
]

북마크 생성

POST http://IPaddress:port/prefix/archive/contents/bookmarks/create

요청 본문에는 begins_at, ends_at, comment, is_protected, endpointstorage_id 매개변수가 포함된 JSON이 있어야 합니다. (아카이브에서 북마크 가져오기 참조).

[
	{
		"begins_at":"20190226T102523.000",
		"comment":"text",
		"ends_at":"20190226T102646.000",
		"is_protected":true, 
		"endpoint":"hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
		"storage_id":"hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage"
	}
]

그룹 북마크 생성을 위한 JSON은 다음과 같습니다.

[
	{
		"begins_at":"20190226T102523.000",
		"comment":"text",
		"ends_at":"20190226T102646.000",
		"is_protected":true, 
		"endpoint":"hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
		"storage_id":"hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage"
	},
	{   "endpoint":"hosts/Server1/DeviceIpint.2/SourceEndpoint.video:0:0",
		"storage_id":"hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage"
	}
]

그룹 북마크는 여러 카메라에 연결되지만 begins_at, ends_atcomment 및  is_protected 매개변수는 첫 번째 요소 배열에서 가져옵니다.

Attention!

GET 요청에서 그룹 북마크(아카이브에서 북마크 가져오기 참조)는 서로 다른 endpointstorage_id 매개변수를 가진 여러 개의 북마크처럼 보입니다.

그룹 북마크를 편집하려면(북마크 편집 참조) 모든 개별 북마크를 동시에 편집해야 하며 endpointstorage_id를 제외한 다른 모든 매개변수가 일치하는지 확인해야 합니다.

아카이브에서 비디오 삭제

DELETE http://IP-address:port/prefix/archive/contents/bookmarks/
파라미터필수설명
begins_atYes매개변수는 생성된 북마크와 정확히 일치해야 합니다 (아카이브에서 북마크 가져오기 참조).
ends_atYes
storage_idYes
endpointYes

북마크 자체는 삭제되지 않습니다.

샘플 요청:

DELETE http://127.0.0.1:80/archive/contents/bookmarks/?begins_at=20190320T114213.645&ends_at=20190320T114700.481&storage_id=hosts/Server1/MultimediaStorage.AliceBlue/MultimediaStorage&endpoint=hosts/Server1/DeviceIpint.7/SourceEndpoint.video:0:0


아카이브 검색

일반 인터페이스

검색 요청

하나의 소스로 검색

Method: POST http://IP-Address:port/prefix/search/{auto|face|vmda|stranger|heatmap}/{DETECTORID}/{BEGINTIME/ENDTIME}

  • auto|face|vmda|stranger|heatmap – 검색 유형. "vmda" 검색 유형을 사용할 경우 요청 본문에 "query" 기능이 포함되어야 합니다 (포렌식 검색 MomentQuest (VMDA) API 참조).
  • DETECTORID – 엔드포인트 감지 도구 삼진 ID (auto 및 face 검색의 경우 HOSTNAME/AVDetector.ID/EventSupplier, vmda의 경우 HOSTNAME/AVDetector.ID/SourceEndpoint.vmda, 검출 도구 목록 가져오기 참조).

Note

ENDTIME과 BEGINTIME 구문은 아카이브 내용 가져오기 섹션에 설명되어 있습니다.

단일 컴퓨터에서의 검색 요청은 auto와 face 검색에 대해서도 지원되며, 요청 구조는 다음과 같습니다.

http://localhost/prefix/search/(auto|face)/{HOSTNAME}/{BEGINTIME}/{ENDTIME}

HOSTNAME – Server name.

여러 소스로 검색 

Method: POST http://IP-Address:port/prefix/search/{auto|face|vmda|stranger|heatmap}/{BEGINTIME/ENDTIME}

이 검색 유형은 항상 POST 본문에 JSON을 수락하며, 최소한 다음 형식의 섹션을 포함해야 합니다.

"sources": [
		"hosts/AVDetector.1/EventSupplier"
	]

색 요청이 수행될 때, JSON에는 base64 형식의 이미지가 포함되어야 합니다.

{
	"sources": [
					"hosts/AVDetector.1/EventSupplier",
					"hosts/AVDetector.2/EventSupplier"
			],
    "image" : "base64 encoded image"
}

결과

요청은 오류 또는 다음과 같은 응답을 반환합니다.

HTTP/1.1 202 Accepted
Connection: Close
Location: /search/(auto|face|vmda|stranger|heatmap)/GUID 
Cache-Control: no-cache

수락 코드(Accepted)를 받았다고 해서 검색이 성공적으로 실행된다는 보장은 없습니다. 이 코드는 명령이 처리 중임을 나타낼 뿐입니다.

파라미터설명
Location검색 결과에 대한 향후 접근을 위한 식별자. 예: /search/vmda/3dc15b75-6463-4eb1-ab2d-0eb0a8f54bd3

오류 코드:

오류 코드설명
400잘못된 요청
500내부 서버 오류

검색 결과 요청

GET http://IP-Address:port/search/{auto|face|vmda|stranger|heatmap}/{GUID}/result

 /search/(auto|face|vmda)/GUID 부분은 POST 명령의 결과입니다 (검색 요청 참조).

파라미터필수설명
limitNo요청에 의해 반환되는 최대 이벤트 수. 기본값은 uint32_t::max()입니다.
offsetNo

결과는 지정된 수만큼 오프셋됩니다. 예를 들어, offset=0으로 쿼리를 실행하여 100개의 결과를 반환받았다면, 다음 결과를 얻기 위해서는 offset=100으로 쿼리를 실행해야 합니다. 만약 두 번째 쿼리에서 250개의 결과가 반환되었다면, 다음 결과를 얻기 위해서는 offset=350으로 쿼리를 실행해야 합니다.

샘플 요청:

http://127.0.0.1:80/search/face/49ded146-3912-4a2f-8e70-6ecfbcdacdea/result?offset=0&limit=10

반환된 결과는 검색 유형에 따라 달라집니다.

요청은 두 가지 성공적인 상태를 반환할 수 있습니다.

상태설명
206검색이 끝나지 않았습니다. 상태 코드 200이 반환될 때까지 검색 결과 요청을 반복하십시오. 반복 요청 사이에 지연 시간을 설정하여 계산 부담을 줄이십시오.
200검색이 완료되었습니다.

오류 코드:

오류설명
400잘못된 요청입니다.
404오프셋 값이 현재 결과 수보다 크거나 요청한 검색 ID (GUID)를 찾을 수 없습니다.

검색 완료

Method: DELETE http://IP-adress:port/search/(auto|face|vmda)/GUID

 /search/(auto|face|vmda)/GUID GUID 부분은 POST 명령의 결과입니다 (검색 요청 참조).

이 명령은 검색 작업을 종료하고 리소스를 해제합니다. 명령 실행 후에는 검색 결과를 사용할 수 없습니다.

오류 코드:

오류설명
400잘못된 요청


얼굴 검색 API

검색 시작에 사용되는 POST 요청(검색 요청 참조)은 검색할 얼굴의 이진 데이터를 JPEG 형식으로 포함해야 합니다.

Note

모든 얼굴 탐지 트리거는 t_json_event 데이터베이스 테이블에 저장됩니다.

t_face_vector 테이블은 탐지 도구에 의해 인식된 얼굴의 벡터를 저장합니다.

t_face_listed 테이블은 사람 목록에 추가된 얼굴 이미지를 저장합니다.

파라미터필수설명
accuracyNo

accuracy 매개변수는 [0, 1] 범위의 인식률(1 – 완전 일치)입니다. 이 매개변수는 검색 라인 또는 요청 본문에 추가로 지정할 수 있습니다. 그렇지 않으면 기본값 0.9가 사용됩니다.

Attention!

요청 본문에 지정된 매개변수 값이 더 높은 우선순위를 갖습니다.

Attention!

POST 요청의 본문이 비어 있으면, 검색은 인식된 얼굴에 대한 모든 결과를 반환합니다. 이 경우 accuracy 매개변수 값은 0이 됩니다.

샘플 요청:

POST http://127.0.0.1:80/search/face/SERVER1/AVDetector.2/EventSupplier/past/future?accuracy=0.7

GET http://127.0.0.1:80/search/face/2e69ba76-23f1-4d07-a812-fee86e994b8e/result

샘플 응답:

{
   "events" : [
      {
         "accuracy" : 0.90591877698898315,
         "origin" : "hosts/SERVER1/DeviceIpint.2/SourceEndpoint.video:0:0", "position" : {
         "bottom" : 0.10694444444444445, "left" : 0.69687500000000002, "right" : 0.74687500000000007, "top" : 0.018055555555555554
      },
      "timestamp" : "20160914T085307.499000"
      },
      {
         "accuracy" : 0.90591877698898315,
         "origin" : "hosts/SERVER1/DeviceIpint.2/SourceEndpoint.video:0:0", "position" : {
         "bottom" : 0.10694444444444445, "left" : 0.69687500000000002, "right" : 0.74687500000000007, "top" : 0.018055555555555554
      },
         "timestamp" : "20160914T085830.392000"
      }
   ]
}
파라미터설명
origin분석된 비디오 스트림을 가져올 카메라 채널
timestamp검출 도구로 얼굴이 감지된 비디오 프레임의 타임스탬프
accuracy[0, 1] 범위의 인식 정확도, 1은 완전 일치를 의미
position비디오 프레임에서 얼굴을 둘러싼 프레임 경계의 좌표

LPR 검색 API

검색 시작에 사용되는 POST 요청(검색 요청 참조)은 다음 JSON을 포함해야 합니다.

{
   "plate": "mask"
}

plate 매개변수는 검색 마스크를 설정합니다. 마스크 형식은 GUI에서 사용되는 형식에 해당합니다 (LPR 검색 참조).

Attention!

POST 요청의 본문이 비어 있으면, 검색은 인식된 모든 번호판에 대한 결과를 반환합니다.

파라미터필수설명
result_typeNo

result_type=full 은 상세한 응답을 의미합니다.

샘플 요청:

POST http://127.0.0.1:80/search/auto/SERVER1/AVDetector.2/EventSupplier/past/future?result_type=full or POST http://127.0.0.1:80/search/auto/SERVER1/AVDetector.2/EventSupplier/past/future

GET http://127.0.0.1:80/search/auto/2e69ba76-23f1-4d07-a812-fee86e994b8e/result

샘플 응답:

      {
         "origin": "hosts/SERVER1/DeviceIpint.3/SourceEndpoint.video:0:0",
         "plates": [
            "О035КО97"
         ],
         "position": {
            "bottom": 0.86805555555555558,
            "left": 0.31805555555555554,
            "right": 0.49027777777777776,
            "top": 0.81944444444444442
         },
         "timestamp": "20190912T105500.925000"
}
파라미터설명
origin분석된 비디오 스트림을 가져올 카메라 채널
timestamp검출 도구로 번호판이 감지된 프레임의 타임스탬프
plates추정된 가설 목록
position인식된 번호판 프레임의 좌표

상세 응답:

{
   "events" : [
      {
         "Direction" : 0,
         "Hypotheses" : [
            {
               "OCRQuality" : 50,
               "PlateCountry" : "us",
               "PlateFull" : "E733XA97",
               "PlateRectangle" : [
                  0.40104166666666669,
                  0.52941176470588236,
                  0.45000000000000001,
                  0.55147058823529416
               ],
               "TimeBest" : "20180730T094220.010000"
            },
            {
               "OCRQuality" : 32,
               "PlateCountry" : "us",
               "PlateFull" : "*E733X*9",
               "PlateRectangle" : [
                  0.40104166666666669,
                  0.52941176470588236,
                  0.45000000000000001,
                  0.55147058823529416
               ],
               "TimeBest" : "20180730T094220.010000"
            },
            {
               "OCRQuality" : 38,
               "PlateCountry" : "us",
               "PlateFull" : "E733XA***",
               "PlateRectangle" : [
                  0.40104166666666669,
                  0.52941176470588236,
                  0.45000000000000001,
                  0.55147058823529416
               ],
               "TimeBest" : "20180730T094220.010000"
            }
         ],
         "TimeBegin" : "20180730T094219.610000",
         "TimeEnd" : "20180730T094220.050000",
         "detector_type" : "plateRecognized",
         "origin_id" : "hosts/Server1/DeviceIpint.2/SourceEndpoint.video:0:0",
         "phase" : 0,
         "timestamp" : "20180730T094220.010000",
         "ts_vector_body" : "E733XA97 EZERZER 7ONEZER 3TWOZER 3THRZER XFOUZER AFIVZER 9SIXZER 7SEVZER 8LENGTHZER *E733X*9 *ZERONE EONEONE 7TWOONE 3THRONE 3FOUONE XFIVONE *SIXONE 9SEVONE 8LENGTHONE E733XA*** EZERTWO 7ONETWO 3TWOTWO 3THRTWO XFOUTWO AFIVTWO *SIXTWO *SEVTWO *EIGTWO 9LENGTHTWO"
      },

Web-Socket을 통해 이벤트를 받기 위한 샘플 요청:

ws://root:root@localhost/events?schema=proto

파라미터설명
schemaschema=proto 는 자세한 응답을 의미합니다.

자세한 샘플 응답:

{
    "objects": [
        {
            "body": {
                "@type": "type.googleapis.com/axxonsoft.bl.events.DetectorEvent",
                "details": [
                    {
                        "autoRecognitionResultEx": {
                            "direction": {
                                "value": "Outgoing"
                            },
                            "headlightsStatus": {
                                "value": "Disabled"
                            },
                            "hypotheses": [
                                {
                                    "country": "Denmark",
                                    "ocrQuality": 99,
                                    "plateFull": "CJ97139",
                                    "plateRectangle": {
                                        "h": 0.03703703703703709,
                                        "w": 0.067708333333333315,
                                        "x": 0.31302083333333336,
                                        "y": 0.96296296296296291
                                    },
                                    "plateState": "NA",
                                    "timeBest": "20230623T124816.295000"
                                }
                            ],
                            "plateType": {
                                "value": "EUnitedNations"
                            },
                            "timeBegin": "2023-06-23T12:48:16.295Z",
                            "timeEnd": "2023-06-23T12:48:16.295Z",
                            "vehicleBrand": {
                                "value": "Mercedes Benz"
                            },
                            "vehicleClass": {
                                "value": "Car"
                            },
                            "vehicleColor": {
                                "value": "Gray"
                            },
                            "vehicleModel": {
                                "value": "GLS Klasse"
                            }
                        }
                    },
                    {
                        "autoRecognitionResult": {
                            "direction": "Outgoing",
                            "headlightsStatus": "Disabled",
                            "hypotheses": [
                                {
                                    "country": "Denmark",
                                    "ocrQuality": 99,
                                    "plateFull": "CJ97139",
                                    "plateRectangle": {
                                        "h": 0.03703703703703709,
                                        "w": 0.067708333333333315,
                                        "x": 0.31302083333333336,
                                        "y": 0.96296296296296291
                                    },
                                    "plateState": "NA",
                                    "timeBest": "20230623T124816.295000"
                                }
                            ],
                            "plateType": "EUnitedNations",
                            "timeBegin": "20230623T124816.295000",
                            "timeEnd": "20230623T124816.295000",
                            "vehicleBrand": "Mercedes Benz",
                            "vehicleClass": "Car",
                            "vehicleColor": "Gray",
                            "vehicleModel": "GLS Klasse"
                        }
                    }
                ],
                "detectorDeprecated": "hosts/TEST/AVDetector.1/EventSupplier",
                "detectorExt": {
                    "accessPoint": "hosts/TEST/AVDetector.1/EventSupplier",
                    "friendlyName": "1.\u0420\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u0435\u0439 (RR)"
                },
                "detectorsGroup": [
                    "DG_LPR_DETECTOR"
                ],
                "eventType": "plateRecognized",
                "guid": "d6650759-e89b-43dd-a610-459a6e421ccc",
                "nodeInfo": {
                    "friendlyName": "TEST",
                    "name": "TEST"
                },
                "originDeprecated": "hosts/TEST/DeviceIpint.1/SourceEndpoint.video:0:0",
                "originExt": {
                    "accessPoint": "hosts/TEST/DeviceIpint.1/SourceEndpoint.video:0:0",
                    "friendlyName": "1.\u041a\u0430\u043c\u0435\u0440\u0430"
                },
                "timestamp": "20230623T124816.295000"
            },
            "eventName": "axxonsoft.bl.events.DetectorEvent",
            "eventType": "ET_DetectorEvent",
            "localization": {
                "text": "\u041a\u0430\u043c\u0435\u0440\u0430 \"1.\u041a\u0430\u043c\u0435\u0440\u0430\". \u0421\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u0430 \"1.\u0420\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u0435\u0439 (RR)\", \u041d\u043e\u043c\u0435\u0440 \"CJ97139\", \u0441\u0442\u0440\u0430\u043d\u0430 \"Denmark\", \u043a\u043b\u0430\u0441\u0441 \"\u0410\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u044c\", \u0446\u0432\u0435\u0442 \"Gray\", \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c \"Mercedes Benz\", \u043c\u043e\u0434\u0435\u043b\u044c \"GLS Klasse\", \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0444\u0430\u0440 \"\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u044b\" \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f: \u0422\u0438\u043f \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u0430 = \"\u0420\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u043d\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440\""
            },
            "requiredPermissions": {
                "requiredObjectPermissions": [
                    {
                        "accessPoint": "hosts/TEST/DeviceIpint.1/SourceEndpoint.video:0:0",
                        "cameraAccess": "CAMERA_ACCESS_ONLY_ARCHIVE"
                    }
                ]
            },
            "subjects": [
                "hosts/TEST/DeviceIpint.1/SourceEndpoint.video:0:0",
                "hosts/TEST/AVDetector.1/EventSupplier"
            ]
        }
    ]
}
파라미터설명
vehicleBrand차량 제조사
vehicleClass차량 종류
vehicleColor차량 색상
vehicleModel차량 모델

포렌식 검색 MomentQuest (VMDA) API

검색 시작을 위한 POST 요청(검색 요청 참조)은 다음 유형 중 하나의 JSON을 포함해야 합니다.
  1. 검색 요청에는 세 가지 논리적 부분이 있습니다.

    검색 요청에는 세 가지 논리적 부분이 있습니다.

    1. 요청 유형 (queryType, 요청 유형 및 파라미터 참조)

    2. 지정된 요청 유형에 특화된 매개변수 (숫자, queryProperties, 추가 조건 참조)

    3. 추가 필터 조건 (objectProperties, 조건, 추가 조건 참조)

  2. 메타데이터 데이터베이스 언어로 된 직접 요청

    {
     "query": "figure fZone=polygon(0.4647676,0.3973333,0.7946027,0.5493333,0.8650675,0.7946666,0.4647676,0.7946666); figure fDir=(ellipses(-10000, -10000, 10000, 10000) -        ellipses(-0, -0, 0, 0));set r = group[obj=vmda_object] { res = or(fZone((obj.left + obj.right) / 2, obj.bottom)) }; result = r.res;"
    }

Important!

입력 JSON에 생성자와 직접 요청 섹션이 모두 포함된 경우, 직접 요청이 우선합니다. 

Important!

POST 요청의 본문이 비어 있으면, 검색은 모든 알람 인터벌을 반환합니다.

Note

offline analytics 데이터에서 검색을 수행하려면 다음 요청을 사용하세요.

POST /search/vmda/SERVER-NAME/OfflineAnalytics.c95ad5a581094845995ee28a7f097797/SourceEndpoint.vmda:AVDetector:1/past/future

이 요청은 Axxon One 아카이브가 삭제되었더라도 VMDA 메타데이터가 저장되어 있으면 수행됩니다.

객체 ID는 hosts/ 접두사 없이 지정해야 합니다.

유효한 요청: /search/vmda/SERVER-NAME/OfflineAnalytics...

유효하지 않은 요청: /search/vmda/hosts/SERVER-NAME/OfflineAnalytics...

검색 결과는 다음과 같은 JSON 응답입니다.

{
	"intervals" : [
		{
			"endTime" : "20210228T124302.313000",
			"positions" : [
				{ 
					"bottom" : 0.60026908397674561, 
					"left" : 0.42527302742004397, 
					"right" : 0.48125132560729983, 
					"top" : 0.50307014942169193 
				}
							],
			"startTime" : "20210228T124256.673000"
		},
		{
			"endTime" : "20210228T124259.513000",
			"positions" : [
				{ 
					"bottom" : 0.45109353065490726, 
					"left" : 0.41891927719116212, 
					"right" : 0.4565316200256348, 
					"top" : 0.34989043235778811 }
							],
				"startTime" : "20210228T124256.673000"
				}
					]
}

여기서 Intervals는 검색 조건이 충족된 시간 인터벌의 집합입니다.
.


추가 조건

요청 유형 및 파라미터

'익숙한 얼굴'-'낯선 얼굴' 검색 API

이 검색 유형은 인식된 모든 얼굴을 카메라 데이터베이스의 모든 얼굴과 30일 동안 비교합니다(30일보다 짧은 기간인 경우 현재 아카이브 깊이에 따라 비교됨) 그리고 이 얼굴이 카메라에 의해 인식된 날짜 수를 설정합니다. 이 검색은 지정된 기준에 따라 이 얼굴이 "익숙한 얼굴"인지 "낯선 얼굴"인지 결정합니다.

검색을 시작하려면 POST 요청을 사용합니다(검색 요청 참조). 검색 유형은 "낯선 얼굴(stranger)"으로 설정되며 요청 본문은 비어 있습니다.

다음 매개변수가 사용 가능합니다.

파라미터필수설명
accuracyNo

얼굴 유사도 수준을 [0,1] 범위 내에서 설정합니다(1은 완전 일치를 의미). 이 매개변수가 설정되지 않으면 기본값(0.9)이 사용됩니다. 비교된 얼굴이 특정 날짜에 카메라의 시야에 있었고 지정된 유사도 수준 이상으로 인식되었다면, 해당 얼굴은 그 날짜에 존재한 것으로 간주됩니다. 그렇지 않으면, 알고리즘은 이 얼굴이 그 날짜에 존재하지 않았다고 판단합니다.

Important!

정확도 매개변수 값은 요청 본문에 지정할 수도 있습니다. 이 경우, 본문에 지정된 값이 검색 라인에서 지정된 값보다 우선 적용됩니다.

thresholdNo

얼굴을 "낯선 얼굴"로 인식하기 위한 임계값을 정의합니다. 이 값은 0에서 1 사이로 설정되며, 얼굴이 "낯선 얼굴"로 간주되기 위한 결측 일수를 정의합니다: 30 - 30 * 임계값. 예를 들어, 0.8의 값은 "필요한 객체가 검색 영역 내에서 (30 - 30 * 0.8 = 6)일 이내에 나타났음을 의미합니다". 6일 이상 나타난 얼굴은 "익숙한 얼굴"로 정의되며, 그 외의 얼굴은 "낯선 얼굴"로 정의됩니다.

Important!

임계값(threshold)과 연산자(op) 매개변수는 단독으로 사용될 수 없으며 반드시 함께 사용해야 합니다. 두 매개변수 중 하나라도 설정되지 않거나 잘못된 값이 지정되면 두 매개변수 모두 무시됩니다.

opNo검색 방향을 정의합니다.
허용 가능한 값:
lt – "익숙한 얼굴" 검색 (임계값(threshold) 매개변수 기반)
gt – "낯선 얼굴" 검색

샘플 요청:

POST http://127.0.0.1:80/search/stranger/SERVER1/AVDetector.2/EventSupplier/past/future?accuracy=0.7

GET http://127.0.0.1:80/search/stranger/2e69ba76-23f1-4d07-a812-fee86e994b8e/result

샘플 응답:

{
   "events" : [
      {
         "rate" : 0.90591877698898315,
         "origin" : "hosts/SERVER1/DeviceIpint.2/SourceEndpoint.video:0:0",
         "position" : {
            "bottom" : 0.10694444444444445,
            "left" : 0.69687500000000002,
            "right" : 0.74687500000000007,
            "top" : 0.018055555555555554
         },
         "timestamp" : "20160914T085307.499000"
      },
      {
         "rate" : 0.90591877698898315,
         "origin" : "hosts/SERVER1/DeviceIpint.2/SourceEndpoint.video:0:0",
         "position" : {
            "bottom" : 0.10694444444444445,
            "left" : 0.69687500000000002,
            "right" : 0.74687500000000007,
            "top" : 0.018055555555555554
         },
         "timestamp" : "20160914T085830.392000"
      }
}
파라미터설명명
origin분석된 비디오 스트림을 가져올 카메라 채널
timestamp얼굴 인식 도구로 얼굴이 감지된 프레임의 타임스탬프
rate얼굴이 "낯선 얼굴"로 인식될 확률, [0,1] 범위의 값. 1은 완전한 낯선 얼굴을 의미합니다.
position비디오 프레임에서 얼굴을 둘러싸는 프레임 경계의 좌표

이미지에서 '익숙한 얼굴'-'낯선 얼굴' 속성 정의


검색을 시작하기 위해 사용되는 POST 요청 본문에는 검색된 얼굴의 바이너리 데이터가 JPEG 형식으로 포함되어야 합니다. 요청 자체는 두 가지 방법으로 표현될 수 있습니다:

  1. POST http://IP-Address:port/prefix/faceAppearanceRate/{DETECTORID}/{BEGINTIME}/{ENDTIME}

    DETECTORID – 엔드포인트 감지 도구의 3진 ID (자동 및 얼굴 검색의 경우 HOSTNAME/AVDetector.ID/EventSupplier, vmda의 경우  HOSTNAME/AVDetector.ID/SourceEndpoint.vmda, 검출 도구 목록 가져오기 참조).

    Note

    ENDTIME과 BEGINTIME 구문은 아카이브 내용 가져오기 섹션에 설명되어 있습니다.

  2. POST http://IP-Address:port/prefix/faceAppearanceRate/{HOSTNAME}/{BEGINTIME}/{ENDTIME}

    HOSTNAME – 서버 이름

파라미터필수설명
accuracyNo[0,1] 범위 내에서의 감지 정확도(1은 완전 일치를 의미). 이 매개변수가 설정되지 않으면 기본값(0.9)이 사용됩니다.

샘플 요청:

POST http://127.0.0.1:80/faceAppearanceRate/SERVER1/AVDetector.2/EventSupplier/past/future?accuracy=0.7

샘플 응답:

{
  "rate": 0.13333334028720856
}
파라미터설명
rate얼굴이 "낯선 얼굴"로 인식될 확률, [0,1] 범위의 값. 1은 완전한 낯선 얼굴을 의미합니다.


히트맵 API

POST http://IP-address:port/prefix/search/heatmap/{DETECTORID}/{BEGINTIME}/{ENDTIME}

DETECTORID – 엔드포인트 감지 도구의 3진 ID (자동 및 얼굴 검색의 경우 HOSTNAME/AVDetector.ID/EventSupplier, vmda의 경우 HOSTNAME/AVDetector.ID/SourceEndpoint.vmda , 검출 도구 목록 가져오기 참고).

Note

ENDTIME, BEGINTIME은 ISO 형식의 시간으로, 히트 맵 간격을 지정합니다.

ENDTIME과 BEGINTIME 구문은 아카이브 내용 가져오기 섹션에 설명되어 있습니다.

요청 본문에는 검색된 이미지의 크기가 포함될 수 있습니다.

{
 "mask_size":{
            "height":1080,
            "width":1920
            }
}

샘플 요청:

POST http://127.0.0.1:80/search/heatmap/SERVER1/AVDetector.2/SourceEndpoint.vmda/past/future

GET http://127.0.0.1:80/search/heatmap/35ff5989-42ee-4446-bfde-f91375df67d3/result

여기서 35ff5989-42ee-4446-bfde-f91375df67d3는 응답의 Location 필드에서 제공되는 GUID입니다.

샘플 응답:

Access-Control-Allow-Origin →*
Cache-Control →no-cache
Connection →Close
Location →/search/heatmap/35ff5989-42ee-4446-bfde-f91375df67d3

달력 검색 API

비디오가 녹화된 날짜의 목록 가져오기

GET http://IP Address:port/prefix/archive/calendar/{VIDEOSOURCEID}/{BEGINTIME}/{ENDTIME}

{VIDEOSOURCEID}  3부 구성의 소스 엔드포인트 ID (비디오 카메라 목록 및 정보 가져오기 참고). 예: "SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0".

Note

ENDTIME과 BEGINTIME 구문은 아카이브 내용 가져오기 섹션에 설명되어 있습니다.

파라미터필수설명
archiveNo"hosts/SERVER1/MultimediaStorage.AliceBlue/MultimediaStorage" 형식의 아카이브 이름(아카이브 내용 가져오기 참고). 값이 지정되지 않으면 기본 아카이브가 검색에 사용됩니다.

요청 예시:

GET http://127.0.0.1/archive/calendar/SERVER1/DeviceIpint.1/SourceEndpoint.video:0:0/20211028T120000/20211102T210000

응답 예시:

[
    3844368000000,
    3844454400000,
    3844540800000,
    3844627200000,
    3844713600000,
    3844800000000
]

응답은 밀리초 단위로 표현된 캘린더 날짜로 제공됩니다. 이 날짜는 1900년 1월 1일 0시 0분부터 계산됩니다. 이 예시에서는 날짜가 2021년 10월 28일부터 11월 2일까지입니다.

Content

  • No labels