1 | изначальная версия редактировать | |
храните данные о количестве минут для каждого транка в БД и изменяйте переменную после разговора. Ограничивайте время разговора через опцию команды Dial L(x[:y][:z]) . Из веб-интерфейса сделать это не получится, но задача вполне выполнимая.
2 | No.2 Revision редактировать |
храните данные о количестве минут для каждого транка в БД и изменяйте переменную после разговора. Ограничивайте время разговора через опцию команды Dial L(x[:y][:z]) . Из веб-интерфейса сделать это не получится, но задача вполне выполнимая.
Пример использования
;;Устанавливаем проигрывание файлов
exten => _X.,n,Set(LIMIT_PLAYAUDIO_CALLER=yes)
exten => _X.,n,Set(LIMIT_PLAYAUDIO_CALLEE=no)
;; файл для предупреждения об окончании 15ти последних секунд
exten => _X.,n,Set(LIMIT_WARNING_FILE=15-seconds)
exten => _X.,n,AGI(balance_check.agi) ; проверка баланса
exten => _X.,n,Dial(${TRUNK}/${EXTEN},${DEFAULT_TIMEOUT},L($[${MAX_DURATION}*60000]:15000))
где
TRUNK
- выбираемый транк для звонка
(также можно анализировать из БД)
MAX_DURATION
- максимальное время для
звонка в минутах (берется из проверки
баланса)
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.