Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 9 Next »


get_fact-set

Структура URL-запроса get_fact-set определяется форматом:

GET /api/v1/post/<post-uuid>/channel/<channel-no>/fact\
    ?order=<order>
    &limit=<limit>

где

  • <post-uuid> :: char[37]  глобальный идентификатор поста; 
  • <channel-no> :: int32_t  номер канала поста
  • <limit> :: uint16_t   максимальное количество событий в ответе (возможные значения в интервале [1;1000], по умолчанию  10); 
  • <order> :: char[]  порядок загрузки событий относительно курсора чтения.

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

  1. "asc". В прямом хронологическом порядке фиксации изображений и записи события в архив. По умолчанию начальное положение курсора чтения определяется событием с наименьшей отметкой времени. В теле ответа события упорядочены по возрастанию #/Id.

  2. "desc" (по умолчанию). В обратном хронологическом порядке фиксации изображений события. По умолчанию начальное положение курсора чтения определяется событием с наибольшей отметкой времени. В теле ответа события упорядочены по убыванию #/Id.

  3. "db". В прямом хронологическом порядке записи событий Fact в архив.

  4. "dbrev". В обратном хронологическом порядке записи событий Fact в архив.


Клиентам рекомендуется задавать значение URL-параметра limit. У сервера может быть свое значение для этого ограничения, меньшее, чем запросил клиент. В этом случае сервер вернет ошибку. Соответственно, если клиент запросил лимит и сервер успешно вернул число записей, меньшее, чем было запрошено, — это значит, что были получены все имеющиеся записи, удовлетворяющие критерию поиска.

get_fact-set2

Структура URL-запроса get_fact-set2 определяется форматом:

GET /api/v1/post/<post-guid>/channel/<channel-no>/fact\
    ?startId=<start-fact-id>\
    &order=<order>\
    &limit=<limit>

где

  • <start-fact-id> :: int64_t  начальное положение курсора чтения. Задается локальным идентификатором события Fact#Id. Тело ответа содержит событие, на которое указывает курсор, если это событие присутствует в архиве.

get_fact-set3

Структура URL-запроса get_fact-set3 определяется форматом:
GET /api/v1/fact/post/<post-guid>/channel/<channel-no>\
    ?startGuid=<start-fact-guid>
    &order=<order>
    &limit=<limit>

где  

  • <start-fact-guid> :: char[37]  начальное положения курсора чтения. Задается глобальным идентификатором события Fact#Guid. Тело ответа содержит событие, на которое указывает курсор, если это событие присутствует в архиве.



Если структура url-запроса get-fact-set, get-fact-set2 или get-fact-set3 соответствует требованиям, сервер после успешной обработки возвращает ответ с http-кодом 200. Тело ответа содержит application/json-документ с параметрами:

  1. "status" :: uint16_t. Содержит 200.

  2. "result" :: struct[]. Массив. Каждый элемент содержит параметры одного события Fact.

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

--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: application/json
Content-Disposition: form-data; name="facts"

[{"Plate":{"Exact_rect":[8.59107e-3,0.550856999999999,4.16667e-2,0.558856999999999],"Text":"АА4527ОС","Country":804,"Validity":79,"Type":1},"Image":"1450715219089099","Direction":"approaching","AlarmTypes":[],"Bestts":1450715219051840,"Guid":"f3e07024-3e9d-464f-baa4-d31291e14903","Speed":1,"SpeedLimit":60,"Id":1450715219089099,"Geodata":{"latitude":50.43756,"speed":null,"altitude":null,"longitude":30.45221}},{"Plate":{"Exact_rect":[0.435996999999999,0.488,0.465205999999999,0.494286],"Text":"АА0669ОЕ","Country":804,"Validity":72,"Type":1},"Image":"1450715223089098","Direction":"receding","AlarmTypes":[],"Bestts":1450715223011871,"Guid":"e9877e1f-4d5b-41aa-a4b2-84422d9b0e2f","Speed":56,"SpeedLimit":60,"Id":1450715223089098,"Geodata":{"latitude":50.43756,"speed":null,"altitude":null,"longitude":30.45221}}]
--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: image/jpeg
Content-Disposition: form-data; name="f3e07024-3e9d-464f-baa4-d31291e14903"; filename="image.plate"

(JPEG DATA)
--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: application/json
Content-Disposition: form-data; name="f3e07024-3e9d-464f-baa4-d31291e14903"; filename="meta.plate"

{"transform":{"a":30.233766233766232,"d":125,"b":0.0,"x":-0.2597402597402597,"c":0.0,"y":-68.78571428571429},"size":[134,30]}
--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: image/jpeg
Content-Disposition: form-data; name="f3e07024-3e9d-464f-baa4-d31291e14903"; filename="image.body"

(JPEG DATA)
--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: application/json
Content-Disposition: form-data; name="f3e07024-3e9d-464f-baa4-d31291e14903"; filename="meta.body"

{"transform":{"a":5.049891540130152,"d":5.057803468208093,"b":0.0,"x":0.0,"c":0.0,"y":-2.3034682080924855},"size":[220,165]}
--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: image/jpeg
Content-Disposition: form-data; name="e9877e1f-4d5b-41aa-a4b2-84422d9b0e2f"; filename="image.plate"

--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: application/json
Content-Disposition: form-data; name="e9877e1f-4d5b-41aa-a4b2-84422d9b0e2f"; filename="meta.plate"

{"transform":{"a":34.74626865671642,"d":159.0909090909091,"b":0.0,"x":-15.149253731343284,"c":0.0,"y":-77.63636363636364},"size":[134,30]}
--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: image/jpeg
Content-Disposition: form-data; name="e9877e1f-4d5b-41aa-a4b2-84422d9b0e2f"; filename="image.body"

(JPEG DATA)
--4tfwup9md5utg2ok45s9g28smfygsarq
Content-Type: application/json
Content-Disposition: form-data; name="e9877e1f-4d5b-41aa-a4b2-84422d9b0e2f"; filename="meta.body"

{"transform":{"a":5.805486284289277,"d":5.813953488372093,"b":0.0,"x":-2.114713216957606,"c":0.0,"y":-2.355481727574751},"size":[220,165]}
--4tfwup9md5utg2ok45s9g28smfygsarq--



  • No labels