Страница 1 из 1

Очередь набора, вроде бы просто

Добавлено: 13 янв 2017, 10:42
morfair
Здрасти, други!

Нужно сделать простую вещь, но не совсем представляю как сделать идеально. Нужно, чтобы при наборе ext 101 сначала звонил SIP/101, спустя 5 сек еще начал звонить SIP/101000, и еще спустя 5 сек чтобы начал звонить SIP/101333.
Сейчас вижу два способа, но оба с недочетами.

Способ 1:
exten => 101,1,Dial(SIP/101,5)
same => n,Dial(SIP/101&SIP/101000,5)
same => n,Dial(SIP/101&SIP/101000&SIP/101333)

Недочет: я так понимаю (хотя, признаюсь, не тестил, т.к. кажется очевидным), что с каждым шагом на клиенте SIP/101 будет вешаться пропущенный, т.е. каждый шаг Астер его будет перенабирать. Я так не хочу, хочу чтобы предыдущий звонил постоянно, и лишь присоединялись к оркестру новые номера.

Способ 2:
exten => 101,1,Dial(SIP/101&Local/delay-101000-5s@${CONTEXT}&Local/delay-101333-10s@${CONTEXT})

exten => delay-101000-5s,1,Wait(5)
same => n,Dial(SIP/101000)

exten => delay-101333-10s,1,Wait(10)
same => n,Dial(SIP/101333)

Недочет: если SIP/101 Unreachable - то всё равно будет задержка 5 сек, не сразу пойдет набираться второй номер.


Други, как сделать грамотно и красиво??????

Re: Очередь набора, вроде бы просто

Добавлено: 13 янв 2017, 13:03
tol_iwan
Я делал вторым способом(так вроде даже где-то рекомендовалось). С задержкой не боролся. Но можно теоретически проверять доступность каждого и в зависимости от этого формировать вызов.
Ну или как-то очереди приспособить.