...
Блок кода | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "event": "CALL_REDIRECTED", "id": "a9f629ab-20f0-4c11-8a82-05af87e49e43", "redirectAdditional": null, "redirectAnons": null, "redirectDestination": "ch", "redirectDestinationId": "10103", "callbackData": [] } |
Описание полей:
Поле | Тип | Обязательно | Описание | Соответствие с полем из метода старой телефонии |
---|---|---|---|---|
event | string | да | Тип события.
| - |
id | string | да | Идентификатор вызова | id |
redirectAdditional | string | да | Дополнительные данные, которые идут в SIP обмене | - |
redirectAnons | string | да | Текст сопровождения перевода, указанный в настройках бота при переводе звонка. | - |
redirectDestination | string | да | Тип перевода (настраивается в сценарии бота): ch (канал перевода) custom (произвольный перевод) int (внутренний номер, вроде не используем) | - |
redirectDestinationId | string | да | Значение конечного номера, для выбранного типа перевода (номер канала, номер произвольного перевода, внутренний номер) | - |
| callbackData | Object | да (может быть пустым) | Информация о кандидате, переданная в момент добавления кандидата (см. метод добавления кандидата) | - |
Описание хука по событию «CALL_ENDED»
...
Блок кода | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "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": "Иван Иванов" }, "result": { "initialVariables": { "phone": "79991234567", "age": "35", "name": "Иван Иванов" }, "markers": [ "Маркер 1", "Маркер 2", "Маркер 3" ], "confirmation": "Подтверждение", "nps": "NPS", "ключ_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, "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 | да (может быть пустым) | Произвольный словарь типа ключ-значения, который был передан перед инициализацией вызова. Содержит исходные переменные | - |
result | Object | да | Произвольный словарь типа ключ-значения. Результаты разговора робота | results |
| initialVariables | Object | да (может быть пустым) | Исходные переменные | - |
| markers | Array[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 | да (пока всегда null) | Кто положил трубку (пока всегда null) | - |
duration | int | да | Общая длительность разговора | duration |
totalCost | float | да | Общая стоимость разговора | - |
robotCallDuration | int | да | Длительность разговора робота | botDuration |
robotCallTotalCost | float | да | Стоимость разговора робота со скидкой | - |
mainCallCost | float | да | Стоимость разговора (транк клиента) | - |
mainCallDiscount | float | да | Скидка за разговор (транк клиента) | - |
mainCallDuration | int | да | Длительность разговора (транк клиента) | - |
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 | да | Стоимость звонка после перевода со скидкой | - |
callbackData | Object | да (может быть пустым) | Информация о кандидате, переданная в момент добавления кандидата (см. метод добавления кандидата) | - |
Описание хука по событию «CANDIDATE_CHANGED» (Только для исходящих)
...
Блок кода | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "event": "CANDIDATE_CHANGED", "id": "5c0d503f-a34e-4806-b455-3225de25***", "clientExternalId": null, "taskId": "210ef80*-1f92-48b*-9800-84fcf59363*e", "status": "FINISHED", "callbackData": [ { "id_num": "12q12", "id_debt": "456321" } } |
Описание полей:
Поле | Тип | Обязательно | Описание | Соответствие с полем из метода старой телефонии |
---|---|---|---|---|
Поле | Тип | Обязательно | Описание | Соответствие с полем из метода старой телефонии |
event | string | да | Тип события. Возможные значения:
| - |
id | string | да | Идентификатор вызова | id |
clientExternalId | string | да | Переданный в запросе на инициализацию идентификатор (callId) | - |
taskId | string | да | Идентификатор задания на обзвон | taskId |
candidateId | string | да | Идентификатор кандидата на обзвон | - |
status | string | да | Статус вызова. Возможные значения:
| status |
| callbackData | Object | да (может быть пустым) | Информация о кандидате, переданная в момент добавления кандидата (см. метод добавления кандидата) | - |