Перевести тред

Используйте этот метод для того, чтобы перевести тред от одного агента другому агенту или в очередь распределения.

Разрешения

----
Permissions:INTEGRATOR,OPERATOR,SUPERVISOR,BOT
----

Пример curl

$ curl 'http://localhost:8080/api/v1/threads/2/transfer' -i -X PUT \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <integrator_token>' \
    -d '{
  "transferMode" : "TO_FREE_SLOT",
  "userIds" : [ 1 ],
  "skillIds" : null,
  "unitIds" : null,
  "comment" : "comment"
}'

/api/v1/threads/{threadId}/transfer

ПараметрОписание
threadIdВнутренний идентификатор треда в edna Chat Center

Пример HTTP запроса

PUT /api/v1/threads/2/transfer HTTP/1.1
Content-Type: application/json
Authorization: Bearer <integrator_token>
Content-Length: 124
Host: localhost: 8080
{
    "transferMode": "TO_FREE_SLOT",
    "userIds": [
        1
    ],
    "skillIds": null,
    "unitIds": null,
    "comment": "comment"
}

Поля тела запроса

ПараметрТипОписание
transferModestring (enum)Один из следующих способов распределения:

TO_FREE_SLOT — Система пытается найти агентов с пустыми слотами. Если не находит — ошибка.

TO_READY_OPERATOR — Сперва система пытается найти агентов с пустыми слотами. Если система не находит такого агента, она попытается найти агента в статусе Ready и использовать его дополнительный слот (если разрешено). Если система не находит агента в статусе Ready — ошибка. Тред переводится в маршрутизацию, если система не находит агента или если использование дополнительных слотов не разрешено.

TO_ROUTING — Сперва система пытается найти агентов с пустыми слотами. Если она не находит такого агента, она пытается найти агента в статусе Ready и использовать его дополнительный слот (если разрешено). Тред переводится в маршрутизацию, если система не находит агента или если использование дополнительных слотов не разрешено.
userIdsarray of longs (необязательно) *Список ID агентов, на которых вы хотите перевести тред.
skillIdsarray of longs (необязательно) *Список ID навыков агентов, на которых вы хотите перевести тред.
unitIdsarray of longs (необязательно) *Список ID отделов, куда вы хотите перевести тред.
commentstring (необязательно)Дополнительная информация о трансфере, которую вы хотите передать агенту.

* Необходимо предоставить один из следующих параметров: userIdsskillIds, or unitIds.

Пример HTTP ответа

HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
Content-Length: 176
{
    "id": 2,
    "type": "NORMAL",
    "operator": {
        "id": 1,
        "name": null,
        "alias": null,
        "role": null,
        "maxThreads": null,
        "photoUrl": null
    }
}

Поля тела ответа

ПараметрТипОписание
idlongУникальный идентификатор треда в {edna}
clientobjectОбъект, описывающий клиента, который инициировал тред
statestring (enum)Состояние треда
channelstring (enum)Тип канала клиента
startTimedateДата и время создания треда
stateChangeTimedateДата и время последней смены состояния треда
lastMessageTimedateДата и время получения последнего сообщения в треде
firstUnreadMessageTimedateДата и время получения первого несистемного сообщения
assignTimedateДата и время присвоения треда текущему оператору
unansweredlongКоличество неотвеченных сообщений в треде
rulestring (enum)Правило маршрутизации треда
activeTaskslongКоличество активных заданий привязанных к треду
hasMessagesFromOperatorbooleanПараметр, указывающий на существование сообщений в треде от любого оператора
hasMessagesFromCurrentOperatorbooleanПараметр, указывающий на существование сообщений в треде от оператора, которому присвоен тред
hasTagsbooleanПараметр, указывающий привязаны ли к треду теги
typestring (enum)Тип треда
operatorobjectОбъект, описывающий оператора на которого назначен тред
emailAccountobjectОбъект, описывающий почтовый аккаунт, привязанный к треду
messagesarray of objectsСписок сообщений треда
unreadlongКоличество непрочитанных сообщений в треде
tagsarray of objectsСписок тегов, привязанных к треду