Для того что бы создать IVR нужно в первую очередь представить себе его структуру, то есть что за чем и как будет делаться, и составить тексты.
Сейчас мы опишем создание простейшего голосового меню, состоящего из приветствия и после приветствия, переключение на оператора. Файл в котором хранится фраза «Здравствуйте, вы позвонили в нашу компанию» называется welcome.wav и находится в директории /home/menu.
Номер, который принимает звонки 444. А выглядеть меню будет так:
[sip-in] exten => 444,1,Set(home="/home/menu") exten => 444,2,Wait(1) exten => 444,3,Playback(${home}/welcome) exten => 444,4,Dial(SIP/operator)
Это простейший IVR и в нем отсутствует основная особенность IVR, нет никакого выбора. Поэтому приведем пример с диалогом. Тут будет присутствовать вторая начитка: «Для связи того что бы прослушать тарифы нажмите 1, для связи с оператором нажмите 2″. Файл содержащий эту начитку будет называться menu.wav и файл с тарифами соответсвенно tariff.wav. После прочтения инструкции должен осуществляться переход в главное меню.
Выглядит это так:
[sip-in] exten => 444,1,Goto(menu,s,1) [menu] exten => s,1,Set(home="/home/menu") exten => s,2,Wait(1) exten => s,3,Playback(${home}/welcome) exten => s,4,Playback(${home}/menu) exten => s,5,WaitExten() exten => 1,1,Playback(${home}/tariff) exten => 1,2,Goto(s,1) exten => 2,1,Dial(SIP/operator) exten => t,1,Playback(make_choice) exten => t,2,Goto(s,1) exten => i,1,Playback(wrong_choice) exten => i,2,Goto(s,1)
Так же появились екстеншены i – это реакция на неправильно нажатую кнопку, Invalid input и t – реакция на истекшее время ожидания выбора. Если их не описать то при истечении таймаута или при неправильно нажатой кнопке произойдет обрыв соединения.
Комментариев нет:
Отправить комментарий