Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

GET http://IP-адрес:порт/префикс/archive/events/detectors/{ENDTIME}/{BEGINTIME} получение сработок событий от детекторов со всех Серверов домена.

Note
titleВнимание!
  • Синтаксис ENDTIME и BEGINTIME описан в разделе Получение содержания архивов.
  • Если в запросе ENDTIME < BEGINTIME, то события в ответе будут отсортированы по возрастанию времени. 
  • Если ENDTIME > BEGINTIME, то сортировка будет по убыванию.

GET http://IP-адрес:порт/префикс/archive/events/detectors/{HOSTNAME}/{ENDTIME}/{BEGINTIME} получение сработок получение событий от детекторов с конкретного Сервера.

Tip

{HOSTNAME} имя Сервера (см. Получение списка Серверов).

GET http://IP-адрес:порт/префикс/archive/events/detectors/{VIDEOSOURCEID}/{ENDTIME}/{BEGINTIME} получение сработок событий от детекторов с конкретной видеокамеры.

Tip

{VIDEOSOURCEID} трехкомпонентный идентификатор endpoint-а источника (см. Получение списка видеокамер камер и информации о них). Например, "SERVER1/DeviceIpint.3/SourceEndpoint.video:0:0".

ПараметрОбязательныйОписание
limitНетЛимит сработок событий от детекторов в ответе. Если не задан, по умолчанию 100.
offsetНетСмещение результатов выдачи на заданное число. Например, если запрос с offset=0 вернул 100 результатов, то для получения следующих необходимо выполнить запрос с offset=100. Если на второй запрос было возвращено 250 результатов, то для получения следующих требуется задать в запросе offset=350 и т.д.
typeНет

Получение сработок событий от конкретного детектора. Список значений параметра type приведен ниже в таблице.

Если необходимо получить сработки события от нескольких детекторов, их необходимо перечислить через запятую.

joinНет
  • Если join=1, то в ответ будет выполняться склейка двухфазных событий и возвращаться параметр duration – длительность события
.
  • Если join=0, то в ответе двухфазные события не будут склеиваться
.
limit_to_archiveНет

Если limit_to_archive=1, то ответ вернет события только из доступной части архива (см. Настройка ограничения доступности архива).

archiveНет

Имя архива из запроса получения списка архивов (см. Получение содержания архивов).

detectorНет

Получение сработок событий от конкретного детектора. Список значений параметра detector приведен ниже в таблице.

Примеры запросов:

  • http://127.0.0.1:80/archive/events/detectors/Server1/DeviceIpint.2/SourceEndpoint.video:0:0/past/future?limit=10&offset=0 – получить
  • сработки
  • события по указанной видеокамере, отсортированные по убыванию. Максимальное количество – 10.
  • http://127.0.0.1:80/archive/events/detectors/Server1/past/future?limit=5&offset=0 – получить
  • сработки
  • события от всех детекторов с Server1. Максимальное количество по каждому детектору – 5.
  • http://127.0.0.1:80/archive/events/detectors/Server1/past/future?limit=5&offset=0&type=Ray – получить
  • сработки
  • события всех лучей с Server1. Максимальное количество по каждому лучу – 5.
  • http://127.0.0.1:80/archive/events/detectors/A-ZHUKOV/DeviceIpint.1/SourceEndpoint.video:0:0/future/past?limit=100&detector=hosts/Server1/AVDetector.1/EventSupplier – получить
  • сработки
  • события от конкретного детектора с Server1. 
  • http://root:root@127.0.0.1:80/archive/events/detectors/Server1/DeviceIpint.1/SourceEndpoint.video:0:0/20230323T112000.000/20230430T210000.000?limit=100&offset=0&type=listed_face_detected,MotionDetected – получить
  • сработки о
  • события от нескольких детекторов с Server1. Детекторы необходимо перечислить через запятую.
  • http://127.0.0.1:80/archive/events/detectors/past/future?limit=1&type=Ray – получить текущее состояние всех лучей домена.
Note
titleВнимание!

Рекомендуется использовать параметр past/future только в первом запросе. Затем следует получить timestamp самой последней записи и использовать его для запрашивания последующих записей. Использование параметра past/future вместе с параметрами limit и offset в последующих запросах может привести к возникновению дубликатов записей.

Примеры ответа:

Expand

1) join=1

