Введение

Call Flow Designer или Проектирование потока вызовов — это визуальный инструмент для построения логики обработки звонков в IP‑АТС Yeastar серии P. Он позволяет буквально, как конструктор, собрать поведение системы из блоков — без программирования и с максимальной гибкостью.

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

В этой части рассмотрим:

  • что такое Call Flow Designer;

  • преимущества Call Flow Designer;

  • основные компоненты;

  • особенности и нюансы.

Что такое Call Flow Designer (CFD)?

CFD — это не просто замена привычному IVR. Это визуальный конструктор, встроенный в IP‑АТС Yeastar серии P, в котором можно задать поведение вызова. Инструмент позволяет настраивать сложные сценарии обработки звонков при помощи блоков — компонентов, которые соединяются между собой стрелками, образуя единый сценарий.

Сценарий строится в виде диаграммы. Идея проста: каждый блок — это функция.

Пример

Один блок может вести к другому, с разветвлением по условиям:

  • если вызов поступает в нерабочее время, проигрывается сообщение и осуществляется перевод на голосовую почту;

  • если звонящий выбирает 1, происходит соединение с отделом продаж, если 2 — с технической поддержкой;

  • если вызов пришел от VIP‑номера, перевод осуществляется сразу на старшего менеджера, минуя IVR.

По сути, это low‑code‑платформа внутри IP‑АТС, позволяющая создать полноценную систему голосовой логики — от простого автоответчика до сложных CRM‑интеграций.

Почему это удобно

  1. Все на одной схеме: никакой путаницы с вложенными IVR или переадресациями.

  2. Можно протестировать: прямо в интерфейсе можно запустить симуляцию сценария.

  3. Гибкая логика: маршрутизация, проверки номера, переменные, интеграции с API.

  4. Не нужен программист: все собирается в интерфейсе, доступном для продвинутого администратора.

Преимущества Call Flow Designer

Когда сценарий обработки звонков включает IVR, расписания «рабочие/нерабочие часы» и множество правил маршрутизации, конфигурация быстро перерастает в бесконтрольный набор исключений и перекрестных ссылок. Разобраться в этом хаосе бывает очень непросто. Call Flow Designer решает эту проблему визуальной схемой: каждый шаг обработки — отдельный блок, а любые правки вступают в силу мгновенно, без перезагрузки IP‑АТС.

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

1. Визуализация всей логики

  • единая блок схема вместо десятков строк XML диалплана;

  • на рабочем поле отображаются все компоненты (Initial Action, Prompt, Menu, Condition и др.) и связи (стрелки), по которым двигается вызов;

  • незаконченные или неподключенные ветки подсвечиваются, сразу указывая на ошибки конфигурации, что позволяет быстро исправить ошибку.

2. Моментальные правки и тестирование

  • любое изменение в схеме вступает в силу сразу после сохранения без перезагрузки IP‑АТС;

  • можно перетаскивать блоки, дублировать ветки и мгновенно проверять результат через тестовый звонок.

3. Максимальная гибкость сценариев

  • Condition: проверка времени, ANI, DTMF‑ввода, результата HTTP‑запросов и прочих переменных;

  • Loop: повторение группы блоков (например, повтор меню при неверном вводе до 3 раз);

  • Developer: интеграция с внешними REST API, базами данных и почтовыми сервисами прямо из сценария вызова.

4. Ускоренное развертывание и тиражирование

  • новый IVR путь или изменение логики «на лету» — 5–10 минут вместо часов настройки классических диалпланов;

  • экспорт/импорт сценариев в формате JSON для быстрого клонирования готовых решений между разными IP‑АТС.

5. Минимизация ошибок

  • графический интерфейс подсказывает обязательные поля и параметры;

  • неподключенные ветки и неиспользуемые блоки легко заметить и удалить;

  • поддержка сохранения черновиков и откат к предыдущим версиям сценария.

6. Масштабируемость от SMB до Enterprise

  • в рамках лицензии Ultimate поддерживается до 80 активных сценариев и до 200 компонентов в одном сценарии;

  • подходит как для малого офиса (простое IVR‑меню), так и для крупного контакт‑центра с CRM‑интеграцией и сложной очередью.

