Скачиваем исходники:
wget http://www.cstr.ed.ac.uk/downloads/festival/2.4/festival-2.4-release.tar.gz
wget http://www.cstr.ed.ac.uk/downloads/festival/2.4/speech_tools-2.4-release.tar.gz
Распаковываем:
tar zxvf festival-2.4-release.tar.gz
tar zxvf speech_tools-2.4-release.tar.gz
Компилируем:
cd speech_tools
./configure
make
make install
cd ..
cd festival
./configure 
make
make install
Добавляем к бинарным файлам путь в системный PATH:
export PATH=$PATH:/usr/src/festival/bin/
Обучаем русскому языку:
mkdir /usr/src/festival/lib/voices/
mkdir /usr/src/festival/lib/voices/russian/
cd /usr/src/
wget http://sourceforge.net/projects/festlang.berlios/files/msu_ru_nsh_clunits-0.5.tar.bz2
tar xjfv msu_ru_nsh_clunits-0.5.tar.bz2
mv /usr/src/msu_ru_nsh_clunits/  /usr/src/festival/lib/voices/russian
Корректируем файл languages.scm
nano /usr/src/festival/lib/languages.scm
в начало файла
(define (language_russian)
 "(language_russian)
  Set up language parameters for Russian."
  (set! male1 voice_msu_ru_nsh_clunits)
  (male1)
  (Parameter.set 'Language 'russian)
)
после
((or (equal? language 'britishenglish)
        (equal? language 'english))  ;; we all know its the *real* English
    (language_british_english))
добавляем
((equal? language 'russian)
    (language_russian))
Устанавливаем русский язык по умолчанию:
nano /usr/src/festival/lib/siteinit.scm
(set! voice_default 'voice_msu_ru_nsh_clunits)
Настраиваем сервер Festival:
nano /etc/asterisk/festival.conf
[general]
host=localhost
port=1314
usecache=yes
cachedir=/var/lib/asterisk/festivalcache/
festivalcommand=(tts_textasterisk "%s" 'file)(quit)\n
Добавляем директорию для кеша и даем права
mkdir /var/lib/asterisk/festivalcache/ 
chown asterisk:asterisk /var/lib/asterisk/festivalcache/
Запускаем сам сервер Festival
/usr/src/festival/bin/festival --server
Пример диалплана:
[festival]
exten => 1234,1,Answer
exten => 1234,n,Festival('-. здравствуйте. дорог+ой. леонид. иль-йич')
exten => 1234,n,Hangup
Не забываем проверить наличие модуля app_festival.so в Asterisk.