Asterisk app: RetryDial

Краткий обзор

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

Описание

Это приложение будет пытаться совершить вызов используя приложение Команда Asterisk Dial(). Если канал недоступен, будет воспроизведен файл <announce>. Затем, приложение будет ожидать указанное в <sleep> количество секунд, прежде чем повторить вызов. После количества попыток указанного в <retries>, вызывающийся канал продолжит выполнение со следующего приоритета диалплана. Если для параметра <retries> установлено значение '0', попытки совершить вызов будут повторяться бесконечно. В ожидании повторного вызова может быть набран экстеншн состоящий из одной цифры. Если этот экстеншн существует в контексте указанном в ${EXITCONTEXT} или в текущем контексте, вызов перейдет к этому экстеншену немедленно. <dialargs> указываются в том же формате, что и аргументы использующиеся в приложении Dial.

Синтаксис

RetryDial(announce,sleep,retries,dialargs)

Аргументы

announce - Имя аудиофайла, который будет воспроизводиться при отсутствии доступа к каналу.

sleep - Количество секунд ожидания после неудачной попытки набора номера, которое должно пройти перед новой попыткой.

retries - Количество попыток вызова которые будут совершены. По достижению заданного количества попыток, выполнение продолжится со следующего приоритета диалплана.

dialargs - Аргументы вызова, соответствуют аргументам использующимся в приложении Dial.

Пример

В данном примере мы пытаемся вызвать sip/100, если канал недоступен то воспроизведется звуковой сигнал и пойдет 5 секундное ожидание после которого попытка повторится еще два раза (общее количество попыток - 3). Если во время ожидания мы наберем '5' то будем переадресованы на соответствующий экстеншн и аналогично попытаемся вызвать sip/123.

exten => 111,1,Answer()               
exten => 111,n,RetryDial(beep,5,3,sip/100)

exten => 5,1,RetryDial(beep,5,3,sip/123)

Смотри также

Команда Asterisk Dial()


Команды диалплана Asterisk

  • asterisk/app/retrydial.txt
  • Последние изменения: 2018/12/10