Среда разработки Call Flow Designer


Среда разработки 3CX Call Flow Designer (CFD) позволяет администратору АТС создавать сложную логику обработки вызовов (голосовые приложения) в удобном визуальном редакторе — с минимальными навыками программирования или вообще без них. Голосовые приложения взаимодействуют с пользователем по телефону, принимая от него ввод и выполняя определенные действия. Вы можете, например, запросить у абонента номер карточки клиента, проверить его в CRM системе и перевести к закрепленному менеджеру. Или вы можете маршрутизировать вызов в зависимости от даты, времени и других факторов.

Внимание: чтобы запускать приложения 3CX CFD необходима редакция 3CX Pro.



Приложение CFD «собирается» из строительных блоков, называемых компонентами. Существует довольно много готовых компонентов, причем их перечень расширяется, например: Menu (Голосовое меню / IVR), Prompt Playback (Проигрывание сообщения пользователю), User Input (Прием ввода пользователя). Каждый компонент имеет несколько настраиваемых параметров, о которых мы поговорим ниже. Компоненты, объединенные вместе, образуют проект (Project) голосового приложения. Этот проект после компиляции загружается на сервер 3CX (Windows или Linux) в интерфейс Очереди вызовов. Далее вы направляете вызовы на этот номер Очереди из голосового меню (IVR) или напрямую с внешней линии. В процессе работы голосовое приложение может снова переводить вызовы на Очереди, Группы, IVR, определенных пользователей и т.п.

Преимущества использования среды разработки CFD перед написанием скриптов вручную:

  • Использование множества готовых компонентов — рекордная скорость «сборки» приложения
  • Визуализация создаваемого алгоритма — приложение может легко изменить или доработать другой сотрудник
  • Использование отлаженного кода компонентов — минимизация ошибок разработки
  • Поддержка популярного языка C#, расширяющего возможности голосовых приложений
  • Компиляция CFD-приложения (а не интерпретация скрипта) — высокая скорость исполнения, минимальная нагрузка на процессор

3CX Call Flow Designer устанавливается только на 64-битную версию Windows. Приложение занимает примерно 15 Мб плюс место для проектов пользователя. CFD можно установить на любом подходящем компьютере, а не только на компьютере с системой 3CX. Проект создается локально, а затем загружается на сервер АТС. Это, в частности, позволяет партнерам 3CX создавать голосовые приложения на заказ для своих клиентов.

Рассмотрим термины, с которыми вы встретитесь, разрабатывая голосовые приложения 3CX:

  • Project (Проект) – собственно, разрабатываемое приложение. Оно состоит из потоков обработки вызовов, дайлеров и других компонентов.
  • Callflow (Поток обработки вызовов) – определенное взаимодействие с пользователем, т.е. набор действий, выполняемый компонентом (или компонентами). Например, поток — это запрос ввода цифр у пользователя.
  • Dialer (дайлер) – поток обработки, автоматически выполняющий исходящий вызов.
  • Components (компоненты) – строительные блоки потока обработки вызовов, например, воспроизведение пунктов меню, получение ввода пользователя, доступ к базе данных и т.п. Компоненты являются частью входящего потока обработки, исходящего потока (диалера) или более сложного пользовательского компонента.
  • Custom Component (Пользовательский компонент) – вы можете создавать собственные компоненты со специальными возможностями.

Создание простого голосового приложения


Рассмотрим, как создается простейшее голосовое приложение в среде CFD. После того, как вы освоитесь с простыми компонентами, не составит труда перейти и к более сложным приложениями, которые состоят из тех же простых компонентов.

