топикстартер к сожалению не раскрыл "дальнейших операций". гадаем на кофэйной гуще.=)
Zavr2008 ( 2012-09-27 23:29:58 +0400 )редактироватьЛюди, снова здравствуйте!
Знает кто как определить абонента, который ответил на вызов в следующей конструкции:
exten => s,1,Dial(SIP/5860&SIP/5896&SIP/5862&SIP/5863,15,tTg)
Мне нужно присвоить переменной номер ответившего для выполнения дальнейших операций. Я не нашёл как это сделать.
Заюзать AMI. Там и все переадресации будут видны ивентами. И более внятное управление очередями..
топикстартер к сожалению не раскрыл "дальнейших операций". гадаем на кофэйной гуще.=)
Zavr2008 ( 2012-09-27 23:29:58 +0400 )редактировать;пропустите вызов через chan_local:
exten => s,1,Dial(LOCAL/5860@dial&LOCAL/5896@dial&LOCAL/5862@dial&LOCAL/5863@dial,15,tTg)
[dial]
exten => _X.,1,Noop(${EXTEN})
exten => _X.,2,Dial(${EXTEN},15,tTgM(answer,${EXTEN}))
;тут обрабатываем момент ответа
[macro-answer]
exten => s,1,Noop(call answered by ${ARG1})
Технически лучше делать через аргумент U
exten = _X.,2,Dial(${EXTEN},15,tTU(sub-answer,${EXTEN}))
[sub-answer]
exten = s,1,Noop(call answered by ${ARG1})
exten = s,n,Return()
Нынче макросы не в моде)
zzuz ( 2012-09-27 21:06:56 +0400 )редактироватьzzuz - ты паскалист чтоль? там тоже долго матюкали GoTo :))))
Zavr2008 ( 2012-09-27 21:36:03 +0400 )редактироватьа так да, макрос - самое то. Причем там просто можно переменной какой значение присвоить и потом юзать..
Zavr2008 ( 2012-09-27 21:37:18 +0400 )редактироватьzzuz питонист , но дело это не меняет. Задумка разработчиков макросы не использовать. Но из-за привычки пользователей (чрезмерной) отказаться не могут.
zzuz ( 2012-09-27 23:12:52 +0400 )редактироватьну да, напоминает желание Купертино выкинуть карты Гугла =) эти анании все от однопоточного диалплана встроенного. второе решение - ниже ответом.
Zavr2008 ( 2012-09-27 23:27:04 +0400 )редактироватьЗадан: 2012-09-27 20:32:55 +0400
Просмотрен: 227 раз
Обновлен: Sep 27 '12
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
а зачем? у вас будет cdr(dstchannel) правильно выставлено.
meral ( 2012-09-27 21:08:31 +0400 )редактироватьа если тетенька нажала Xfer на телефоне и звонок ушел соседу? :)
Zavr2008 ( 2012-09-27 23:28:35 +0400 )редактироватьвсе равно будет правильно дстканал.проверь.
meral ( 2012-09-27 23:43:23 +0400 )редактировать