...
Блок кода | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "event": "CALL_ENDED", "type": "OUTGOING", "companyId": 5, "botId": "228cc4fa-92f2-4709-94e3-7344a96a5903", "id": "80970c2c-9b30-4f33-96a6-9f37f37009e2", "externalId": "f6d1c992-09d7-11ee-a9b5-9ae97dfae6df", "taskId": "bd5ed800-a7e1-443d-afa2-4368e4f0de61", "candidateId": "c89b04c3-fc46-4ab3-ac70-ae7de8d5617c", "status": "ANSWERED", "callFrom": "79669876543", "callTo": "79991234567", "startedAt": "2023-06-13T10:49:36+00:00", "finishedAt": "2023-06-13T10:49:38+00:00", "billedAt": "2023-06-13T10:49:55+00:00", "variables": { "age": "35", "name": "Иван Иванов" "tryNumber": 0, "recordPath": "https://tcl.twin24.ai/record/aed3c3d5-b299-4443-82a3-4tfbjkd658hg/download", "humanNumber": 0, "resultNumber": 0, "tryCandidate": 0, "answeredNumber": 0, "humanCandidate": 0, "resultCandidate": 0, "answeredCandidate": 0 }, "result": { "nps": "test", "date": "Дата", "evaluation": "Оценка", "confirmation": "Подтверждение", "markers": [ "Маркер 1", "Маркер 2", "Маркер 3" ], "initialVariables": { "agecustomVariable1": "35Значение первой пользовательской переменной.", "namecustomVariable2": "Иван Иванов"Значение второй пользовательской переменной.", "phone": "79991234567", "tryNumber": 0, "recordPath": "https://tcl.twin24.ai/record/aed3c3d5-b299-4443-82a3-4tfbjkd658hg/download", "humanNumber": 0, "resultNumber": 0, "tryCandidate": 0, "answeredNumber": 0, "humanCandidate": 0, "resultCandidate": 0, "answeredCandidate": 0 }, "ключ_1": "его значение 1", "ключ_2": "его значение 2" }, "amd": "MACH", "recordPath": "/180/2023/6/13/1686653365.8627691_79992082892_180.mp3", "flow": [ { "botId": "228cc4fa-92f2-4709-94e3-7344a96a5903", "start": "2023-06-13 13:49:37.016654+03", "end": "2023-06-13 13:49:37.016654+03", "messages": [ { "text": "Привет и пока", "author": "BOT", "time": "2023-06-13 13:49:37.016654+03" } ] } ], "gmtOffset": 0, "hungUpBy": null, "duration": 2, "totalCost": 0.09, "robotCallDuration": 1, "robotCallTotalCost": 0.05, "mainCallCost": 1.45, "mainCallDiscount": 0, "mainCallDuration": 2, "mainCallTotalCost": 0.05, "autoCallCost": 0, "autoCallDiscount": 0, "autoCallDuration": 0, "autoCallTotalCost": 0, "robotCallCost": 2.5, "robotCallDiscount": 0, "transferCallCost": 0, "transferCallDiscount": 0, "transferCallDuration": 0, "transferCallTotalCost": 0.05, "clientExternalId":null, "callbackData": [] } |
...
Поле | Тип | Обязательно | Описание | Соответствие с полем из метода старой телефонии | ||||
---|---|---|---|---|---|---|---|---|
event | string | да | Тип события. Возможные значения:
| - | ||||
type | string | да | Тип звонка. Возможные значения:
| - | ||||
companyId | int | да | Идентификатор компании. | - | ||||
botId | string | да | Идентификатор сценария. | botId | ||||
id | string | да | Идентификатор вызова. | id | ||||
externalId | string | да | Переданный в запросе на инициализацию идентификатор (callId). | - | ||||
taskId | string | да | Идентификатор задания на обзвон. | taskId | ||||
candidateId | string | да | Идентификатор кандидата на обзвон | - | ||||
status | string | да | Статус вызова. Возможные значения:
| status | ||||
callFrom | string | да | Вызывающий номер. | - | ||||
callTo | string | да | Вызываемый номер. | phone | ||||
startedAt | string | да | Дата начала вызова. | startedAt | ||||
finishedAt | string | да | Дата окончания вызова. | - | ||||
billedAt | string | да | Дата билинга вызова. | - | ||||
variables | Object | да | Произвольный словарь типа ключ-значения, который был передан перед инициализацией вызова. Содержит исходные переменные. | - | ||||
| tryNumber | int | нет | Количество попыток дозвона в рамках задания на обзвон. | |||||
| recordPath | string | нет | Прямая ссылка на скачивание аудиозаписи звонка. | |||||
| humanNumber | int | нет | Количество дозвонов по номеру кандидата, где ответивший был НЕ автоответчик, считается с 0. | |||||
| resultNumber | int | нет | Количество результативных дозвонов по номеру кандидата, считается с 0. | |||||
| tryCandidate | int | нет | Количество попыток дозвона до кандидата, считается с 0. | |||||
| answeredNumber | int | нет | Количество дозвонов по номеру кандидата, считается с 0. | |||||
| humanCandidate | int | нет | Количество дозвонов до кандидата, где ответивший был НЕ автоответчик, считается с 0. | |||||
| resultCandidate | int | нет | Количество результативных дозвонов до кандидата, считается с 0. | |||||
| answeredCandidate | int | нет | Количество дозвонов до кандидата, считается с 0. | |||||
result | Object | да (может быть пустым) | Произвольный словарь типа ключ-значения. Результаты разговора робота. | results | ||||
| nps | string | нет | Информация из поля NPS в блоке Результат. | |||||
| date | string | нет | Информация из поля Дата в блоке Результат. | |||||
| evaluation | string | нет | Информация из поля Оценка в блоке Результат. | |||||
| confirmation | string | нет | Информация из поля Подтверждение в блоке Результат. | |||||
| markers | Array[string] | нет | Маркеры. | - | ||||
| initialVariables | Object | нет | Исходные переменные. | - | ||||
| | customVariable | string | нет | Пользовательские переменные. | |||||
| | phone | string | нет | Вызываемый номер. | |||||
| | tryNumber | int | нет | Количество попыток дозвона в рамках задания на обзвон. | |||||
| | recordPath | string | нет | Прямая ссылка на скачивание аудиозаписи звонка. | |||||
| | humanNumber | int | нет | Количество дозвонов по номеру кандидата, где ответивший был НЕ автоответчик, считается с 0. | |||||
| | resultNumber | int | нет | Количество результативных дозвонов по номеру кандидата, считается с 0. | |||||
| | tryCandidate | int | нет | Количество попыток дозвона до кандидата, считается с 0. | |||||
| | answeredNumber | int | нет | Количество дозвонов по номеру кандидата, считается с 0. | |||||
| | humanCandidate | int | нет | Количество дозвонов до кандидата, где ответивший был НЕ автоответчик, считается с 0. | |||||
| | resultCandidate | int | нет | Количество результативных дозвонов до кандидата, считается с 0. | |||||
| | answeredCandidate | int | нет | Количество дозвонов до кандидата, считается с 0. | |||||
| markers | Array[string] | нет | Маркеры. | - | | evaluation | string | нет | Оценка из блока результат. |
| confirmation | string | нет | Подтверждение. | results.confirm | ||||
| nps | string | нет | NPS. | results.nps | ||||
| ключключ_1 | string | нет | Произвольный результат. Задается в блоке Результат с типом Произвольный результат. | results.ключ_1 | ||||
amd | string | да | Результат работы определителя автоответчика. Возможные значения:
| amd | ||||
recordPath | string | да (пустой для первого хука) | Путь к аудиофайлу. Для получения ссылки нужно добавить в начале пути | recordPath | ||||
flow | Array[Object] | да (может быть пустым) | Массив фрагментов разговора. | - | ||||
| botId | string | да | Идентификатор сценария. | - | ||||
| start | string | да | Время начала части диалога. | - | ||||
| end | string | да | Время окончания части диалога. | - | ||||
| messages | Array[Object] | да | Массив сообщений по диалогу. | messages | ||||
| | text | string | да | Текст сообщений. | messages.X.text | ||||
| | author | string | да | Кто произнес сообщение (BOT, CLIENT). | messages.X.author | ||||
| | time | string | да | Время отправки сообщения. | messages.X.created_at | ||||
gmtOffset | int | да | смещение в минутах от UTC часового пояса клиента. | timezone | ||||
hungUpBy | string | да | Кто положил трубку (BOT, HUMAN). | - | ||||
duration | int | да | Общая длительность разговора. | duration | ||||
totalCost | float | да | Общая стоимость разговора. | - | ||||
robotCallDuration | int | да | Длительность разговора робота. | botDuration | ||||
robotCallTotalCost | float | да | Стоимость разговора робота со скидкой. | - | ||||
mainCallCost | float | да | Стоимость разговора (транк клиента). | - | ||||
mainCallDiscount | float | да | Скидка за разговор (транк клиента). | - | ||||
mainCallDuration | int | да | Длительность разговора (транк клиента). | - | ||||
mainCallTotalCost | float | да | Стоимость разговора со скидкой (транк клиента). | - | ||||
autoCallCost | float | да | Всегда равен 0. | - | ||||
autoCallDiscount | float | да | Всегда равен 0. | - | ||||
autoCallDuration | int | да | Всегда равен 0. | - | ||||
autoCallTotalCost | float | да | Всегда равен 0. | - | ||||
robotCallCost | float | да | Стоимость разговора робота. | - | ||||
robotCallDiscount | float | да | Скидка за разговор робота. | - | ||||
transferCallCost | float | да | Стоимость перевода звонка. | - | ||||
transferCallDiscount | float | да | Скидка за перевод звонка. | - | ||||
transferCallDuration | int | да | Длительность звонка после перевода. | operatorDuration | ||||
transferCallTotalCost | float | да | Стоимость звонка после перевода со скидкой. | - | ||||
clientExternalId | string | да (может быть null) | Идентификатор, который добавлен самостоятельно при добавлении кандидата. В случае, если идентификатор не был добавлен, вернется значение null. | |||||
callbackData | Object | да (может быть пустым) | Информация о кандидате, переданная в момент добавления кандидата (см. метод добавления кандидата). | - |
...