Разработка динамических сайтов
SEO услуги
Управление контекстной рекламой

Вход на хостинг

Имя пользователя:*

Пароль пользователя:*

IT-новости

20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла

Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......

подробнее

30.07.2015 Ищем уникальный контент для сайта

Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......

подробнее

11.05.2015 Распространённые ошибки разработчиков сайтов

Не секрет, что в сети Интернет насчитывается миллионы сайтов, и каждый день появляются тысячси новых......

подробнее

То есть при поступлении звонка на голосовой порт 1/0/0 запустится IVR-приложение с именем debitcard, которое должно быть определено глобально в конфигурации маршрутизатора:

call application voice debitcard slot0:/ivr/debitcard.tcl

call application voice debitcard uid-len 8

call application voice debitcard pin-len 3

call application voice debitcard warning-time 10

call application voice debitcard language 1 ru

call application voice debitcard language 2 en

call application voice debitcard set-location ru 0 slot0:/ivr/prompts/ru/

call application voice debitcard set-location en 0 slot0:/ivr/prompts/en/

Первая строчка сообщает маршрутизатору о местонахождении IVR-скрипта с именем debitcard.tcl, в нашем случае он находится на slot0: – дополнительном модуле Flash-памяти.

Вторая и третья определяют количество цифр в идентификаторе и пин-коде карты.

Четвертая строчка определяет количество секунд до окончания звонка, за которое клиента следует предупредить.

Пятая и шестая указывают маршрутизатору, где искать необходимые звуковые файлы, из которых будут формироваться голосовые сообщения для клиента.

Вообще говоря, для каждого IVR-скрипта можно определить любой параметр или параметры, значение которых он потом сможет считать через соответствующие IVR API.

Например, наличие следующей строчки в конфигурации шлюза:

call application voice debitcard say_seconds yes

определяет для IVR-скрипта debitcard параметр say_seconds, имеющий значение yes. Позже, в процессе выполнения скрипта, мы сможем изменить его поведение в зависимости от значения этого параметра, что, несомненно, увеличивает универсальность приложения.

IVR-приложение базируется на трех составляющих: процедуры инициализации, функции обработки событий и конечное состояние (FSM – Finite State Machine).

Процедуры или функции инициализации применяются для объявления и присвоения значений переменным, используемых скриптом.

Эти функции бывают двух типов. К первому типу относятся те, которые будут выполнены всего один раз в начале работы скрипта. Они, как правило, используются для инициализации глобальных переменных, значение которых не должно меняться. Например, в этих процедурах мы можем считать параметры, определенные для скрипта в глобальной конфигурации маршрутизатора.

Второй тип процедур инициализации – это те, которые вызываются при каждом поступлении звонка на маршрутизатор, а именно при получении события ev_setup_indication или ev_handoff. В них, как правило, принято определять и инициализировать глобальные переменные, которые могут меняться при каждом звонке.

При получении IVR-скриптом определенного события вызываются соответствующие функции обработки. Примером таких событий могут быть нажатие клавиши на клавиатуре телефонного аппарата, сигнал о завершении проигрывания клиенту голосовых файлов или окончании процесса авторизации на RADIUS-сервере.

Для IVR-скрипта назначен четкий набор событий, который он может обрабатывать, и на каждое из них можно привязать функцию-обработчик этого события, которая будет автоматически выполнена при поступлении этого события в каждом конечном состоянии скрипта.

FSM – (конечные состояния) выполнения IVR-скрипта определяют, какие именно обработчики будут вызываться при получении тех или иных событий, и в какое состояние должен перейти скрипт после вызова обработчика.

Итак, приступим к написанию скрипта. Мы создадим текстовый файл с именем debitcard.tcl. Далее приводится полный листинг скрипта с подробным описанием процедур и команд. В тексте слова «процедура» и «функция» являются синонимами.

proc  init { } {

    global param;

    global retryCnt;

    global LangPattern;

    global ParamForCard;

    global ParamForDest;

    global AccountLen;


Предыдущая страницаОглавлениеСледующая страница
 
[001] [002] [003] [004] [005] [006] [007] [008] [009] [010] [011] [012] [013] [014] [015] [016] [017] [018] [019] [020]
[021] [022] [023] [024] [025] [026] [027] [028] [029] [030] [031] [032] [033] [034] [035] [036] [037] [038] [039] [040]
[041] [042] [043] [044] [045] [046] [047] [048] [049] [050] [051] [052] [053] [054] [055] [056] [057] [058] [059] [060]
[061] [062] [063] [064] [065] [066] [067] [068] [069] [070] [071] [072] [073] [074] [075] [076] [077] [078] [079] [080]
[081] [082] [083] [084] [085] [086] [087] [088] [089] [090] [091] [092] [093] [094] [095] [096] [097] [098] [099] [100]
[101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120]
[121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
[141] [142] [143] [144] [145] [146] [147] [148] [149] [150]

+7 (831) 413-63-27
ООО Дельта-Технология ©2007 - 2023 год
Нижний Новгород, ул. Дальняя, 17А.
Rambler's Top100