Команда DeadAGI()


Команда DeadAGI - это вариант команды AGI, которая позволяет запускать приложения на разъединенных каналах.

Синтаксис и Использование:


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

Главное отличие в том, что приложение AGI может завершиться, если линия зависнет в течение выполнения, а DeadAGI не завершится, даже если линия зависнет в течение выполнения; однако, ветвь вызова не будет автоматически вводить состояние “down”, до тех пор пока выполнение не завершится, если выполнение происходит на живой линии. По существу, команды и приложения, разработанные для возврата состояния вызова, будут ошибочно возвращать состояние “up”.

Это также означает, что любые вызовы, приклеенные к выполнению DeadAGI на зависании, будут продолжаться рассматриваться CDR как “up”. Это очень важно для вашего скрипта быть агрессивным в завершении после зависания соответствующим образом для обслуживания правильных CDR записей.

Возможный метод проверки канала, вероятно, “exec playback” (“выполнение воспроизведения”) аудио файла (возможно короткого бесшумного файла) и поиск возвращаемого результата этого выполнения. Это зависит от того факта, что файл фактически существует и будет “отвечать” на вызов, если он еще не поднят. Конечно, появится надпись “Failed to write frame”, предупреждающая об отказе, возвращающая -1 и показывающая, что канал лежит. Она возвратит 0 в случае успеха.

Версии

exclaim Эта команда добавлена в (CVS) версию Asterisk, начиная с 03-03-2004.
Ее нет в версиях Asterisk 1.0 или 0.9.
она возможна в 1.0.9 и 1.2.x.

Смотри также: