Я должен настроить поле Asterisk для движения в речевую почту, но только после X ringouts.
exten => 1234,1,Dial(SIP/ivan, 30)
exten => 1234,2,VoiceMail(777@mb_tutorial)
exten => 1234,3,PlayBack(vm-goodbye)
exten => 1234,4,HangUp()
Клиент в моем случае является клиентом софтфона. Если бы это не делает выполнения, или не подключенное к АТС затем это сразу перенаправило бы вызывающую сторону к речевой почте. Время ожидания этих 30 секунд не применяется в этом случае, когда телефон (клиент SIP) недоступен.
Как я мог настроить Звездочку, чтобы попытаться раздаться по крайней мере 5 раз (независимо, клиент SIP в режиме офлайн), затем, если нет все еще никакого отбрасывания ответа вызывающей стороны к речевой почте.
Спасибо
Второй ответ нельзя рассматривать как решение, также синтаксис изменился давно.
Это должна быть Queue (ivan, t ,,, 30) вместо Queue (ivan | t ||| 30).
В этом случае он звонит одноранговым узлам SIP, но это «фальшивые звонки», звонок уже установлен, поэтому вызывающий абонент должен заплатить плату даже за звонок. Первый, который я попробую сегодня, но у меня есть ощущение, что проблема будет в том, что если Иван не в сети и вернется в онлайн в течение 30 секунд, он больше не получит кольца. Надеюсь, я не прав.
В любом случае спасибо за ответы.
Вы можете создать контекст в extensions.conf
, который просто звонит навсегда, если вы его вызываете, а затем набрать и тот и тот контекст, который вы хотите набрать. Это гарантирует, что приложение Dial()
будет всегда выполняться в течение 30 секунд перед переходом на голосовую почту. (Измените значение 30 секунд, необходимое для получения пяти рингтонов... период рингтонов можно найти в соответствующем разделе indications.conf
для Вашей страны, таким образом, Вы можете рассчитать, сколько времени должно быть пять рингтонов. )
Это может выглядеть следующим образом:
[noop]
exten => s,1,Wait(30)
same => n,Hangup
[your_context]
exten => 1234,1,Dial(SIP/ivan&Local/s@noop,30)
exten => 1234,2,VoiceMail(777@mb_tutorial)
exten => 1234,3,PlayBack(vm-goodbye)
exten => 1234,4,HangUp()
Вызов noop контекста в основном не будет иметь никакого эффекта, и если SIP/ivan
доступен, то он будет звонить. Если Вы не слышите рингтонов при звонках на расширение 1234, Вы можете попробовать различные опции:
Первая возможность, используя прогресс звонка (избегая ответа на канал и, таким образом, заставляя звонящего, возможно, заплатить за звонок... но не всегда работает, в зависимости от SIP-провайдера):
.[your_context]
exten => 1234,1, Progress
exten => 1234,2,Ringing
exten => 1234,3,Dial(SIP/ivan&Local/s@noop,30)
exten => 1234,4,VoiceMail(777@mb_tutorial)
exten => 1234,5,PlayBack(vm-goodbye)
exten => 1234,6,HangUp()
Второй вариант, генерирующий рингтоны как звук на принятом канале (это означает, что звонящий платит за вызов также во время ожидания ответа, так как на самом деле вызов принят):
.[your_context]
exten => 1234,1,Answer
exten => 1234,2, Playtones(ring)
exten => 1234,3,Dial(SIP/ivan&Local/s@noop,30)
exten => 1234,4,VoiceMail(777@mb_tutorial)
exten => 1234,5,PlayBack(vm-goodbye)
exten => 1234,6,HangUp()
Если вы не слышите рингтонов во время ожидания, попробуйте добавить параметр ,r
в приложение Dial
:
exten => 1234,3,Dial(SIP/ivan&Local/s@noop,30,r)
Существует множество вариантов, основанных на том, как вы используете Asterisk.
Настройка группы звонков и установка ее в "ringall". Затем вы можете указать, сколько секунд он будет звонить.
Установка очереди звонков в queue.conf
[ivan]
strategy = ringall
context = default
member => SIP/ivan
Настройка плана набора номера аналогична этой:
exten => 1234,1,Answer
exten => 1234,n,Queue(ivan,t,,,30)
exten => 1234,n,VoiceMail(777@mb_tutorial)
exten => 1234,n,PlayBack(vm-goodbye)
exten => 1234,n,HangUp()