7. Единое место управления

  • все сценарии находятся в одном разделе веб‑интерфейса IP‑АТС Yeastar серии P;

  • никаких внешних модулей или дополнительных лицензий — полный набор блоков доступен «из коробки».

Решаемые задачи

  • Голосовое меню на нескольких языках с переключением через компонент Язык.

  • Запрос и проверка PIN‑кода (Ввод данных пользователем → Условные компоненты) с ветвлением в зависимости от результата.

  • Отправка уведомлений о событиях (на почту или в мессенджер) через Компоненты разработчика → Отправка E‑mail или HTTР‑запросы.

  • Учет времени суток и праздников с помощью компонента Рабочее время для разных маршрутов.

  • Запись звонков и логирование (Запись → Компоненты разработчика → Доступ к базе данных).

  • Многоуровневые IVR‑меню с циклическим повторением.

  • Адаптивная маршрутизация.

С помощью Call Flow Designer можно быстро визуализировать логику обработки звонков, протестировать ее и внести правки без риска затронуть другие настройки IP‑АТС.

Основные компоненты

Рассмотрим основные компоненты, из которых будут состоять сценарии: как они называются, за что отвечают и как их использовать.


1. Prompt или Уведомление

Отвечает за воспроизведение голосовых подсказок и инструкций в сценарии обработки звонков. С его помощью можно проигрывать заранее записанные аудиофайлы, включать музыку на удержании или генерировать речь из текста (TTS).

Для данного компонента есть несколько типов подсказок:

a) Пользовательская подсказка (Custom Prompt)

  • выберите одну или несколько уже загруженных подсказок из выпадающего списка;

  • также можно нажать Записать новый, чтобы записать новую подсказку с помощью любого телефона/приложения, подключенного к IP‑АТС, либо Загрузить, чтобы загрузить готовый аудиофайл;

  • всего поддерживается до 5 подсказок в одном компоненте.

p1.png

b) Мелодия ожидания вызова (Music on Hold, MoH)

  • выберите один из заранее настроенных аудиофайлов удержания;

  • мелодия ожидания вызова будет звучать, пока звонящий не выйдет из этого компонента.

Важно: перед началом работы убедитесь, что нужные аудиофайлы добавлены в разделе Настройки АТС → Голосовая подсказка → Музыка на удержании.

p2.png

c) Преобразование текста в речь (Text‑to‑Speech, TTS)

  • выберите опцию Преобразование текста в речь и введите текст, который нужно озвучить;

  • система сгенерирует голосовое сообщение на выбранном языке и в нужном стиле.

Важно: функция TTS должна быть активирована в Интеграция → AI.

p3.png

Порядок приоритета:

  • если после Уведомление идет другой компонент с собственным аудио, его применение будет приоритетно текущему;

  • циклическое воспроизведение действует только до смены компонента.

Например: проигрывается уведомление с циклическим сообщением «Ожидайте, Ваш звонок важен для нас». Затем через 50 с происходит переадресация на компонент Меню с собственным IVR. В этом случае, если второй компонент начнет воспроизводить свой звук, он прервет уведомление первого, даже если первоначальное сообщение еще не проиграно до конца.


2. Business Hours или Рабочее время

Компонент Рабочее время отвечает за маршрутизацию вызовов в зависимости от времени суток и календаря. С его помощью можно гибко определить рабочие и нерабочие периоды, а также задать отдельную логику для праздников.

Поддерживаемые временные режимы

a) Глобальный

  • использует заранее настроенные интервалы рабочего времени для выбранного часового пояса;

  • предварительно задается в Управление вызовами → Часы работы и праздники.

p4.png

b) На основе пользовательских часов работы

  • можно задать гибкий график на неделю: несколько периодов каждый день, отдельные перерывы или круглосуточную работу (24 х 7);

  • можно добавлять до 10 временных интервалов для рабочего времени и до 10 интервалов для перерывов.

p5.png

c) На основе пользовательских периодов времени

  • настраивается наиболее точное расписание: создаются свои интервалы (до 50) и для каждого указываются дни и время;

  • можно реализовать сложные сценарии, когда стандартных графиков недостаточно.

