Мониторинг звонков (адрес /calls) — пульт реального времени для руководителя. Видно, кто прямо сейчас разговаривает, кто свободен, какой счётчик звонков за сегодня и какие пропущенные накопились с утра. Страница обновляется автоматически каждые 10 секунд — можно держать вкладку открытой как дашборд.
Зачем нужен мониторинг
- Видеть нагрузку «здесь и сейчас». Сколько разговоров идёт прямо в эту секунду, кто на линии, кто звонит, у кого уже минут 10 одна и та же беседа.
- Реагировать на пропущенные на лету. Список пропущенных за сегодня — на одной странице. Не надо листать журнал и фильтровать, всё уже отобрано.
- Управлять качеством через супервайзинг. Прямо из таблицы активных звонков можно прослушать разговор тихо, подсказать сотруднику (клиент не услышит) или подключиться к разговору третьим участником.
- Считать SLA. Уровень обслуживания (% входящих, отвеченных за ≤20 секунд) считается в реальном времени за сегодня — типичный KPI колл-центра.
- Контролировать готовность смены. Список сотрудников с цветовыми статусами «В сети / Звонит / В разговоре / Не в сети» — мгновенно видно, кто на месте, а у кого софтфон не запущен.
Что на странице
1. Счётчики за сегодня
Сверху — пять карточек, рассчитанные с начала текущих суток (московское время):
- Всего сегодня — общее число звонков.
- Отвечено — со статусом ANSWERED.
- Пропущено — всё, что не ANSWERED (NO ANSWER / BUSY / FAILED).
- Среднее ожидание — сколько в среднем клиент ждал ответа (мм:сс).
- Уровень обслуживания (SLA) — круговая диаграмма: процент входящих, ответивших быстрее 20 секунд.
2. Активные звонки сейчас
Таблица всех текущих разговоров и попыток дозвона на стороне АТС (источник — Asterisk REST Interface, не CDR). Колонки: канал, состояние, кто звонит, кому, длительность (тикает в реальном времени), действия.
Состояния: Звонит, Набор, В разговоре, Закрыт.
Кнопки супервайзинга
В строке активного звонка — три кнопки. При клике АТС поднимает звонок к супервайзеру (на тот софтфон/устройство, что выбрано основным) и подключает его к разговору в нужном режиме:
- 🎧 Прослушать (тихо) — режим listen (код
*44). Супервайзер слышит обоих, его не слышит никто. Стандартное прослушивание для контроля качества. - 🎤 Суфлировать — режим whisper (
*45). Слышит обоих, но его слышит только сотрудник. Клиент остаётся в неведении. Удобно подсказывать новичку. - 👥 Подключиться к разговору — режим barge (
*46). Полноценная конференция трёх: супервайзер слышит и говорит, его слышат и сотрудник, и клиент.
Чтобы кнопки работали, у руководителя должен быть указан внутренний номер (extension). К чужому собственному звонку подключиться нельзя — кнопка выдаст ошибку.
3. Сотрудники
Слева внизу — список всех сотрудников (extensions) тенанта со статусом «прямо сейчас»:
- В сети — софтфон/телефон зарегистрирован, готов принимать звонки.
- Не в сети — нет регистрации, входящий не дозвонится.
- Звонит — на устройство сотрудника поступает входящий, ещё не снял.
- Набирает номер — сотрудник кому-то звонит, ответа ещё нет.
- В разговоре — занят активной беседой.
Транк-каналы провайдеров и системные endpoints в этот список не попадают — только реальные сотрудники.
4. Пропущенные сегодня
Справа внизу — последние 10 пропущенных входящих от внешних номеров (внутренние ext→ext исключаются — они не клиенты). Колонки: время, номер, CallerID (если отличается от номера), статус (Без ответа / Занято / Сбой).
Это компактная замена ручному фильтру в Журнале для случая «прямо сейчас разобрать утренние пропущенные».
5. История за сегодня
Внизу страницы — последние 20 завершённых звонков сегодня в обратном хронологическом порядке. Колонки: время, тип (Вх./Исх./Внутр.), от, куда, статус, время ожидания, время разговора. Кнопка «Открыть полную статистику» ведёт в Журнал звонков с расширенными фильтрами.
Доступ и роли
- Раздел появляется в меню только если у тенанта включена функция «Мониторинг» (
feature_monitoring). - Просмотр требует разрешения
calls.view; супервайзинг (кнопки прослушки) —calls.edit. - У ролей Руководитель отдела и Руководитель компании оба разрешения есть из коробки.
- У Сотрудника доступ к мониторингу также есть, но без права супервайзинга — кнопки прослушки не сработают, если в роли нет
calls.edit. Учтите при настройке роли под свои нужды.
Технические детали
- Источник live-данных: Asterisk REST Interface (ARI). Каналы и endpoints запрашиваются у АТС в реальном времени, без кэша.
- Источник счётчиков и истории: таблица журнал звонков с фильтром
calldate >= date_trunc('day', now()). Видимость ограничена RLS по тенанту. - Авторефреш: JS-таймер каждые 10 секунд дёргает
/calls/live.jsonи обновляет таблицы и счётчики без перезагрузки страницы. - Длительность активного звонка тикает в строке посекундно — используется поле
creationtimeканала. - Spy-механика — стандартные Asterisk-feature-коды ChanSpy:
*44прослушка,*45с whisper,*46barge. Супервайзер не вмешивается в существующий канал — АТС создаёт ему новый канал и склеивает с целью.
Связанные разделы
- Журнал звонков — детальная история со всеми фильтрами и записями разговоров.
- Аналитика — графики и срезы за произвольный период (день/неделя/месяц), heatmap нагрузки, по сотрудникам и отделам.
- Главная страница: роли и видимость — общие принципы того, кто что видит.
- Тэги звонков — классификация разговоров (актуально и для мониторинга, и для журнала).