Code Block
{
 "events": [
  {
   "duration": "000000.467000",
   "id": "09b8729a-a6fc-4ffa-8a83-aebc5c19d171",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [
    {
     "bottom": "0.20831976890563964",
     "index": "0",
     "left": "0.57320795059204099",
     "right": "0.6804207420349121",
     "top": "0.09125151634216308"
    }
   ],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T112815.527000",
   "type": "moveInZone"
  },
  {
   "duration": "000004.154000",
   "id": "90c5d09e-c0bb-4c49-bf8b-22d3afffe8c1",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [
    {
     "bottom": "0.72451157569885249",
     "index": "0",
     "left": "0.092941055297851571",
     "right": "0.24284084320068361",
     "top": "0.4965816402435303"
    }
   ],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T112814.426000",
   "type": "moveInZone"
  },
  {
   "duration": "000005.155000",
   "id": "dc953fad-bb08-4bae-bdce-62a09ab2dbd9",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [
    {
     "bottom": "0.37916545867919921",
     "index": "0",
     "left": "0.10621988296508789",
     "right": "0.2311831474304199",
     "top": "0.11115360260009766"
    }
   ],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T112814.293000",
   "type": "moveInZone"
  },
  {
   "duration": "000003.170000",
   "id": "f00875f0-bad7-4e74-879c-0a564baa9d36",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [
    {
     "bottom": "0.2848846626281738",
     "index": "0",
     "left": "0.11811468601226806",
     "right": "0.18662774562835693",
     "top": "0.11245393753051756"
    }
   ],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T112813.358000",
   "type": "moveInZone"
  }
 ],
 "more": true
}

2) join=0

Code Block
{
 "events": [
  {
   "alertState": "ended",
   "id": "cd3571bb-73c1-45cb-8965-a01e167836db",
   "multiPhaseSyncId": "6d72973d-7188-4fa7-9bf9-e3ba6013f2e3",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125142.417000",
   "type": "moveInZone"
  },
  {
   "alertState": "began",
   "id": "310ce582-5f0d-4c27-a1d5-b14ccc5a877d",
   "multiPhaseSyncId": "6d72973d-7188-4fa7-9bf9-e3ba6013f2e3",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [
    {
     "bottom": "0.46943313598632813",
     "index": "0",
     "left": "0.14642228603363036",
     "right": "0.23025640964508054",
     "top": "0.027766456604003897"
    }
   ],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125142.200000",
   "type": "moveInZone"
  },
  {
   "alertState": "began",
   "id": "aa193bbc-89e8-4204-8805-ac8c915b323c",
   "multiPhaseSyncId": "807248bf-4cee-431e-a29f-18ee0ed911ce",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [
    {
     "bottom": "0.36835212707519532",
     "index": "0",
     "left": "0.072501201629638662",
     "right": "0.19335731506347656",
     "top": "0.03212909698486327"
    }
   ],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125141.966000",
   "type": "moveInZone"
  },
  {
   "alertState": "ended",
   "id": "5b15234d-2a7f-415f-af57-2ac1ce5aa75a",
   "multiPhaseSyncId": "17fca913-f7a3-4f29-997f-d02a575d9fc4",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125136.978000",
   "type": "moveInZone"
  },
  {
   "alertState": "ended",
   "id": "48882f92-a809-424c-b7a7-55ac56b05061",
   "multiPhaseSyncId": "8bb9edbe-4391-4c26-8c7a-7faf620a62eb",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125136.661000",
   "type": "moveInZone"
  },
  {
   "alertState": "ended",
   "id": "6e98f979-c4f4-4c78-bbf4-6fc268219d79",
   "multiPhaseSyncId": "92534e2f-0f88-4698-a1a2-4e70d10cb00a",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125136.477000",
   "type": "moveInZone"
  },
  {
   "alertState": "ended",
   "id": "c9dff8bc-423b-414b-8dee-0a0b119a43df",
   "multiPhaseSyncId": "c8785151-f344-4c21-88de-6c339139afdf",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125135.843000",
   "type": "moveInZone"
  },
  {
   "alertState": "ended",
   "id": "db1f1147-ed50-46ff-84b7-8f06676d8f8e",
   "multiPhaseSyncId": "7eceb0b4-c04d-4e17-a405-3aff419fd94a",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125135.677000",
   "type": "moveInZone"
  },
  {
   "alertState": "began",
   "id": "f9ccceda-9e16-4832-9f1f-1270fd0be365",
   "multiPhaseSyncId": "17fca913-f7a3-4f29-997f-d02a575d9fc4",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [
    {
     "bottom": "0.30296741485595702",
     "index": "0",
     "left": "0.14849423646926879",
     "right": "0.21262614011764525",
     "top": "0.092105445861816404"
    }
   ],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125135.677000",
   "type": "moveInZone"
  },
  {
   "alertState": "began",
   "id": "87ca4e1e-4a8c-433a-8b67-6e73f65fa0e2",
   "multiPhaseSyncId": "7eceb0b4-c04d-4e17-a405-3aff419fd94a",
   "origin": "hosts/Server1/AppDataDetector.1/EventSupplier",
   "rectangles": [
    {
     "bottom": "0.22597263336181642",
     "index": "0",
     "left": "0.080717468261718744",
     "right": "0.19577339172363281",
     "top": "0.014194698333740235"
    }
   ],
   "source": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
   "timestamp": "20190618T125134.909000",
   "type": "moveInZone"
  }
 ],
 "more": true
}


Note
titleВнимание!

По умолчанию таймаут запроса – 10 секунд.

Если Сервер за 10 секунд не успеет вернуть все события (количество задается параметром limit), ответ будет следующим:

Code Block
{
 "events": [],
 "more": false
}

В этом случае необходимо повторить запрос и уменьшить значение параметра limit.

Info
titleПримечание

