Разработка сайтов и программного обеспечения, системное администрирование, обучение программированию и работе с СУБД MySQL

in english

Многоуровневое меню для Asterisk

Главная Статьи IVR Menu

 

это просто заметка как сделать многоуровневое вложенное меню для астериска. отнеситесь к ней с юмором

имеем elastix 1.6-12, freepbx

рисуем где-нить, хоть на бамажке само меню. думаем... выбрасываем бумажку... рисуем новое

набиваем текст в любом редакторе... читаем вслух в присутствии еще кого-нить... желательно сволочи! исправляем текст.

еще раз читаем и т.д. пока он не вылизан...

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

разрезаем эту хрень на файлики так, чтобы не перепутать

заливаем все дерьмо на сервант

 

настройка астериска

надо дописать в /etc/asterisk/extensions_custom.conf

 

exten => 731,1,Goto(my-menu,s,1)


[my-menu]
exten => s,1,Set(home="/var/lib/asterisk/sounds/custom")
exten => s,2,Wait(1)
exten => s,3,Playback(${home}../welcome)
exten => s,4,Playback(${home}/i-menu-0)
exten => s,5,WaitExten()

exten => 1,1,Playback(${home}/i-menu-1)
exten => 1,2,Goto(s,1)

exten => 2,1,Dial(SIP/202)

exten => 3,1,Playback(${home}/otebe)
exten => 3,2,Goto(s,1)

exten => t,1,Playback(make_choice)
exten => t,2,Goto(s,1)

exten => i,1,Playback(wrong_choice)
exten => i,2,Goto(s,1)




собственно по меню: дозваниваться в него будем по номеру 731
строка exten => s,1,Set(home="/var/lib/asterisk/sounds/custom") устанавливает переменную home как папку для ваших звуков

попав в меню человек слушает welcome, а потом i-menu-0, далее система ждет донабора.

короче говоря t - таймаут (время ожидания истекло), i - неверный номер, [хреновинаВскобочках] это контекст, а содержимое этого файла и кучи других называется диалпланом.

Если захотите сделать несколько уровней в меню, то делайте Goto к нужному пункту.

Пример многоуровневого меню найдете на http://www.the-asterisk-book.com/unstable/mehrstufige-ivr.html. Во вступлении написано, что одна цифра может быть использована только один раз внутри [контекста], поэтому при реализации многоуровневого меню, для вложенного субменю нужно создавать отдельный контекст.

После правок файлов перезапускайте демон астериска из командной строки. Через веб-интерефейс он плохо себя ведет. Регулярно бекапьте и не бойтесь экспериментов.

Реклама: широкоформатная печать реклама и печать на пленке в каталоге.

Другие материалы:

Метки: Linux, сисадмину, IVR, Asterisk, VoIP, Elastix.

Комментарии:

Вы можете оставить первый комментарий.

имя:

e-mail (не публикуется):

комментарий:

© 2005—2011, Ткачев Филипп
Программист, веб-разработка и прикладное ПО.
Все права защищены.