Введение
В этом статье мы расскажем, как отправить e-mail сообщение из 3CX Call Flow Designer, используя компонент Email Sender. Приложение записывает голос позвонившего абонента в WAV файл и отсылает его как e-mail вложение.
Вы можете использовать этот компонент, например, для уведомления о заказе товара через голосовое меню 3CX, и в других ситуациях, когда голосовое взаимодействие пользователя с системой должно сопровождаться отправкой e-mail.
Напомним, что в предыдущих статьях мы рассмотрели создание CFD приложения для исходящего обзвона (по завершении обзвона можно отсылать отчет, используя компонент Email Sender), работу CFD с базами данных (которые также можно использовать для получения номера абонента) и маршрутизацию входящих вызовов в зависимости от времени суток (которую можно комбинировать с исходящим обзвоном)
Обратите внимание — среда разработки 3CX CFD поставляется бесплатно. Но голосовые приложения будут выполняться только на 3CX редакции Pro и Enterprise. Скачать CFD можно отсюда.
Демо-проект этого голосового приложения поставляется вместе с дистрибутивом 3CX CFD и находится в папке Documents\3CX Call Flow Designer Demos. В демо-приложении для начала работы достаточно указать параметры вашего SMTP сервера.
Создание проекта
Для создания проекта CFD перейдите в File → New → Project, укажите папку размещения проекта и его имя, например, EMailDemo.
Запись сообщения пользователя в файл
Для начала запишем сообщение абонента в файл. Этот файл и будет затем отослан на e-mail. Для этого используется компонент Record.
- Перетащите компонент Record в основное окно среды разработки (в голосовое приложение Main). Перейдите в окно свойств и переименуйте компонент в recordYourMessage.
- Дважды кликните на компоненте и в открывшимся окне установите следующие параметры:
CONCATENATE("CallFrom_",session.ani,".wav")
Отправка записанного сообщения на e-mail
Теперь отправим записанный аудиофайл в виде e-mail вложения. Для этого добавим компонент E-Mail Sender в ветвление Audio Recorded компонента Record и настроим его как показано ниже:
Обратите внимание, что в тех параметрах, где указываются выражения (поля имеют кнопку Fx справа), любая указанная константа должна заключаться в кавычки, поскольку в этих полях также могут находится переменные или результаты выражения.
Для параметра Subject мы используем выражение, которое добавляет номер позвонившего абонента.
Список вложений Attachments содержит описания файлов, состоящие из двух столбцов:
- Name — имя файла, которое увидит получатель e-mail сообщения. Укажем здесь Recording.wav, чтобы во вложении приходил файл только с этим именем.
- File — выражение, которое указывает на физический файл записи, который нужно вложить в письмо. Однако здесь мы должны дополнить выражение, генерирующее имя файла (которое использовалось в предыдущем шаге). В предыдущем шаге в компоненте Record использовался относительный путь к файлу — указывалось только имя. Файл создавался в каталоге аудиофайлов данного проекта. Компоненту Email Sender следует передать полный путь к файлу, поэтому выражение дополняется переменной session.audioFolder:
CONCATENATE(session.audioFolder,"/CallFrom_",session.ani,".wav")
Теперь голосовое приложение корректно найдет и вложит аудиофайл.
Компиляция и установка приложения на сервер 3CX
Голосовое приложение готово! Теперь его следует скомпилировать и загрузить на сервер 3CX. Для этого:
- Перейдите в меню Build → Build All, и CFD создаст файл EMailDemo.tcxvoiceapp.
- Перейдите в интерфейс управления 3CX, в раздел Очереди вызовов. Создайте новую Очередь вызовов, укажите название и добавочный номер Очереди, а затем установите опцию Голосовые приложения и загрузите скомпилированный файл.
- Сохраните изменения в Очереди вызовов. Голосовое приложение готово к использованию.