Работа с входящими звонками#
В зависимости от потребностей интеграции, работу с уведомлениями о входящих звонках можно реализовать несколькими способами:
-
Если Вам не нужна работа с входящими звонками, то рекомендуем делать сброс входящего уведомления incomingCall
- При работе обработчика уведомлений - установить удаление неизвестных типов уведомлений по полю
typeWebhook
. Так все ненужные вам уведомления будут удаляться из очереди. - При работе через HTTP API - удалять уведомления методом deleteNotification.
- При работе через Webhook Endpoint - отдавать статус код 200.
- При работе обработчика уведомлений - установить удаление неизвестных типов уведомлений по полю
-
Если Вам необходимо получать только факт входящего звонка, можно сделать обработчик на получение уведомления
typeWebhook
:incomingCall
и отслеживать статусstatus
:offer
. Все остальные статусы исключать из обработки звонков. -
Если вам необходимо видеть только результат звонка и не информировать оператора о поступлении входящего звонка, тогда требуется отслеживать и записывать в чат все статусы кроме
offer
. Также можно сократить информацию по неотвеченным звонкам.Например:
- При получении уведомления (
typeWebhook
:incomingCall
+status
:offer
) - просто сбрасывать уведомление. -
При получении других статусов - записывать в чат с собеседником записи:
pickUp
- "Отвеченный звонок"
hungUp
- "Пропущенный звонок"
missed
- "Пропущенный звонок"
declined
- "Пропущенный звонок"
- При получении уведомления (
-
Если необходимо получать все статусы звонков, требуется реализовать обработку всех уведомлений типа incomingCall. Необходимо при получении уведомления транслировать в чат запись о звонке.
Например:
- Получаем входящий звонок (
typeWebhook
:incomingCall
+status
:offer
), записываем в чатВходящий вызов
и информируем оператора. -
Завершение звонка (по причинам: ответа оператора, сброса звонка, истечения времени ожидания) - получаем уведомление (
typeWebhook
:incomingCall
) и в зависимости от значения поляstatus
делаем запись в чат:pickUp
- "Отвеченный звонок"
hungUp
- "Сброшенный звонок" - оператор сбросил звонок или в системе установлена настройка или на телефоне активирована функцияНе беспокоить
(положили трубку)
missed
- "Пропущенный звонок" - собеседник завершил звонок
declined
- "Пропущенный звонок" - собеседник не дождался ответа
- Получаем входящий звонок (
Получение имени звонящего собеседника
-
Получить уведомление incomingCall о входящем звонке, в поле from указан номер аккаунта собеседника.
-
Использовать метод GetContactInfo для определения информации о звонящем собеседнике.
-
Использовать поля name или contactName из метода GetContactInfo для получения имени собеседника.