В Sherlock Platform предусмотрен ряд стандартных инструментов для анализа результатов обработки диалогов. Для их работы внутри базы данных регулярно (по умолчанию – раз в сутки) рассчитываются статистические данные по обработке диалогов и времени операторов. Такие данные сохраняются в специальные статистические таблицы и доступ к ним для анализа можно получить через API Sherlock Platform или встроенные отчеты.
В данной статье описываются правила работы с методом GetRequestStatistics API Sherlock Platform. При вызове метода для получения статистики можно передать следующие параметры для определения требуемого набора данных:
Название входного параметра |
Тип поля |
Описание |
startDate |
Дата/время |
Начало и окончание периода для выборки диалогов. Считается по дате, определяемой параметром statsDateType. По умолчанию – (1) Дата создания диалога (первого сообщения клиента) |
endDate |
Дата/время |
|
externalSystemCode |
Строка |
Код внешней системы в случае наличия подключенного модуля интеграции. Если указан, то для клиента и пользователя выгружаются идентификаторы во внешней системе при их наличии |
statsDateType |
Перечисление |
1 - Дата создания диалога (первого сообщения клиента) 2 - Дата закрытия диалога 3 - Дата обновления статистики диалога |
includeOpen |
Логическое |
Если да, то в выборку включаются диалоги, которые еще не были закрыты |
includeMessageHistory |
Логическое |
Если да, то для диалогов включается еще и история сообщений. |
Результатом метода является список, включающий следующие реквизиты:
Название |
Тип поля |
Описание |
requestID |
Guid |
Уникальный идентификатор диалога |
userID |
Guid |
Ответственный оператор |
ownerId, externalUserID |
Строка |
Внешний код оператора. Заполняется, если в сервис передано значение ExternalSystemCode |
clientID |
Guid |
Уникальный идентификатор клиента |
externalClientID |
Строка |
Внешний код клиента. Заполняется, если в сервис передано значение ExternalSystemCode |
channelType |
Строка |
Код типа канала обращения клиента. Например, Viber. |
actualStart, clientFirstMessageDate |
Дата/время в формате UTC |
Дата и время первого сообщения клиента (создания диалога). |
dialogWorkingDate |
Дата/время в формате UTC |
Дата и время начала диалога с учетом смещения к рабочему времени |
operatorAssignedDate |
Дата/время в формате UTC |
Дата и время назначения оператора |
queueWaitingTime |
Целое число |
Время ожидания в очереди, секунд |
queueWaitingWorkingTime |
Целое число |
Время ожидания в очереди в рабочее время, секунд |
operatorFirstMessageDate |
Дата/время в формате UTC |
Дата и время первого сообщения оператора. |
operatorReactionTime |
Целое число |
Время реакции оператора (с назначения оператора), секунд |
answerDelay, firstAnswerTime |
Целое число |
Время ожидания первого ответа, секунд |
averageOperatorAnswerTime |
Целое число |
Средняя время ответа оператора, секунд |
averageClientAnswerTime |
Целое число |
Средняя время ожидания первого ответа клиентом, секунд |
actualEnd, lastMessageDate |
Дата/время в формате UTC |
Дата и время последнего сообщения в диалоге. |
totalDialogTime |
Целое число |
Длительность диалога, секунд |
totalDialogWorkingTime |
Целое число |
Длительность диалога в рабочее время, секунд |
totalDialogActiveTime |
Целое число |
Активная длительность диалога (за вычетом пауз в диалоге), секунд |
totalOperatorTime |
Целое число |
Общее время работы оператора с диалогом, секунд |
closeDate |
Дата/время в формате UTC |
Дата и время закрытия диалога. |
qualityGrade |
Целое число |
Оценка диалога клиентом. |
messageHistory |
список |
История сообщений в формате списка json |
Пример вызова метода