VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Обработка входящих - добавление каналов к вызову.

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

Ответить
sadm
Сообщения: 21
Зарегистрирован: 17 авг 2011, 21:41

Обработка входящих - добавление каналов к вызову.

Сообщение sadm »

Хочется построить ответ на входящий по следующему принципу:
Вызов идёт одновременно на настольный и сотовый телефон абонента.
Если нет ответа втечение 10 секунд, к вызову автоматически добавлятся телефон абонента 2 (телефоны абонента 1 продолжают вызываться).
Если нет ответа втечение 10 секунд, к вызову автоматически добавлятся телефон абонента 3 (телефоны абонентов 1 и 2 продолжают вызываться).

На ум приходит только такая конструкция:
Dial(SIP/1&SIP/gsm/8910111111,10,rTt);
Dial(SIP/1&SIP/gsm/8910111111&SIP/2,10,rTt);
Dial(SIP/1&SIP/gsm/8910111111&SIP/2&SIP/3,0,rTt);

Но тут явная проблема - после окончания 10 секундного интервала вызовы по каналам, переданным в Dial прекращаются и дозвон начинается заново. Тоесть в данном примере сотовый SIP/gsm/8910111111 может вызываться до трёх раз.

Есть вообще красивый способ добавлять каналы к вызову, или я хочу слишком странного?
menzoberronzan
Сообщения: 45
Зарегистрирован: 27 фев 2013, 12:15
Откуда: Пенза
Контактная информация:

Re: Обработка входящих - добавление каналов к вызову.

Сообщение menzoberronzan »

Можно использовать Local Channel, например так:

Код: Выделить всё

exten => your_extension,1,Dial(SIP/1&SIP/gsm/8910111111&LOCAL/abon2&LOCAL/abon3)

exten => abon2,1,Wait(10)
exten => abon2,2,Dial(SIP/2)

exten => abon3,1,Wait(20)
exten => abon3,3,Dial(SIP/3)
http://www.voip-info.org/wiki/view/Aste ... l+channels
http://www.voip-info.org/wiki/view/Asterisk+cmd+Dial - Example 3
ded
Сообщения: 15626
Зарегистрирован: 26 авг 2010, 19:00

Re: Обработка входящих - добавление каналов к вызову.

Сообщение ded »

В готовых дистрибутивах это вызов группы, где могут быть самые разные сценаоии вызовов. И этот -
Вызов идёт одновременно на настольный и сотовый телефон абонента.
Если нет ответа втечение 10 секунд, к вызову автоматически добавлятся телефон абонента 2 (телефоны абонента 1 продолжают вызываться).
Если нет ответа втечение 10 секунд, к вызову автоматически добавлятся телефон абонента 3 (телефоны абонентов 1 и 2 продолжают вызываться).
называется прогрессивное серийное искание.
sadm
Сообщения: 21
Зарегистрирован: 17 авг 2011, 21:41

Re: Обработка входящих - добавление каналов к вызову.

Сообщение sadm »

menzoberronzan писал(а):Можно использовать Local Channel, например так:

Код: Выделить всё

exten => your_extension,1,Dial(SIP/1&SIP/gsm/8910111111&LOCAL/abon2&LOCAL/abon3)

exten => abon2,1,Wait(10)
exten => abon2,2,Dial(SIP/2)

exten => abon3,1,Wait(20)
exten => abon3,3,Dial(SIP/3)
http://www.voip-info.org/wiki/view/Aste ... l+channels
http://www.voip-info.org/wiki/view/Asterisk+cmd+Dial - Example 3
Спасибо за рекомендацию. Что-то мне подсказывает, что потенциально конфиг превратится в дикий ужас, эсли такими конструкциями злоупотреблять.
sadm
Сообщения: 21
Зарегистрирован: 17 авг 2011, 21:41

Re: Обработка входящих - добавление каналов к вызову.

Сообщение sadm »

ded писал(а):В готовых дистрибутивах это вызов группы, где могут быть самые разные сценаоии вызовов. И этот -
Вызов идёт одновременно на настольный и сотовый телефон абонента.
Если нет ответа втечение 10 секунд, к вызову автоматически добавлятся телефон абонента 2 (телефоны абонента 1 продолжают вызываться).
Если нет ответа втечение 10 секунд, к вызову автоматически добавлятся телефон абонента 3 (телефоны абонентов 1 и 2 продолжают вызываться).
называется прогрессивное серийное искание.
Спасибо за наводку. Погуглю.
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH