POST /api/v1/async_search_phrases/find_matching_transcripts
Параметры запроса:
project_id - номер проекта
date_till - начало временного промежутка поиска (timestamp - целое число)
date_from - конец временного промежутка поиска (timestamp - целое число)
metric_filters - количественные фильтры
phrase_filters - фразовые фильтры
Пример запроса:
{
"project_id": 868017,
"date_from":1555153200,
"date_till":1555575755,
"metric_filters":[
{
"value":"3",
"label":"interjections_count_abs",
"operator":"<"
},
{
"value":["270", "210"],
"label":"operator",
"operator":"="
}],
"phrase_filters":[
{
"operator":"both_include",
"value":[],
"min_matches":2,
"vocabulary_ids":[425848,179389]
},
{
"operator":"operator_include",
"value":["Отлично", "Добрый день"],
"min_matches":1,
"vocabulary_ids":[]
}
]}
Задача ставится в очередь и в ответ на запрос приходит task_id:
{"task_id":"2a49a969-e4fa-4d5a-8b98-e1cc1edb71f6"}
metric_filters
- это список объектов, каждый из которых содержит три поля: value, label и operator.
Пример metric_filters
:
"metric_filters":[
{
"value":"3",
"label":"interjections_count_abs",
"operator":"<"
},
{
"value":["270", "210"],
"label":"operator",
"operator":"="
},
...
]
Получить список возможных фильтров:
GET /api/v1/project/{id проекта}/metrics/list
Результат:
{"metrics":[
...
{
"aggregate":["avg","max"],
"description":"",
"filter":{"choices":[],"type":"range"},
"is_lexical":false,
"label":"client_interjections_count_abs",
"name":"Клиент перебил оператора",
"parent":"Параметры речевой активности",
"rateable":true,
"relative":false,
"show_plot":true,
"show_tabl":true,
"unit":"1"
},
...
]}
Выбираем label из списка и конструируем объект metric_filters
. Если filter.type == range
, то в качестве значения поля operator можно выбрать только '<' или '>', а поля value - неотрицательные числа. А если filter.type == multiselect
, то operator - только '=', value - подсписок списка filter.choices
. В metric_filters
можно использовать только не is_lexical
метрики.
Также можно фильтровать по номеру клиента ("label":"client"
) для этого искомые номера необходимо перечислить в списке value, а operator задать как '='.