Настройка телефонии

Мониторинг доступности сервисов

HTTP и PING-проверки, инциденты, голосовая эскалация и тестовые URL.

8 минДля администратора

Мониторинг доступности сервисов

Мониторинг позволяет автоматически проверять доступность внешних сервисов (HTTP или PING) и при сбоях немедленно уведомлять ответственных голосовым звонком. Система работает в связке с биллингом и телефонией: при обнаружении проблемы 4phone сам позвонит нужному человеку и попросит подтвердить, что инцидент принят.

Как устроен мониторинг

Платформа периодически проверяет указанный URL или хост. Если несколько проверок подряд возвращают ошибку, создается инцидент и запускается цепочка эскалации: звонок по списку ответственных с голосовым сообщением.

Основные сущности:

  1. Контактные точки определяют, кому звонить и на каком языке.
  2. Мониторы определяют, что проверять, как часто и как реагировать.
  3. Инциденты создаются автоматически при серии неудачных проверок.

Контактные точки

Контактная точка привязывает конкретного человека к каналу уведомления. Перед созданием монитора нужно завести хотя бы одну точку.

Поля при создании:

  1. Название для идентификации контакта в списке.
  2. Тип: внутренний голосовой (звонок на добавочный номер) или внешний голосовой (звонок на мобильный или городской).
  3. Язык оповещения: русский или узбекский. Голосовое сообщение будет сгенерировано на выбранном языке.
  4. Номер: для внутреннего типа выбирается добавочный из списка, для внешнего указывается номер телефона.
  5. Активность: неактивные контакты не будут использоваться при эскалации.

Важно

Для внутренних звонков оператор должен быть онлайн в софтфоне. Для внешних звонков у тенанта должен быть активный исходящий SIP-транк.

Создание монитора

Монитор определяет цель проверки and правила реакции на сбои.

Основные параметры

  1. Название для идентификации в списке.
  2. Тип проверки: HTTP (проверка URL с ожиданием определенного кода ответа) или PING (ICMP-проверка хоста).
  3. Цель: URL для HTTP (например, https://example.com/health) или hostname/IP для PING.
  4. Интервал проверки: как часто проверять (минимум 30 секунд).
  5. Таймаут: максимальное время ожидания ответа.
  6. Ожидаемый код (только HTTP): какой HTTP-статус считать успешным (по умолчанию 200).

Пороги и поведение

  1. Порог сбоев: сколько неудачных проверок подряд нужно для открытия инцидента.
  2. Порог восстановления: сколько успешных проверок подряд нужно для закрытия инцидента.
  3. Cooldown: минимальное время (в секундах) между повторными уведомлениями по одному монитору.

Привязка SIP-транка

Для голосовых уведомлений монитору нужен привязанный SIP-транк. Через этот транк будут совершаться исходящие звонки при эскалации.

Тексты алерта

Задаются отдельные тексты для русского и узбекского языков. Эти тексты будут озвучены при голосовом звонке. Если текст не задан, система использует шаблон по умолчанию с названием монитора.

Цепочка эскалации

Определяет, в каком порядке и кому звонить при инциденте:

  1. Контакт: выбор из созданных контактных точек.
  2. Порядок: определяет очередность звонков.
  3. Задержка: сколько секунд ждать перед звонком на этот шаг.
  4. Число повторов: сколько раз повторить попытку, если контакт не отвечает.

Статусы

Монитор

  • Здоров (Healthy): последняя проверка прошла успешно.
  • Сбой (Failed): последняя проверка вернула ошибку.

Инцидент

  • Открыт (Open): обнаружен сбой, уведомления отправляются.
  • Подтвержден (Acknowledged): ответственный принял звонок и нажал клавишу 1 для подтверждения.
  • Решен (Resolved): сервис восстановился (успешные проверки превысили порог восстановления).

Тестовые URL

Для проверки работы мониторинга 4phone предоставляет набор тестовых эндпоинтов:

  1. api.4phone.uz/api/monitoring/test/status/200 возвращает статус 200 (OK).
  2. api.4phone.uz/api/monitoring/test/status/500 возвращает статус 500 (имитация сбоя).
  3. api.4phone.uz/api/monitoring/test/delay/5000 задержка 5 секунд (проверка таймаута).
  4. api.4phone.uz/api/monitoring/test/random?fail_rate=50 случайный ответ (50% сбоев).
  5. api.4phone.uz/api/monitoring/test/flap чередование 200 и 503.

Совет

Используйте тестовые URL для первичной настройки. Создайте монитор на status/500, убедитесь, что инцидент создается и звонок поступает, затем переключите на реальный URL.

Как работает голосовое уведомление

При звонке система:

  1. набирает номер контакта;
  2. воспроизводит сгенерированное голосовое сообщение;
  3. просит нажать клавишу 1 для подтверждения инцидента;
  4. если получатель нажимает 1, инцидент переходит в статус «Подтвержден»;
  5. если получатель не отвечает или не нажимает 1, система переходит к следующему шагу эскалации.

Проверьте

Голосовые уведомления тарифицируются. Каждый звонок учитывается в биллинге как отдельная операция мониторинга.

Что важно проверить

Перед запуском мониторинга

  1. создана хотя бы одна активная контактная точка;
  2. у тенанта есть активный SIP-транк для исходящих звонков;
  3. транк привязан к монитору;
  4. цепочка эскалации содержит хотя бы один шаг;
  5. тестовый URL проверен и инцидент создается корректно;
  6. получатель знает, что нужно нажать 1 для подтверждения.

Частые проблемы

  1. Звонок не поступает: проверьте, что SIP-транк активен и привязан к монитору, контакт активен и имеет правильный номер.
  2. Инцидент не создается: убедитесь, что порог сбоев больше 1, а сервис действительно недоступен.
  3. Статус не меняется на «Подтвержден»: получатель должен нажать именно клавишу 1 во время звонка.
  4. «Не удалось подключиться»: проверьте URL/хост, сетевую доступность и DNS.

Следом полезно открыть Как подключить SIP-транк и Частые проблемы и быстрые решения.