# Документация администратора # Синтез речи #### Введение Для оперативного создания голосовых приветствий и интерактивных голосовых меню в версии 8.0.0 была реализована возможность синтезировать речь через Web интерфейс телефонной станции. Данный модуль использует синтез от компании Яндекс. Для подключения данного модуля необходимо получить Yandex IAM Token. Полученный токен необходимо ввести в Настройки - Константы - Yandex IAM Token. [![constant_index.JPG](https://docs.evolvex.ru/uploads/images/gallery/2024-03/scaled-1680-/constant-index.JPG)](https://docs.evolvex.ru/uploads/images/gallery/2024-03/constant-index.JPG) #### Синтез речи Для работы с синтезом речи необходимо открыть меню Медиа - Синтез речи. Откроется окно настроек синтеза речи. [![synth_index_settings.JPG](https://docs.evolvex.ru/uploads/images/gallery/2024-03/scaled-1680-/synth-index-settings.JPG)](https://docs.evolvex.ru/uploads/images/gallery/2024-03/synth-index-settings.JPG) Для выбора голоса и амплуа необходимо воспользоватся таблицей ниже.
ГолосПолАмплуа
`alena` (по умолчанию) Ж(по умолчанию) нейтральная — `neutral` радостная — `good`
`filipp`M
`ermil`M(по умолчанию) нейтральный — `neutral` радостный — `good`
`jane`Ж(по умолчанию) нейтральная — `neutral` радостная — `good` раздраженная — `evil`
`madirus`M
`omazh`Ж(по умолчанию) нейтральная — `neutral` раздраженная — `evil`
`zahar`M(по умолчанию) нейтральный — `neutral` радостный — `good`
`dasha`Ж(по умолчанию) нейтральная — `neutral` радостная — `good` дружелюбная — `friendly`
`julia`Ж(по умолчанию) нейтральная — `neutral` строгая — `strict`
`lera`Ж(по умолчанию) нейтральная — `neutral` дружелюбная — `friendly`
`masha`Ж(по умолчанию) радостная — `good` строгая — `strict` дружелюбная — `friendly`
`marina`Ж(по умолчанию) нейтральная — `neutral` шепот — `whisper` дружелюбная — `friendly`
`alexander`M(по умолчанию) нейтральный — `neutral` радостный — `good`
`kirill`M(по умолчанию) нейтральный — `neutral` строгий — `strict` радостный — `good`
`anton`M(по умолчанию) нейтральный — `neutral` радостный — `good`
В текстовом поле добавить необходимый текст для синтеза и нажать кнопку "Синтезировать". Программа автоматически подготовит необходимый формат файла для телефонной станции, дополнительное конвертирование не нужно. В правой части окна в таблице "Список синтеза речи" добавится строка синтезированной речи. [![synth_index_list.JPG](https://docs.evolvex.ru/uploads/images/gallery/2024-03/scaled-1680-/synth-index-list.JPG)](https://docs.evolvex.ru/uploads/images/gallery/2024-03/synth-index-list.JPG) Для скачивания аудиофайла нажмите кнопку "Скачать". Таблица заполняется по мере синтеза речи и хранит файлы за все время синтеза. При необходимости старые записи можно удалить. #### Дополнительно При необходимости данный модуль можно интегрировать с другими сервисами и приложениями. Для примера можно использовать интеграцию с CRM системой. При звонке в офис компании, голосовое приветствие будет синтезировано автоматически и система поприветствует клиента по имени и отчеству. # Переадресация на сотовые номера сотрудников #### Переадресация при входящих вызовах Для настройка вызова на сотовый, необходимо использовать приложение Dial. Добавляется в место где необходимо произвести вызов на сотовый. ``` Dial: SIP/<Номер>@<Транк>,<Время> ``` Номер - Номер абонента Транк - Транк через который совершается вызов Время - Время дозвона абонента Пример: ``` NoOp: Входящий вызов ... ... ... Dial: SIP/user-110-office,15,tT Dial: SIP/81234567890@peer-71234567890-office,60 Hangup ``` #### Переадресация при добавочных вызовах Для настройки переадресации при наборе добавочного номера необходимо добавить в маршрутизацию добавочных номеров расширение 110. Пример маршрутизации добавочного номера 110 с переадресацией на сотовый: ``` NoOp: Вызов на добавочный номер Dial: SIP/user-110-office,15,t Dial: SIP/81234567890@peer-71234567890-office,60 Hangup ``` #### Переадресация при внутренних вызовах Для настройки переадресации при наборе внутреннего номера необходимо добавить в маршрутизацию внутренних номеров расширение 110. Пример маршрутизации внутреннего номера 110 с переадресацией на сотовый: ``` NoOp: Вызов на внутренний номер ... ... ... Dial: SIP/user-110-office,15,tT Dial: SIP/81234567890@peer-71234567890-office,60 Hangup ``` # Сообщение после звукового сигнала #### Подготовка аудиофайла Необходимо подготовить файл звукового приветствия, например "Оставьте сообщение после звукового сигнала". Через меню Медиа->Аудиофайлы загрузите файл с наименованием "message-office". Файл должен быть в формате wav (rate 8000 Hz, sample rate 16 bits, mono). #### Настройка маршрутизации Необходимо подготовить новую маршрутизацию, например "message-office" В созданной маршрутизации добавить расширение "s" ``` NoOp : Сообщение после звукового сигнала Answer Playback : message-office Record : /tmp/${UNIQUEID}.wav,,300,k Hangup ``` #### Настройка отправки на электронную почту Добавить в маршрутизацию расширение "h" ``` NoOp : Отправка сообщения на электронную почту AGI : email/attachment.php,--source="${CALLERID(number)}",--destination="Номер",--emails="mail@example.com",--attachment="/tmp/${UNIQUEID}.wav" Hangup ``` #### Настройка перенаправления В нужном месте маршрутизации добавьте приложение "GoTo" ``` NoOp : Входящий вызов ... ... ... Goto : message-office,s,1 Hangup ``` # Приложение Record #### Краткое содержание Запись в файл. #### Описание Если имя файла содержит «%d», эти символы будут заменены числом, увеличивающимся на единицу при каждой записи файла. Пользователь может нажать «#», чтобы прекратить запись и перейти к следующему приоритету. Если пользователь повесит трубку во время записи, все данные будут потеряны и приложение закроется. - RECORDED\_FILE - Будет установлено окончательное имя файла записи без расширения. - RECORD\_STATUS - Это окончательный статус команды - DTMF- Был получен завершающий DTMF ('#' или '\*', в зависимости от опции 't') - SILENCE- В записи возникла максимальная тишина. - SKIP- На линию еще не ответили и была указана опция 's'. - TIMEOUT- Достигнута максимальная длина. - HANGUP- Канал завис. - ERROR- Произошла неисправимая ошибка, повлекшая за собой ПРЕДУПРЕЖДЕНИЕ в журналах. #### Синтаксис Record(filename.format,\[silence,\[maxduration,\[options\]\]\]) #### Аргументы - filename - filename - **необходимый** - format - **требуется** - формат типа записываемого файла (wav, gsm и т. д.). - silence - Количество секунд молчания, которое можно разрешить перед возвращением. - maxduration - Максимальная продолжительность записи в секундах. Если отсутствует или равен 0, то максимума нет. - options - a - Добавлять к существующей записи, а не заменять. - n - Не отвечайте, но все равно запишите, если на линии еще не ответили. - o - Выход при нажатии 0, установив для переменной **RECORD\_STATUS** значение «OPERATOR» вместо «DTMF». - q - тихо (не издавать звуковой сигнал). - s - пропустить запись, если на линии еще нет ответа. - t - используйте альтернативный ключ завершения '\*' (DTMF) вместо стандартного '#' - u - Не обрезайте записанное молчание. - x - Игнорировать все клавиши терминатора (DTMF) и продолжать запись до зависания. - k - Сохранять записанный файл после зависания. - y - Прекратить запись, если получена какая-либо цифра DTMF*.*