WaitExten()
Приложения #Asterisk #Диалплан
Синтаксис
exten => 123, 1, WaitExten([задержка])
задержка количество секунд, в течение которых приложение будет ждать ввода абонентаПриложение WaitExten() ожидает от абонента набора телефонного номера и часто вызывается сразу после приложения Background(), как в данном фрагменте диалплана:
exten => 123, 1, Answer() same => n, Background(main-menu) same => n, WaitExten()
Если требуется, чтобы приложение WaitExten() ожидало ответа в течение определённого времени (вместо использования времени ожидания по умолчанию), просто укажите число, соответствующее необходимому количеству секунд, в качестве первого аргумента в WaitExten().
Обработка ошибочных вводов и времени ожидания
Теперь введём специальные добавочные номера. Во-первых, нам необходим добавочный номер для недействительных вводов; когда абонент нажимает не ту кнопку (например, 9 для предыдущего примера), вызов направляется на добавочный номер i. Во-вторых, необходим добавочный номер для ситуаций, когда абонент не производит ввод вовремя (время ожидания по умолчанию - 10 секунд). Если абонент слишком долго не нажимает кнопку после запуска приложения WaitExten(), вызовы направляются на добавочный номер t. Вот как будет выглядеть диалплан после введения этих двух добавочных номеров:
exten => 123, 1, Answer() exten => 123, n, Background(enter-ext-of-person) exten => 123, n, WaitExten() exten => 1, 1, Playback(digits/1) same => n, Goto(incoming,123,1) exten => 2, 1, Playback(digits/2) same => n, Goto(incoming,123,1) exten => 3, 1, Playback(digits/3) same => n, Goto(incoming,123,1) exten => i, 1, Playback(pbx-invalid) same => n, Goto(incoming,123,1) exten => t, 1, Playback(vm-goodbye) same => n, Hangup()
Использование добавочных номеров i и t делает диалплан несколько более надёжным и практичным.
Комментарии
Пока комментариев нет.