Звездочка раздается, даже когда клиент в режиме офлайн

Я должен настроить поле 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 в режиме офлайн), затем, если нет все еще никакого отбрасывания ответа вызывающей стороны к речевой почте.

Спасибо

1
задан 6 October 2014 в 17:37
3 ответа

Второй ответ нельзя рассматривать как решение, также синтаксис изменился давно.

Это должна быть Queue (ivan, t ,,, 30) вместо Queue (ivan | t ||| 30).

В этом случае он звонит одноранговым узлам SIP, но это «фальшивые звонки», звонок уже установлен, поэтому вызывающий абонент должен заплатить плату даже за звонок. Первый, который я попробую сегодня, но у меня есть ощущение, что проблема будет в том, что если Иван не в сети и вернется в онлайн в течение 30 секунд, он больше не получит кольца. Надеюсь, я не прав.

В любом случае спасибо за ответы.

0
ответ дан 4 December 2019 в 08:27

Вы можете создать контекст в 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, Вы можете попробовать различные опции:

  1. Первая возможность, используя прогресс звонка (избегая ответа на канал и, таким образом, заставляя звонящего, возможно, заплатить за звонок... но не всегда работает, в зависимости от 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()
    
  2. Второй вариант, генерирующий рингтоны как звук на принятом канале (это означает, что звонящий платит за вызов также во время ожидания ответа, так как на самом деле вызов принят):

    .
    [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)
    
0
ответ дан 4 December 2019 в 08:27

Существует множество вариантов, основанных на том, как вы используете Asterisk.

  1. Использование FreePBX или аналогичного интерфейса:

Настройка группы звонков и установка ее в "ringall". Затем вы можете указать, сколько секунд он будет звонить.

  1. Используя написанный от руки план набора номера:

Установка очереди звонков в 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()
0
ответ дан 4 December 2019 в 08:27

Теги

Похожие вопросы