p6.png

Как это работает в сценарии

По умолчанию — ветка‑заглушка: сюда попадут все вызовы, не попавшие ни в один настроенный интервал времени. Для каждой ветки (рабочие часы, перерывы, нерабочее время, праздники) можно добавить любое дальнейшее действие: перевод вызова в очередь, IVR, переадресация на номер или завершение вызова.


3. Menu или Меню

Компонент Меню позволяет настроить голосовое меню IVR: воспроизвести инструкцию для звонящего, собрать DTMF‑ввод и направить звонок по соответствующей ветке. Результат ввода сохраняется в переменных и может использоваться в последующих компонентах (Условные компоненты, Компоненты разработчика) для гибкой маршрутизации.

p7.png

a) Пользовательская подсказка: позволяет выбрать до 5 аудиофайлов (или записать/загрузить новые) и при необходимости включить функцию Включение циклов для циклического воспроизведения.

p8.png

b) Мелодия ожидания вызова: предоставляет выбор аудиофайла из загруженных в Настройки АТС → Голосовая подсказка → Музыка на удержании.

p9.png

c) Преобразование текста в речь: предоставляет выбор языка, на котором будет произноситься текст, а также голоса, которым будет озвучен введенный текст (функция должна быть активирована в Интеграция → AI).

p10.png

Теперь подробнее рассмотрим настройки внутри компонента Меню, за исключением компонента Настройки тембра. Нас интересуют такие опции, как тайм‑ауты, стратегии повторов и обработка нажатий клавиш.

Тайм‑ауты

Время ожидания цифр: время (1–9999 с), в течение которого система ждет набора следующей цифры.

p11.png

Тайм‑аут ответа: общее время ожидания действия звонящего.

p12.png

Стратегии повторов

Необходимо выбрать ветку Неверный ввод и установить галочку Вернуться в меню, указав в поле Количество возвратов допустимое число попыток неверного ввода.

p13.png

Аналогично можно сконфигурировать ветку Тайм‑аут ответа для случаев отсутствия ввода.

p14.png

Определение веток по клавишам

Нажмите кнопку + внутри блока и введите значение клавиши (цифры, * или #).

Примечание: можно настроить до 100 ветвей, каждая из которых сопоставлена с собственным (отличающимся от других) ключом.

Укажите, можно ли возвращаться в меню после выбора (опция Вернуться в меню) и число повторных попыток.

При конфликте с финальным символом (# или *) убедитесь, что значения не пересекаются.


4. User Input или Ввод данных пользователем

Компонент собирает серию нажатий DTMF от звонящего и сохраняет введенные символы в переменную. Главная цель — последующая обработка этих данных в блоке (Условные компоненты) или сценариях интеграции.

Как это работает

Система слушает ввод, пока не выполнится одно из условий:

  • достигнуто максимальное число цифр;

  • истекло время ожидания следующей цифры или общего ответа;

  • звонящий нажал финальный символ (# или *).

При этом можно проиграть подсказку (аудио или TTS), чтобы подсказать пользователю, что нужно ввести.

Поддерживаемые типы подсказок

a) Пользовательская подсказка: позволяет выбрать до 5 аудиофайлов (или записать/загрузить новые) и при необходимости включить функцию Включение циклов для циклического воспроизведения.

p15.png

b) Мелодия ожидания вызова: предоставляет выбор аудиофайла из загруженных в Настройки АТС → Голосовая подсказка → Музыка на удержании.

p16.png

c) Преобразование текста в речь: предоставляет выбор языка, на котором будет произноситься текст, а также голоса, которым будет озвучен введенный текст (функция должна быть активирована в Интеграция → AI).

p17.png

Перейдем к настройкам блока Тайм‑аут в компоненте Ввод данных пользователем.

Время ожидания цифр: время (1–9999 с), в течение которого система ждет набора следующей цифры.

Время ожидания ответа: общее время ожидания действия звонящего.

p18.png

5. Language или Язык

Компонент Язык позволяет задать язык для голосовых сообщений и системных подсказок, которые будут воспроизводиться звонящему в рамках текущего сценария. Поддерживаемые языки: русский, английский.