Наше приложение представляет собой простое Голосовое меню (для перевода в Отдел продаж нажмите 1, Отдел поддержки — 2, Исходящий вызов — 3, или оставайтесь на линии для соединения с Оператором.

Создание проекта




Для создания проекта перейдите в File > New > Project и укажите имя файла. При сохранении проекта создаются три папки: для аудиофайлов проекта, для дополнительных библиотек и для готовой сборки голосового приложения. Проект создается с набором параметров по умолчанию, которые вы можете затем изменить.

Создание потока обработки




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

Добавление компонентов в поток




После создания пустого потока заполним его рабочими компонентами. Начнем с компонента Menu.

  • Перетащите его на вкладку потока и назовите mainMenu
  • По умолчанию меню имеет два опции. Добавим третью — кликните на компоненте правой кнопкой мыши и выберите Add Option 3.  

Когда вы добавляете компонент Menu в поток, его параметры устанавливаются по шаблону в соответствии с установками в разделе Tools > Options > Component Templates > Menu. Установить параметры компонента можно тремя способами:

  • В окне Properties
  • По двойному щелчку на компоненте
  • Из контекстного меню компонента

Например, чтобы установить голосовое сообщение, воспроизводимое пользователю, в окне Properties измените свойство InitialPrompts. Откроется редактор голосовых файлов Prompt Collection Editor. Укажите вариант AudioFilePrompt, а затем выберите звуковой файл, который должен воспроизводиться.



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

Обратите внимание: CFD поддерживает только аудиофайлы следующего формата: WAV, моно, 8 КГц, 16 бит. Вы можете подготовить файлы корректного формата по этой инструкции.

Чтобы добавить голосовое сообщение, которое прозвучит пользователю при некорректном вводе, измените параметр InvalidDigitsPrompts. Сообщение при отсутствии ввода пользователя устанавливается в параметре TimeoutPrompts.



Настроив основные параметры самого меню, добавим компоненты, которые будут выполняться при выборе той или иной опции. Например, при выборе Опции 1 приложение переводит вызов на Отдел продаж — добавьте компонент Transfer под ветвление Option 1 и поменяйте имя компонента на Sales.



Дважды кликните на компоненте Transfer и укажите направление — добавочный номер Отдела продаж. Аналогично укажите в Опции 2 добавочный номер Отдела сервиса.

В Опции 3 алгоритм немного усложняется. Мы спросим у пользователя номер, на который нужно перевести вызов, а потом переведем на введенный номер. Для получения номера используется компонент User Input:

  • Перетащите его в ветвление Option 3, измените имя и добавьте сообщение, которое будет предлагать пользователю ввести номер.
  • Укажите допустимые цифры — от 0 до 9 (звездочка и точка не допускаются).
  • Укажите минимальную и максимальную длину номера (параметры MinDigits и MaxDigits), например, от 3 до 5.
  • Если пользователь сделал неверный ввод, вызов переводится на оператора.



Чтобы настроить перевод вызова на введенный номер, дважды кликните на компоненте Transfer в опции 3 и нажмите на кнопку Редактора выражений (Expression Editor) fx. В качестве выражения укажите свойство buffer компонента askForDestination.



Компиляция и загрузка приложения на сервер




Завершенный проект будет иметь примерно такой вид, как на скриншоте выше. Однако нам необходимо скомпилировать готовое приложение (файл с расширением tcxvoiceapp, которое и устанавливается на сервер.

Для этого выберите в меню CFD опцию Build > Build All. Появится окно компиляции и окно ошибок, в котором видны все ошибки и предупреждения, возникающие в процессе компиляции. Затем откроется Windows Explorer с файлом готового приложения.

Для загрузки файла на сервер АТС, в интерфейсе управления 3CX создайте Очередь вызовов, укажите ее имя и добавочный номер, и перейдите в раздел Голосовые приложения.

Установите галочку Голосовые приложения и загрузите ваше приложение. После этого появится предупреждение о перезапуске сервиса Queue Manager Service. Обратите внимание, что при перезапуске все вызовы в Очередях будут прерваны.


Запуск приложения


Голосовое приложение регистрируется в системе 3CX под добавочным номером Очереди вызовов. Запуск приложения происходит либо при поступлении прямого внешнего вызова на эту Очередь, либо при переводе на Очередь. В нашем случае — просто позвоните на добавочный номер Очереди и приложение запустится!  

Дополнительная информация


Мы описали базовые принципы разработки приложений для 3CX. Разумеется, возможности среды CFD гораздо больше. Она постоянно дополняется новыми компонентами и получает возможности интеграции со сторонними сервисами, например, сервисом генерации естественной речи Amazon Polly. Кроме того, недавно появилась возможность обращаться к серверному API 3CX непосредственно из CFD приложений, используя язык C#. Понимая основы, можно переходить к созданию более сложных и полезных приложений. Мы уже неоднократно рассматривали такие приложения в прошлом:


Если у вас возникли вопросы по разработке голосовых приложений, лучшее место для консультаций — Форум разработчиков 3CX CFD и документация 3CX CFD.

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