Запрос событий Fact по заданному критерию поиска

Структура url-запроса get-fact-search определяется форматом:

GET /api/v1/post/<post-guid>/channel/<channel-no>/\
factattrget/?plate=<plate>&distance=<distance>\
&fromts=<from-ts>&tots=<to-ts>\
&limit=<limit>&order=<order>\
&alarmtype=<alarm-type-1>&..&alarmtype=<alarm-type-N>

где

  • <post-guid>  guid поста; 
  • <channel-no>  номер канала поста (возможны значения в интервале [0; 2147483647]);
  • <plate> — текстовое выражение для поиска номера (в кодировке UTF8);
  • <distance>  макс. расстояние Левенштейна (мин. значение 0, по умолчанию  0);
  • <from-ts>  начальное время (мкс от 01.01.1970 00:00 UTC) поиска, или null; значение null интерпретируется как время первого события в архиве на момент обработки запроса; мин. значение 0; по умолчанию null;

  • <limit> — опциональный параметр; задает ограничение на количество событий в теле ответа;

  • <to-ts>  конечное время (мкс от 01.01.1970 00:00 UTC) поиска, или null; значение null интерпретируется как время последнего события в архиве на момент обработки запроса; мин. значение 0; по умолчанию null;

  • <order> — опциональный параметр; задает порядок сортировки событий в теле ответа;

  • <alarm-type-1>..<alarm-type-N>  опциональный набор параметров; задает ограничение на разрешенные типы тревог в теле ответа; возможные значения определяются запросом AlarmSet.

Значение параметра <plate> может представлять собой (в порядке убывания приоритета):

  1. строку для точного совпадения (не содержит спец. символов regex);

    1. строку для сравнения по расстоянию Левенштейна (при distance > 0);

  2. маску — строка, в которой из спец. символов встречается только * (1 или более);

  3. регулярное выражение — строка, в которой встречаются спец. символы regex.

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

  1. asc (по умолчанию). В порядке возрастания параметра Bestts события Fact;

  2. desc. В порядке убывания параметра Bestts события Fact.


Если структура url-запроса get-fact-search соответствует требованиям, сервер, после успешной обработки, возвращает ответ с http-кодом 200. Тело ответа содержит application/json-документ с параметрами:
  1. "status" <uint16_t>. Содержит 200.

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