| Section |
|---|
| Column |
|---|
|
| Panel |
|---|
| borderColor | #CCCCCC |
|---|
| bgColor | #FFFFFF |
|---|
| titleBGColor | #F0F0F0 |
|---|
| borderStyle | solid |
|---|
| title | На странице: |
|---|
| |
|
|
Получение всех событий за заданный интервал
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadEvents",
"data": {
"range": {
"begin_time": "20200225T125548.340",
"end_time": "20200225T130548.341"
},
"limit": 30,
"offset": 0,
"descending": false
}
} |
где:
- descending – сортировка событий: если = false, то события будут отсортированы по возрастанию времени. Если true, то по убыванию.
- limit – максимальное количество событий в ответе.
Получение событий по фильтру
В качестве фильтра могут быть заданы следующие параметры:
- type – тип события, актуальные типы событий приведены в файле ITV\bl\events.proto;
- subjects
– субъект - – источник события (сервер, устройство, архив, детектор и т.д.);
- values – точное значение события;
- texts – неполное описание события.
Получение событий об изменении статуса конкретной камеры
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadEvents",
"data": {
"range": {
"begin_time": "20200225T152806.572",
"end_time": "20200225T153806.572"
},
"filters": {
"filters": [
{
"type": "ET_IpDeviceStateChangedEvent",
"subjects": "hosts/Server1/DeviceIpint.10"
}
]
},
"limit": 300,
"offset": 0,
"descending": false
}
} |
Получение событий об отключении всех камер
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadEvents",
"data": {
"range": {
"begin_time": "20200226T074425.274",
"end_time": "20200226T075425.274"
},
"filters": {
"filters": [
{
"type": "ET_IpDeviceStateChangedEvent",
"values": "IPDS_DISCONNECTED"
}
]
},
"limit": 300,
"offset": 0,
"descending": false
}
} |
Получение событий по всем детекторам распознавания номеров домена
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadEvents",
"data": {
"range": {
"begin_time": "20211020T120000.000",
"end_time": "20211020T200000.000"
},
"filters": {
"filters": [
{
"type": "ET_DetectorEvent",
"values": "DG_LPR_DETECTOR"
}
]
},
"limit": 10000,
"descending": true
}
} |
Поиск по тексту в событии
В фильтре задается субъект и текст события.
Поиск по конкретной камере всех событий, в которых есть слово FOOD (лимит в 10 событий)
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadTextEvents",
"data": {
"range": {
"begin_time": "20231030T014305.137",
"end_time": "20231030T232305.137"
},
"filters": {
"filters": [
{
"subjects": "hosts/Server/DeviceIpint.7/SourceEndpoint.video:0:0",
"filter_containing_text_parts": false,
"texts": "FOOD"
}
]
},
"limit":10,
"offset":0,
"descending": false
}
} |
где:
- range – период времени, за который будут приходить события от источника событий;
- subjects
– субъект - – источник события (сервер, устройство, архив, детектор и т.д.);
- filter_containing_text_parts – логическое значение: если = true, товозвращает только строку с искомым текстом, указанным в texts. Если = false, товозвращает весь чек с текстом, указанным в texts;
- limit – максимальное количество событий в ответе;
- descending – сортировка событий: если = false, то события будут отсортированы по возрастанию времени. Если true, то по убыванию.
Получение всех тревог
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadAlerts",
"data": {
"range": {
"begin_time": "20200225T150142.437",
"end_time": "20200225T151142.437"
},
"limit":100,
"offset":0,
"descending": false
}
} |
| Info |
|---|
|
Если для тревоги был задан комментарий оператора, то он будет в ответе вместе с координатами рамки. |
Получение тревог по фильтру
Начало тревог по конкретной камере
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadAlerts",
"data": {
"range": {
"begin_time": "20200225T150845.757",
"end_time": "20200225T151845.758"
},
"filters": {
"filters": [
{
"subjects": "hosts/Server1/DeviceIpint.7/SourceEndpoint.video:0:0",
"values": "BEGAN"
}
]
},
"limit":100,
"offset":0,
"descending": false
}
} |
Поиск событий детектора распознавания номеров
Поиск конкретного номера
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadLprEvents",
"data": {
"range": {
"begin_time": "20200226T104305.137",
"end_time": "20200226T105305.137"
},
"filters": {
"filters": [
{
"subjects": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0",
"values":"Н829МУ777"
}
]
},
"limit":50,
"offset":0,
"descending": false
}
} |
Поиск по части номера
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.EventHistoryService.ReadLprEvents",
"data": {
"range": {
"begin_time": "20200226T104305.137",
"end_time": "20200226T105305.137"
},
"filters": {
"filters": [
{
"subjects": "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0"
}
]
},
"limit":50,
"offset":0,
"search_predicate":"*82*",
"descending": false
}
} |
Подписка на получение событий
При подписке уведомления приходят по мере появления событий.
Подписка на получение событий детекторов распознавания номеров
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.DomainNotifier.PullEvents",
"data": {
"subscription_id": "a003ed13-3b8f-4cef-a450-0199dc259h35",
"filters": {
"include": [{
"event_type":"ET_DetectorEvent",
"subject":"hosts/Server1/AVDetector.1/EventSupplier"
},
{
"event_type":"ET_DetectorEvent",
"subject":"hosts/Server1/AVDetector.2/EventSupplier"
},
{
"event_type":"ET_DetectorEvent",
"subject":"hosts/Server2/AVDetector.1/EventSupplier"
}
]
}
}
} |
где:
- subscription_id − id подписки (задается произвольно в формате UUID; обязательный параметр);
- event_type − тип события (необязательный параметр). Список доступных типов событий находится в файле Events.proto в перечислении EEventType.
- subject
− субъект - −источник события (в данном примере детекторы; необязательный параметр).
Для получения событий при помощи подписки необходимо:
- Выполнить запрос с методом PullEvents, который открывает канал для передачи событий. События будут поступать в этот канал по мере их возникновения. Канал остается активным до тех пор, пока не будет выполнен запрос с методом DisconnectEventChannel, закрывающий его.
Тело запроса с методом DisconnectEventChannel:
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.DomainNotifier.DisconnectEventChannel",
"data": {
"subscription_id": "a003ed13-3b8f-4cef-a450-0199dc259h35"
}
} |
| Info |
|---|
|
Значение поля subscription_id в запросах не должно различаться. |
Подписка на получение количества объектов, подсчитанных нейросчетчиком
Перед вызовом данного метода необходимо выполнить авторизацию с помощью Bearer токена (см. Bearer авторизация). В ответе будут получены пара значений token_name и token_value. Полученный токен необходимо использовать в метаданных gRPC-запроса.
| Info |
|---|
|
- Срок жизни токена – 4 часа.
- По истечении срока действия токен необходимо обновить.
|
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.DomainNotifier.PullEvents",
"data": {
"subscription_id": "a003ed13-3b8f-4cef-a450-0199dc259h35",
"filters": {
"include": {
"event_type": "ET_DetectorEvent",
"subject" : "hosts/Server/DeviceIpint.1/SourceEndpoint.video:0:0"
}
}
}
} |
где:
- subscription_id − id подписки (задается произвольно в формате UUID; обязательный параметр);
- event_type − тип события (необязательный параметр);
- subject −
субъект - источник события (
в данном примере - например, камера; необязательный параметр).
В ответе придет событие, в полях которого будет содержаться информация о количестве подсчитанных объектов:
| Code Block |
|---|
"details": [
{
"lots_objects": {
"object_count": 3
}
}
], |
где:
- object_count − количество объектов, подсчитанных нейросчетчиком.
Подписка на получение событий о состоянии объектов
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.DomainNotifier.PullEvents",
"data": {
"subscription_id": "a003ed13-3b8f-4cef-a450-0199dc259h35",
"filters": {
"include": {
"event_type": "ET_ObjectActivatedEvent",
"subject": ""
}
}
}
} |
где:
- subscription_id − id подписки (задается произвольно в формате UUID; обязательный параметр);
- event_type − тип события (необязательный параметр);
- subject
− субъект - −источник события (необязательный параметр).
В ответе придет событие, в полях которого будет информация о состоянии объектов за всё время с момента их добавления в систему:
| Code Block |
|---|
{
"event_type": "ET_ObjectActivatedEvent",
"subject": "",
"body": {
"@type": "type.googleapis.com/axxonsoft.bl.events.ObjectActivatedEvent",
"guid": "88c930c5-89a7-4382-a004-119a8ea56c78",
"is_activated": true,
"timestamp": "20221003T065757.170118",
"object_id_ext": {
"access_point": "hosts/Server/DeviceIpint.1/SourceEndpoint.audio:0",
"friendly_name": "Camera"
}, |
где:
- is_activated − состояние объекта (активирован или нет).
Подписка на получение событий от источника событий (POS-устройства)
| Code Block |
|---|
{
"method": "axxonsoft.bl.events.DomainNotifier.PullEvents",
"data": {
"subscription_id": "a003ed13-3b8f-4cef-a450-0199dc259h35",
"filters": {
"include": [{
"event_type":"ET_TextEvent",
"subject":"hosts/Server/DeviceIpint.7/SourceEndpoint.video:0:0"
}
]
}
}
} |
где:
- subscription_id − id подписки (задается произвольно в формате UUID; обязательный параметр);
- event_type − тип события (необязательный параметр);
- subject
− субъект - −источник события (необязательный параметр).