Для ввода добавочного номера записал длинное сообщение типа "Если вы хотите дозвониться до ... нажмите то-то, если вы хотите связаться с оператором, нажмите 0". Реализовал в виде
exten => _1XXX,n,Playback(enter-num-to-call)
exten => _1XXX,n,Read(dial_num,,12,,,10) ; accept no more than 12 digits, 10 sec wait
exten => _1XXX,n,NoOp(user entered ${dial_num})
но проблема в том, что пользователю приходится дождаться окончания сообщения и только потом вводить цифры. если ввод цифр начинается до окончания сообщения, астериск их не "слышит". вопрос - можно ли сделать так, чтобы пользователь мог начать ввод номера до окончания голосового сообщения?
Я такие вещи делаю через Background и WaitExten.
exten => _1XXX,1,Read(dialnum,enter-num-to-call,12,3,,10)
;play enter-num-to-call.*, upto 3 times
; accept no more than 12 digits, 10 sec wait after each playback
exten => _1XXX,n,NoOp(user entered ${dialnum})
exten => _1XXX,n,Background(enter-num-to-call)
exten => _1XXX,n,Waitexten(10)
exten => 1XXX,n,Read(dialnum,,12,,,10) ; accept no more than 12 digits, 10 sec wait
exten => 1XXX,n,NoOp(user entered ${dialnum})
Playback игнорирует ввод и будет воспроизводить файл до конца, Background как раз для того, чтобы после ввода сообщение прерывалось. Попробуйте так
Задан: Jun 6 '14
Просмотрен: 441 раз
Обновлен: Jun 15 '14
Голосовое сообщение при звонке.
Номер в конфигурации SIP клиента
Автодозвон с уведомлением в линию и в тихом режиме.
Welltime IVR (голосовое меню) [закрыт]
Убрать голосовое сообщение перед BUSY.
Манипуляции с номером А при входящем звонке
Asterisk AMI: как по extension определить номер абонента, с которым он разговаривает
CallerId передается на трубку, но в астериске не ловится
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
Playback уберите, и читайте сообщения через Read
awsswa (Jun 6 '14)edit