1 | изначальная версия редактировать | |
Всех с Наступившим Новым годом!
Обращаюсь к участникам форума со следующим интересующим меня вопросом... Имеется контекст из диалплана,который работает сл.образом.... 1)Звонки поступают в очередь,агент на софтфоне сбрасывает вызов,не отвечая на него,в итоге QUEUESTATUS=TIMEOUT(выдает через Verbose) 2)По таймауту 30 секунд переменная QUEUESTATUSвыдает то же значение TIMEOUT!
[incoming]
exten=>s,1,Answer() exten=>s,n,Playback(hello1) exten=>s,n,Set(__INCALLERID=${CALLERID(num):2}) exten=>s,n,Verbose(${INCALLERID}) exten=>s,n,Set(CFName=${CALLERID(num)}-${STRFTIME(${EPOCH},Europe/Moskow,"%d-%m-%Y-%H-%M-%S")}) exten=>s,n,Monitor(wav,/RECORD/INPUT/${CFName},mb) exten=>s,n,Queue(turn,n,,,30,los) exten=>s,n,GotoIf(["${QUEUESTATUS}"="TIMEOUT"]?timeout:busy) exten=>s,n,Verbose("${QUEUESTATUS}") exten=>s,n(timeout),Playback(sorry) exten=>s,n(busy),Hangup()
На мой взгляд во втором случае по проишествию тайм-аута переменная QUEUESTATUS и должна выдаватьTIMEOUT!(все логично!) НО,вот почему при сбросе с софтфона агентом(при отклонении входящего звонка) переменная QUEUESTATUS выдает TIMEOUT,мне не понятно.... Ведь,по логике,сброс агентом,не ответив на звонок и само событие TIMEOUT-это разные вещи!!! Помогите пожалуйста советом,если кто сталкивался с подобной ситуацией...
2 | No.2 Revision редактировать |
Всех с Наступившим Новым годом!
Обращаюсь к участникам форума со следующим интересующим меня вопросом... Имеется контекст из диалплана,который работает сл.образом.... 1)Звонки поступают в очередь,агент на софтфоне сбрасывает вызов,не отвечая на него,в итоге QUEUESTATUS=TIMEOUT(выдает через Verbose) 2)По таймауту 30 секунд переменная QUEUESTATUSвыдает то же значение TIMEOUT!
[incoming]
exten=>s,1,Answer()
exten=>s,n,Playback(hello1)
exten=>s,n,Set(__INCALLERID=${CALLERID(num):2})
exten=>s,n,Verbose(${INCALLERID})
exten=>s,n,Set(CFName=${CALLERID(num)}-${STRFTIME(${EPOCH},Europe/Moskow,"%d-%m-%Y-%H-%M-%S")})
exten=>s,n,Monitor(wav,/RECORD/INPUT/${CFName},mb)
exten=>s,n,Queue(turn,n,,,30,los)
exten=>s,n,GotoIf(["${QUEUESTATUS}"="TIMEOUT"]?timeout:busy)
exten=>s,n,Verbose("${QUEUESTATUS}")
exten=>s,n(timeout),Playback(sorry)
exten=>s,n(busy),Hangup()
На мой взгляд во втором случае по проишествию тайм-аута переменная QUEUESTATUS и должна выдаватьTIMEOUT!(все логично!) НО,вот почему при сбросе с софтфона агентом(при отклонении входящего звонка) переменная QUEUESTATUS выдает TIMEOUT,мне не понятно.... Ведь,по логике,сброс агентом,не ответив на звонок и само событие TIMEOUT-это разные вещи!!! Помогите пожалуйста советом,если кто сталкивался с подобной ситуацией...
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.