Русский модуль say

Краткая инструкция по установке и применению модуля mod_say_ru. Скачайте и разархивировать архив в папку с установленным Freeswitch, или собрать из исходников mod_say_ru. Для проверки можете скачать переведенные фразы и разархивировать файл в папку freeswitch/sounds/, для качественной озвучки скачайте список фраз.

В файле freeswitch/conf/freeswitch.xml заменить en на ru секция Speech Phrase Management

<!-- <X-PRE-PROCESS cmd="include" data="lang/en/*.xml"/> -->
<X-PRE-PROCESS cmd="include" data="lang/ru/*.xml"/>

В файле freeswitch/conf/autoload_configs/modules.conf.xml добавить строку

<load module="mod_say_ru"/>

В файле freeswitch/conf/vars.xml добавить

<X-PRE-PROCESS cmd="set" data="default_language=ru"/>

Произношение фраз в план набора

Приложение phrase использую макросы произносит фразы:

<action application="phrase" data="saymoney,272034725.29"/>

Данная строка произносит 272034725 долларов 29 центов используя макрос saymoney.

<macro name="saymoney">
  <input pattern="(.*)">
    <match>
         <action function="execute" data="sleep(1000)"/> 
         <action function="say" data="$1" method="pronounced" type="currency"/>
    </match>
  </input>
</macro>

Макрос saymoney (его имя должно совпадать с именем в плане набора), в нем может быть один или несколько pattern, для фильтрации условий используется Regex. Далее выполняется одно или несколько действий.

Макросы

Все фразы (voicemail, digits и т.д) должны быть определены в разделе lang для русского lang/ru/ru.xml.

<language name="ru" sound-path="$${base_dir}/sounds/ru/example" tts-engine="cepstral" tts-voice="callie">
  • name — имя языка (например “RU”), что приведет к вызову модуля mod_say_ru для построения фраз (например, деньги, дата, время и т.д.)
  • sound_path — путь к голослвым файлам этого языка.
  • *tts_engine — движок текс в голос (The text-to-speech).
  • tts_voice — какой голос будет использоваться для TTS.

В архиве есть демонстрационные макросы freeswitch/conf/lang/ru.

Функии

  • execute — вы можете выполнить любой другой FreeSwitch API’s.
  • play-file — воспроизведение звукового файла.
  • say — произносит фразы определенного типа (type) с использованием методов (method) произношения.

Методы:

  • counted
  • iterated
  • pronounced

Типы:

общие

  • number - номер
  • items
  • persons
  • messages - сообщения

Дата и время

  • time_measurement
  • current_date — текущая дата
  • current_time — текущее время
  • current_date_time — текущая дата и время

 IP-адрес

  • ip_address
  • Орфография
  • name_spelled
  • name_phonetic

Деньги

  • currency - валюта

Для проверки есть демо план набора conf/dialplan/default/556_say_demo.xml. Теперь при звонке на номер 556 вы прослушаете произношение валют и ip-адрес двумя способами.

валюты до 999 миллионов

<action function="say" data="$1" method="pronounced" type="currency"/> — минуc ноль долларов 33 цента

ip-адреса

<action function="say" data="$1" method="iterated" type="ip_address"/> — один два пять точка

<action function="say" data="$1" method="pronounced" type="ip_address"/> — сто двадцать пять точка

Сборка из исходников

Скачайте исходники модуля mod_say_ru и разархивируйте в папке с исходниками FreeSWITCH, добавте в файл modules.conf или если еще незапускали ./bootstrap.sh то в файл build/modules.conf.in.

say/mod_say_ru

Далее пересоберите FreeSWITCH.

Комментировать

Comments

2.02.2009 5:47 Андерй Бородулин

при установке готового можудя по приведенной инструкции и запуске fs выдается ошибкаЖ

2009-02-02 12:03:17 [CRIT] switch_loadable_module.c:839 switch_loadable_module_load_file() Error Loading module /usr/local/freeswitch/mod/mod_say_ru.so /usr/local/freeswitch/mod/mod_say_ru.so: undefined symbol: switch_epoch_time_now

Пересобирать из исходников не пробовалю

2.02.2009 12:35 anonymous

А какая версия ОС и FreeSWITCH? Наиболее вероятно у Вас старая версия FreeSWITCH.

Предпочтительней собирать из исходников тогда точно работать будет. Я собирал на Linux Fedora 8 и freeswitch trunk 11572

6.02.2009 16:25 Андерй Бородулин

Версия FreeSWITCH 1.0.2 Собиралась из исходников, взятых на сайте в январе 2009 г. CentOS 5.2

6.02.2009 16:28 Андерй Бородулин

Версия FreeSWITCH 1.0.2 + CentOS 5.2 Брал все с ихсодников в январе 2009 года.

2.02.2009 9:38 deepwalker

Предлагаю использовать для проектов связанных с FS использовать git-hub, если кто то захочет поучаствовать в кодинге чего либо он легко сможет подключиться.

Comment form for «Русский модуль say»

Required. 30 chars of fewer.

Required.

captcha image Please, enter symbols, which you see on the image

2.02.2009 12:07 anonymous

Поддерживаю но Я предпочитаю Mercurial и посей причине открыл акаунт на bitbucket.org

hg clone http://bitbucket.org/jbo/freeswith/

3.04.2009 12:20 litnimax

jbo, отличная работа! Есть возможность выполнить профессиональный перевод в студии, и добавить пакет в FS. Приглашаю обсудить вопросы перевода на форуме FreeSWITCH.ru — http://freeswitch.ru/discussion/3/5 С меня перевод, с вас тестирование и подготовка mod_say_ru и конфигов.

3.07.2009 6:44 claimid

mod_say_ru уже давно в транке, непонятно только почему не захотел вместе делать …