Очередь звонков в Asterisk
Добавлено: 02 дек 2013, 06:21
Всем Приветствую всех присутствующих!)
пытаюсь решить такую задачку
ИМЕЕТСЯ ДИАЛПЛАН СЛЕД.ВИДА:
[incoming]
exten=>s,1,Answer()
exten=>s,2,Set(CFName=${CALLERID(num)}-${STRFTIME(${EPOCH},Europe/Moskov,"%d-%m-%Y-%H-%M-%S")})
exten=>s,3,MixMonitor(/RECORD/INPUT/${CFName}.wav,b)
exten=>s,4,Dial(sip/123,,m)
exten=>s,n,Playback(hello1)
exten=>s,n,Queue(turn)
exten=>s,n,MusicOnHold()
exten=>s,n,Hangup()
в нем отсутствует сброс ос стороны SIP-абонента,т.е. если при попытке звонка с usb-модема на софтфон
софтфон нажмет кнопку отклонения вызова,то сброс произойдет только на стороне sip,на мобильнике так и останется несброшенный вызов...
в sip.conf на единственном абоненте установлено ограничение call-limit=1,не позволяющее принимать более 1 звонка,для того здесь и организована очередь звонков...
НО
exten=>s,3,MixMonitor(/RECORD/INPUT/${CFName}.wav,b)
exten=>s,4,Dial(sip/123,,m)
exten=>s,n,Hangup() <<<========вот в чем вопрос!!!???
exten=>s,n,Playback(hello1)
exten=>s,n,Queue(turn)
exten=>s,n,MusicOnHold()
exten=>s,n,Hangup()
если после функции Dial следом поставить Hangup,то очередь нарушается,и для второго абонента очередь уже не доступна===>>>линия занята....
как можно решить эту проблему?
пытаюсь решить такую задачку
ИМЕЕТСЯ ДИАЛПЛАН СЛЕД.ВИДА:
[incoming]
exten=>s,1,Answer()
exten=>s,2,Set(CFName=${CALLERID(num)}-${STRFTIME(${EPOCH},Europe/Moskov,"%d-%m-%Y-%H-%M-%S")})
exten=>s,3,MixMonitor(/RECORD/INPUT/${CFName}.wav,b)
exten=>s,4,Dial(sip/123,,m)
exten=>s,n,Playback(hello1)
exten=>s,n,Queue(turn)
exten=>s,n,MusicOnHold()
exten=>s,n,Hangup()
в нем отсутствует сброс ос стороны SIP-абонента,т.е. если при попытке звонка с usb-модема на софтфон
софтфон нажмет кнопку отклонения вызова,то сброс произойдет только на стороне sip,на мобильнике так и останется несброшенный вызов...
в sip.conf на единственном абоненте установлено ограничение call-limit=1,не позволяющее принимать более 1 звонка,для того здесь и организована очередь звонков...
НО
exten=>s,3,MixMonitor(/RECORD/INPUT/${CFName}.wav,b)
exten=>s,4,Dial(sip/123,,m)
exten=>s,n,Hangup() <<<========вот в чем вопрос!!!???
exten=>s,n,Playback(hello1)
exten=>s,n,Queue(turn)
exten=>s,n,MusicOnHold()
exten=>s,n,Hangup()
если после функции Dial следом поставить Hangup,то очередь нарушается,и для второго абонента очередь уже не доступна===>>>линия занята....
как можно решить эту проблему?