Параметр multiPhaseSyncId будет в ответе только для двухфазных тревог с параметром alertState.

Поле timestamp не уникальное, поэтому может понадобиться пропуск уже полученных ранее срабатываний событий от детекторов от начала интервала поиска.

При запросе сработок событий от детектора очереди в ответе будет дополнительный параметр extra, который будет содержать оценку длины очереди, выраженной минимальным и максимальным значением.

Code Block
  {
   "alertState": "happened",
   "extra": [
    {
     "queueMax": "4"
    },
    {
     "queueMin": "4"
    }
   ],
   "id": "b17129b2-1588-794b-94f6-d078a226efb2",
   "origin": "hosts/Server1/AVDetector.4/EventSupplier",
   "rectangles": [],
   "source": "hosts/Server1/DeviceIpint.2/SourceEndpoint.video:0:0",
   "timestamp": "20181206T075621.621000",
   "type": "QueueDetected"
  }
}

При запросе сработок детектора событий от детекторов распознавания номеров в ответе будет дополнительный параметр plate, который будет содержать распознанный номер транспортного средства в формате Unicode.

Code Block
{
			"alertState" : "happened",
			"id" : "f1f334a3-3fb3-4770-80bf-c6519240b5cf",
			"origin" : "hosts/Server1/AVDetector.1/EventSupplier",
			"plate" : "\u0412427\u0412\u041c99",
			"rectangles" : 
			[
				{
					"bottom" : 0.70833333333333337,
					"index" : 0,
					"left" : 0.4597222222222222,
					"right" : 0.67222222222222228,
					"top" : 0.64409722222222221
				}
			],
			"source" : "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
			"timestamp" : "20230725T140945.208000",
			"type" : "plateRecognized"
		}

Возможные значения параметра type:

Детекторtype
Трекер объектов или Нейротрекер-
Пересечение линииoneLine
Движение в областиmoveInZone
Остановка в областиstopInZone
Вход в областьcomeInZone
Выход из областиoutOfZone
Длительное пребывание в областиlongInZone
Множество объектовlostObject
Детектор распознавания номеровplateRecognized
Детектор распознавания номеров (распознавание номера из списка)listed_lpr_detected
Детектор лицfaceAppeared
Детектор лиц (распознавание лица из списка)listed_face_detected
Подсчет посетителейPeopleIn, PeopleOut
Детектор очередиQueueDetected
Детектор огняFireDetected
Детектор дымаSmokeDetected
НейросчетчикlotsObjects
Изменение положенияSceneChangeDetected
Деградация качестваCameraBlindDetected
Детектор зашумления изображенияImageDegradation
Детектор размытого изображенияBlurredDegradation
Детектор артефактов сжатияCompressedDegradation
Детектор движенияMotionDetected
Отсутствие звукаNullAudio
Детектор сигналаSignalAudio
Детектор шума

NoiseAudio

Детектор позы-
Детектор лежащего человекаrecumbent
Детектор сидящего человекаsitDown
Детектор поднятых рукhandsUp
Детектор стрелкаactiveShooter
Детектор уровня водыLevelOut
Детектор держания за порученьhandRail
Счетчик людейlotsObjects
Детектор близко стоящих людейpeopleDistance
Маскирование людейenabledMaskEvents

Возможные значения параметра detector:

detectorДетектор
SceneDescriptionТрекер объектов или Нейротрекер
CrossOneLineПересечение линии
moveInZoneДвижение в области
StopInZoneОстановка в области
ComeInZoneВход в область
OutOfZoneВыход из области
LongInZoneДлительное пребывание в области
lostObjectМножество объектов
LprDetectorДетектор распознавания номеров
TvaFaceDetectorДетектор лиц
PeopleCounterПодсчет посетителей
QueueDetectorДетектор очереди
FireDetectorДетектор огня
SmokeDetectorДетектор дыма
NeuroCounterНейросчетчик
SceneChangeИзменение положения
QualityDegradationДеградация качества
QualityDegradation_v2Детектор зашумления изображения
BlurredDegradationДетектор размытого изображения
CompressedDegradationДетектор артефактов сжатия
MotionDetectionДетектор движения
NullAudioDetectionОтсутствие звука
SignalAudioDetectionДетектор сигнала
NoiseAudioDetectionДетектор шума
PoseDetectorДетектор позы
RecumbentDetectorДетектор лежащего человека
SitDownDetectorДетектор сидящего человека
HandsUpDetectorДетектор поднятых рук
ActiveShooterDetectorДетектор стрелка
WaterLevelDetectorДетектор уровня воды
HandRailDetectorДетектор держания за поручень
PeopleCountDetectorBySkeletonСчетчик людей
PeopleDistanceDetectorДетектор близко стоящих людей
PoseMaskingDetectorМаскирование людей
Note
titleВнимание!
  • Не гарантируется регистрозависимость типов сработок событий от детекторов. Например, значения 'значения ComeInZone', ' comeInZone', ' COMEINZOne' следует рассматривать как одинаковые.
  • Если было получено значение, не входящее в указанный список, значит это сработка событие от встроенного детектора.