p19.png

6. Record или Запись

Компонент Запись используется для записи голоса вызывающего абонента во время звонка. Это позволяет сохранять важную информацию, переданную устно, для последующего анализа, подтверждения или обработки.

Компоненту Запись требуется место для хранения записей вызова. Файлы записи могут храниться в локальном хранилище на IP‑АТС, на внешнем устройстве (USB‑носителе или HDD‑диске) или в сетевой папке. Для централизованного управления или резервного копирования также можно архивировать файлы на внешние серверы, такие как Amazon S3, Google Cloud Storage, FTP‑сервер или SFTP‑сервер.

Примечание: функция записи вступит в силу только в том случае, если выбрано место хранения для файлов записи. Настроить этот параметр можно в Система → Хранилище. Если запись разговора уже запущена, повторная активация компонента Запись не сможет ее остановить или поставить на паузу. Остановить или приостановить запись вручную могут только пользователи с соответствующими правами, если это разрешено в настройках их добавочного номера (Номера и линии → Номера → Выбрать номер → Функции → Запись звонков).

p20.png

Поддерживаемые функции записи

Можно воспроизводить звуковые подсказки или текстовые сообщения для оповещения участников звонка о начале записи разговора. Существует 2 варианта настройки данной функции.

a) Пользовательская подсказка: позволяет выбрать до 5 аудиофайлов (или записать/загрузить новые).

p21.png

b) Преобразование текста в речь: предоставляет выбор языка, на котором будет произноситься текст, а также голоса, которым будет озвучен введенный текст (функция должна быть активирована в Интеграция → AI).

p22.png

Также для компонента Запись существует функция Периодически воспроизводить звуковой сигнал во время записи разговора. В случае, если она включена, заданный звуковой сигнал будет воспроизводиться с выбранной периодичностью, чтобы проинформировать клиента о ведении записи разговора.

p23.png

7. Loop или Цикл

Компонент Цикл позволяет повторять компоненты сценария определенное количество раз либо до выполнения определенного условия. Это удобно для реализации таких случаев, как повторный выход в меню при неверном вводе.

В данном компоненте выбор осуществляется между 2 методами цикла.

Цикл на фиксированное количество раз. После указанного в поле Считать количества повторов цикл будет завершен, и вызов пойдет дальше по ветке сценария.

p24.png

Цикл по состоянию. Цикл будет завершен при достижении конкретного условия, которое задано в поле Выражение, и не будет прекращен до тех пор, пока условия не будут выполнены.

p25.png

В рамках этой статьи мы не будем детально разбирать все переменные, функции и постоянные, которые могут использоваться в компоненте Цикл, но приведем небольшой практический пример, чтобы продемонстрировать его работу в типовом сценарии.

Пример использования компонента Цикл

p26.png

Используется компонент Цикл с фиксированным числом повторений «2». Это означает, что пользователю будет предоставлено не более 2 попыток корректно взаимодействовать с голосовым меню. После входящего вызова на внутренний номер 6901 выполняется следующий сценарий.

Цикл 1 ограничен 2 повторениями. Внутри цикла запускается компонент Меню, где абоненту предлагается выбрать один из вариантов:

  • нажать 1: вызов будет направлен на заранее заданный номер — в данном случае 1040;

  • нажать 2: запускается компонент Набор по номеру, где вызывающий может ввести добавочный номер или внешний номер вручную.

В случае тайм‑аута ответа или неверного ввода цикл возвращает пользователя обратно к меню (если число попыток еще не исчерпано). После 2 неудачных попыток (например, 2 неверных ввода) сценарий выходит из цикла и переходит к завершению вызова (компонент Завершить 2).

Такой подход позволяет ограничить количество попыток ввода, чтобы избежать бесконечных повторов и быстрее направить вызов по нужному сценарию или завершить его.


В данной статье мы рассмотрели лишь часть компонентов инструмента Call Flow Designer и их настроек. В следующей части цикла статей мы продолжим знакомство с остальными компонентами и расширим понимание возможностей, которые предоставляет этот инструмент.

Комментарии (0)