Популярные статьи
- Почему скорость 4G/LTE интернета может быть низкой?
1636 просмотра
- 💰 Как проверить баланс
1123 просмотра
- Как правильно набирать номер телефона?
681 просмотра
- 🔌📞Как подключить телефонный номер к ВАТС
451 просмотра
Каталог событий MCN Telecom — Контакт-центр
Контакт-центр
События (вебхуки и триггеры), связанные с обращениями и диалогами Контакт-центра.
Единый Envelope используется для всех событий: один channel соответствует одному event_type.
Содержание
Также см.:
«Каталог событий MCN Telecom — Виртуальная АТС (Звонки ВАТС, Переадресация и внутренние номера)»;
«Каталог событий MCN Telecom — Виртуальная АТС (Очереди, Другие события ВАТС)»;
«Каталог событий MCN Telecom — Работа с речью»;
Общий формат события
Все события используют общую обёртку Envelope:
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; одинаков при повторных доставках и используется для дедупликации |
data | object | ✓ | Данные, специфичные для event_type |
✓— обязательное поле;—— необязательное.
Для каждого события приведены доступное описание полей data и пример Payload.
Обращения
Ticket_created - Контакт-центр: создание обращения
Схема события пока недоступна. Событие присутствует в продукте, но отсутствует в выгрузке БД — специфичные поля
dataи пример payload недоступны.
Payload: общий Envelope. Структура data не определена.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; используется для дедупликации повторных доставок |
data | object | ✓ | Данные события; структура пока недоступна |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 0,
"event_type": "string",
"created_at": "2019-08-24T14:15:22Z",
"idempotencyKey": "0c14c6a6-6f50-4d1e-b0c4-b46ff43ba6a1",
"data": {}
}
}
Диалоги
Subdialog.created - Контакт-центр: создание диалога
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; используется для дедупликации повторных доставок |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
accountId | number | ✓ | Номер лицевого счёта |
subdialog_id | number | ✓ | ID под-диалога в контакт-центре |
external_id | string | ✓ | Внешний ID, связывающий под-диалог с исходным звонком/обращением |
source | string | ✓ | Источник обращения в контакт-центр (например vpbx) |
state | string | ✓ | Внутреннее состояние под-диалога; дублирует status |
eventType | string | ✓ | Дублирует event_type события |
status | string | ✓ | Статус под-диалога (например in_queue — в очереди) |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "subdialog.created",
"created_at": "2026-07-01T22:48:49.036Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"accountId": 10001,
"subdialog_id": 17079732,
"external_id": "125-1782935328.12200710",
"source": "vpbx",
"state": "IN_QUEUE",
"eventType": "subdialog.created",
"status": "in_queue"
}
}
Subdialog_ended - Контакт-центр: завершение диалога
Payload: allOf — общий Envelope + данные события.
Envelope
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
account_id | integer | ✓ | ID аккаунта в системе |
event_type | string | ✓ | Тип события — см. components/messages |
created_at | string (date-time) | ✓ | Момент события (UTC) |
idempotencyKey | string (uuid) | — | Ключ идемпотентности; используется для дедупликации повторных доставок |
data | object | ✓ | Данные, специфичные для event_type |
data
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
accountId | number | ✓ | Номер лицевого счёта; дублирует account_id из Envelope |
dialogText | string | ✓ | Полный текст диалога с разметкой по репликам оператора и клиента |
eventType | string | ✓ | Дублирует event_type события |
id | string | ✓ | Уникальный технический идентификатор события (UUID) |
✓— обязательное поле;—— необязательное.
Пример: Payload
{
"account_id": 10001,
"event_type": "subdialog_ended",
"created_at": "2026-07-01T20:44:41.013Z",
"idempotencyKey": "5b133904-6192-49d2-abbc-f95be887fb70",
"data": {
"accountId": 10001,
"eventData": {
"chatId": 49509938,
"projectsSettings": {},
"platformType": "vpbx",
"subdialog": {
"queueWaitId": null,
"startMessage": null,
"statuses": [
"in_queue"
],
"id": 17079410,
"dialogId": 49509938,
"operatorId": null,
"status": "in_queue",
"endMessageId": 46752533
},
"createdTs": "2026-07-01T17:44:33.891Z",
"eventTs": "2026-07-01T17:44:40.879Z",
"platform": "vpbx",
"operator": null,
"accountId": 10001,
"platformUserId": "125-1782927846.12192332",
"chatUserId": 49509938,
"context": {
"system": {},
"variable": {
"callId": "125-1782927846.12192332",
"callRecordFile": "20260701-204406-170-9410-125178292784612192332",
"vpbxId": "280"
}
},
"statuses": [
"in_queue"
],
"messages": [
{
"messageText": "Алло.",
"speechKitTranscribationLoaded": false,
"externalId": "2ba7eb566b15379f1fe13026d563f49c108431398ac4e4ebff1462a0f1215b0d",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:42.080Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "operator",
"id": 46752533,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "Алло.",
"type": "message"
},
"updatedAt": null
},
{
"messageText": "Слушай, я че тебе еще звонил, я тебе в элемент там написал, типа Дина есть?",
"speechKitTranscribationLoaded": false,
"externalId": "3e40134d0aeb6a496873ba06f0dc0c1e35caf61f3ca064ba3b38316774fc4663",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:42.671Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "user",
"id": 46752534,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "Слушай, я че тебе еще звонил, я тебе в элемент там написал, типа Дина есть?",
"type": "message"
},
"updatedAt": null
},
{
"messageText": "А",
"speechKitTranscribationLoaded": false,
"externalId": "d573cfbbfb164e4f72d0ed5d1bd4d2b29b18a46497f351a2b58469a14ea1867a",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:43.841Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "operator",
"id": 46752535,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "А",
"type": "message"
},
"updatedAt": null
},
{
"messageText": "Давай.",
"speechKitTranscribationLoaded": false,
"externalId": "c15220e6d454317097c8be02762a7fc8e1d484a0380435aee94d0e211c7fd776",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:45.161Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "operator",
"id": 46752536,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "Давай.",
"type": "message"
},
"updatedAt": null
},
{
"messageText": "Да, я вижу, сейчас я посмотрю, я сейчас посмотрю, тебе отвечу.",
"speechKitTranscribationLoaded": false,
"externalId": "dd7e168de5bcc698ea0018d97adee0f399536a323500e8af394c8bad8a95094d",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:46.190Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "operator",
"id": 46752537,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "Да, я вижу, сейчас я посмотрю, я сейчас посмотрю, тебе отвечу.",
"type": "message"
},
"updatedAt": null
},
{
"messageText": "Да окей у меня в принципе все готово, если что я направлю все.",
"speechKitTranscribationLoaded": false,
"externalId": "8ff4f0d945c02527282b5090918c22049860445c124de165e29fcb3bd87b502f",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:49.501Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "user",
"id": 46752538,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "Да окей у меня в принципе все готово, если что я направлю все.",
"type": "message"
},
"updatedAt": null
},
{
"messageText": "Да,",
"speechKitTranscribationLoaded": false,
"externalId": "599f7cbaa4303d75087dbef2fc3d6349e2026f5782441fb6a07505df82df4e01",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:50.761Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "operator",
"id": 46752539,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "Да,",
"type": "message"
},
"updatedAt": null
},
{
"messageText": "Да давай давай, ага?",
"speechKitTranscribationLoaded": false,
"externalId": "be520f06e0c3aa5161becbcd22c381857f0d689e39f7e5fbdc4d1b1c0e4d642f",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:53.041Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "operator",
"id": 46752540,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "Да давай давай, ага?",
"type": "message"
},
"updatedAt": null
},
{
"messageText": "Давай.",
"speechKitTranscribationLoaded": false,
"externalId": "279cd3c8a29adc79b221bb49813b8c198ba6fd7a1362fa371bad79740f2fd64c",
"dialogId": 49509938,
"subdialogId": 17079410,
"platform": "vpbx",
"createdAt": "2026-07-01T17:44:53.641Z",
"accountId": 10001,
"deletedAt": null,
"messageType": "message",
"senderType": "user",
"id": 46752541,
"operatorId": null,
"messageData": {
"isMarkdown": false,
"text": "Давай.",
"type": "message"
},
"updatedAt": null
}
],
"scenarioId": null,
"status": "in_queue"
},
"dialogText": "17:44:42 [ОПЕРАТОР]: Алло.\n17:44:42 [КЛИЕНТ]: Слушай, я че тебе еще звонил, я тебе в элемент там написал, типа Дина есть?\n17:44:43 [ОПЕРАТОР]: А\n17:44:45 [ОПЕРАТОР]: Давай.\n17:44:46 [ОПЕРАТОР]: Да, я вижу, сейчас я посмотрю, я сейчас посмотрю, тебе отвечу.\n17:44:49 [КЛИЕНТ]: Да окей у меня в принципе все готово, если что я направлю все.\n17:44:50 [ОПЕРАТОР]: Да,\n17:44:53 [ОПЕРАТОР]: Да давай давай, ага?\n17:44:53 [КЛИЕНТ]: Давай.",
"eventType": "subdialog_ended",
"id": "1c1a0c66-eecb-4809-96b5-0ccb1bf0800b"
}
}