Очередь звонков в Asterisk

Linux телефон Сети коммуникации asterisk

Всем доброго времени суток)
пытаюсь решить такую задачку
ИМЕЕТСЯ ДИАЛПЛАН СЛЕД.ВИДА:
[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,то очередь нарушается,и для второго абонента очередь уже не доступна===>>>линия занята....
как можно решить эту проблему?

Примечание:
Здесь еще вся ситуация в том,что если сбросить звонок на софтфоне,4 я строчка контеста Playback() срабатывает...
хотя,она здесь совсем для другого....для того,чтобы 2-му входящему вызову сказать все операторы заняты бла-бла-бла....
и по сути,если разговор с первым входящим абонентом завершится с софтфона,то абонент сброса не увидит,а услышит вот это самое сообщение " к сожалению все операторы заняты"...
прям,бесконечный цикл какой-то...
Ответы:
Астериск предлагает практически безграничные возможности оладки.
Что вам мешает отслеживать выполнение диалплана с консоли астериска с нужным уровнем подробности? Все будет сразу видно. А если и этого будет недостаточно, то можно и sip set debug on сделать, чтоб еще ловить и всю сигнализацию (хотя здесь она явно не нужна).


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.